• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Test data for packing/unpacking.  When compiled, creates a run of
6 // relative relocations.
7 //
8 // #!/bin/bash
9 //
10 // # Compile as an arm shared library.
11 // /usr/bin/arm-linux-gnueabi-g++ -shared -o /tmp/testdata.so \
12 //   elf_file_unittest_relocs.cc
13 //
14 // # Add a new null .android.rel.dyn section, needed for packing.
15 // echo 'NULL' >/tmp/small
16 // /usr/bin/arm-linux-gnueabi-objcopy \
17 //   --add-section .android.rel.dyn=/tmp/small /tmp/testdata.so
18 //
19 // # Create packed and unpacked reference files.
20 // packer="../../../out_android/Debug/relocation_packer"
21 // cp /tmp/testdata.so elf_file_unittest_relocs_packed.so
22 // $packer elf_file_unittest_relocs_packed.so
23 // cp elf_file_unittest_relocs_packed.so elf_file_unittest_relocs.so
24 // $packer -u elf_file_unittest_relocs.so
25 //
26 // # Clean up.
27 // rm /tmp/testdata.so /tmp/small
28 
29 const int i = 0;
30 
31 const void* pointer_0 = &i;
32 const void* pointer_1 = &i;
33 const void* pointer_2 = &i;
34 const void* pointer_3 = &i;
35 const void* pointer_4 = &i;
36 const void* pointer_5 = &i;
37 const void* pointer_6 = &i;
38 const void* pointer_7 = &i;
39 const void* pointer_8 = &i;
40 const void* pointer_9 = &i;
41 const void* pointer_10 = &i;
42 const void* pointer_11 = &i;
43 const void* pointer_12 = &i;
44 const void* pointer_13 = &i;
45 const void* pointer_14 = &i;
46 const void* pointer_15 = &i;
47 const void* pointer_16 = &i;
48 const void* pointer_17 = &i;
49 const void* pointer_18 = &i;
50 const void* pointer_19 = &i;
51 const void* pointer_20 = &i;
52 const void* pointer_21 = &i;
53 const void* pointer_22 = &i;
54 const void* pointer_23 = &i;
55 const void* pointer_24 = &i;
56 const void* pointer_25 = &i;
57 const void* pointer_26 = &i;
58 const void* pointer_27 = &i;
59 const void* pointer_28 = &i;
60 const void* pointer_29 = &i;
61 const void* pointer_30 = &i;
62 const void* pointer_31 = &i;
63 const void* pointer_32 = &i;
64