elftools 1.3.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +111 -7
  3. data/lib/elftools/constants/machine.rb +248 -0
  4. data/lib/elftools/constants/machine_names.rb +246 -0
  5. data/lib/elftools/constants/relocation/aarch64.rb +213 -0
  6. data/lib/elftools/constants/relocation/alpha.rb +47 -0
  7. data/lib/elftools/constants/relocation/amdgpu.rb +28 -0
  8. data/lib/elftools/constants/relocation/arm.rb +150 -0
  9. data/lib/elftools/constants/relocation/avr.rb +51 -0
  10. data/lib/elftools/constants/relocation/bfin.rb +72 -0
  11. data/lib/elftools/constants/relocation/bpf.rb +21 -0
  12. data/lib/elftools/constants/relocation/cr16.rb +46 -0
  13. data/lib/elftools/constants/relocation/cris.rb +46 -0
  14. data/lib/elftools/constants/relocation/crx.rb +35 -0
  15. data/lib/elftools/constants/relocation/csky.rb +79 -0
  16. data/lib/elftools/constants/relocation/d10v.rb +23 -0
  17. data/lib/elftools/constants/relocation/d30v.rb +27 -0
  18. data/lib/elftools/constants/relocation/dlx.rb +24 -0
  19. data/lib/elftools/constants/relocation/epiphany.rb +28 -0
  20. data/lib/elftools/constants/relocation/fr30.rb +27 -0
  21. data/lib/elftools/constants/relocation/frv.rb +57 -0
  22. data/lib/elftools/constants/relocation/ft32.rb +27 -0
  23. data/lib/elftools/constants/relocation/h8.rb +69 -0
  24. data/lib/elftools/constants/relocation/hppa.rb +135 -0
  25. data/lib/elftools/constants/relocation/i370.rb +26 -0
  26. data/lib/elftools/constants/relocation/i386.rb +59 -0
  27. data/lib/elftools/constants/relocation/i860.rb +48 -0
  28. data/lib/elftools/constants/relocation/i960.rb +22 -0
  29. data/lib/elftools/constants/relocation/ia64.rb +117 -0
  30. data/lib/elftools/constants/relocation/ip2k.rb +29 -0
  31. data/lib/elftools/constants/relocation/iq2000.rb +27 -0
  32. data/lib/elftools/constants/relocation/kvx.rb +97 -0
  33. data/lib/elftools/constants/relocation/lm32.rb +32 -0
  34. data/lib/elftools/constants/relocation/loongarch.rb +144 -0
  35. data/lib/elftools/constants/relocation/m32c.rb +27 -0
  36. data/lib/elftools/constants/relocation/m32r.rb +57 -0
  37. data/lib/elftools/constants/relocation/m68hc11.rb +35 -0
  38. data/lib/elftools/constants/relocation/m68k.rb +57 -0
  39. data/lib/elftools/constants/relocation/mcore.rb +27 -0
  40. data/lib/elftools/constants/relocation/mep.rb +36 -0
  41. data/lib/elftools/constants/relocation/metag.rb +63 -0
  42. data/lib/elftools/constants/relocation/microblaze.rb +48 -0
  43. data/lib/elftools/constants/relocation/mips.rb +125 -0
  44. data/lib/elftools/constants/relocation/mmix.rb +51 -0
  45. data/lib/elftools/constants/relocation/mn10200.rb +22 -0
  46. data/lib/elftools/constants/relocation/mn10300.rb +49 -0
  47. data/lib/elftools/constants/relocation/moxie.rb +17 -0
  48. data/lib/elftools/constants/relocation/msp430.rb +27 -0
  49. data/lib/elftools/constants/relocation/msp430x.rb +37 -0
  50. data/lib/elftools/constants/relocation/mt.rb +21 -0
  51. data/lib/elftools/constants/relocation/nds32.rb +167 -0
  52. data/lib/elftools/constants/relocation/nfp.rb +41 -0
  53. data/lib/elftools/constants/relocation/nfp3200.rb +46 -0
  54. data/lib/elftools/constants/relocation/nios2.rb +74 -0
  55. data/lib/elftools/constants/relocation/or1k.rb +69 -0
  56. data/lib/elftools/constants/relocation/pj.rb +24 -0
  57. data/lib/elftools/constants/relocation/ppc.rb +131 -0
  58. data/lib/elftools/constants/relocation/ppc64.rb +177 -0
  59. data/lib/elftools/constants/relocation/pru.rb +31 -0
  60. data/lib/elftools/constants/relocation/riscv.rb +74 -0
  61. data/lib/elftools/constants/relocation/rl78.rb +70 -0
  62. data/lib/elftools/constants/relocation/rx.rb +81 -0
  63. data/lib/elftools/constants/relocation/s12z.rb +22 -0
  64. data/lib/elftools/constants/relocation/s390.rb +82 -0
  65. data/lib/elftools/constants/relocation/score.rb +36 -0
  66. data/lib/elftools/constants/relocation/sh.rb +124 -0
  67. data/lib/elftools/constants/relocation/sparc.rb +108 -0
  68. data/lib/elftools/constants/relocation/spu.rb +32 -0
  69. data/lib/elftools/constants/relocation/tic6x.rb +48 -0
  70. data/lib/elftools/constants/relocation/tilegx.rb +134 -0
  71. data/lib/elftools/constants/relocation/tilepro.rb +105 -0
  72. data/lib/elftools/constants/relocation/v800.rb +101 -0
  73. data/lib/elftools/constants/relocation/v850.rb +66 -0
  74. data/lib/elftools/constants/relocation/vax.rb +29 -0
  75. data/lib/elftools/constants/relocation/visium.rb +30 -0
  76. data/lib/elftools/constants/relocation/wasm32.rb +16 -0
  77. data/lib/elftools/constants/relocation/x86_64.rb +68 -0
  78. data/lib/elftools/constants/relocation/xgate.rb +34 -0
  79. data/lib/elftools/constants/relocation/xstormy16.rb +29 -0
  80. data/lib/elftools/constants/relocation/xtensa.rb +75 -0
  81. data/lib/elftools/constants/relocation/z80.rb +28 -0
  82. data/lib/elftools/constants/relocation.rb +181 -0
  83. data/lib/elftools/constants.rb +124 -231
  84. data/lib/elftools/dynamic/hash_table.rb +216 -0
  85. data/lib/elftools/dynamic/string_table.rb +30 -0
  86. data/lib/elftools/dynamic/symbols.rb +146 -0
  87. data/lib/elftools/dynamic/tag.rb +66 -0
  88. data/lib/elftools/dynamic.rb +102 -62
  89. data/lib/elftools/elf_file.rb +74 -23
  90. data/lib/elftools/lazy_array.rb +42 -4
  91. data/lib/elftools/note.rb +6 -3
  92. data/lib/elftools/relocation.rb +94 -0
  93. data/lib/elftools/sections/dynamic_section.rb +13 -0
  94. data/lib/elftools/sections/relocation_section.rb +24 -43
  95. data/lib/elftools/sections/section.rb +4 -4
  96. data/lib/elftools/sections/sym_tab_section.rb +14 -34
  97. data/lib/elftools/sections/symbol.rb +112 -0
  98. data/lib/elftools/segments/dynamic_segment.rb +1 -0
  99. data/lib/elftools/segments/load_segment.rb +33 -5
  100. data/lib/elftools/segments/segment.rb +8 -4
  101. data/lib/elftools/structs.rb +24 -3
  102. data/lib/elftools/util.rb +1 -1
  103. data/lib/elftools/version.rb +1 -1
  104. metadata +101 -11
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of KVX.
10
+ module KVX
11
+ R_KVX_NONE = 0 # :nodoc:
12
+ R_KVX_16 = 1 # :nodoc:
13
+ R_KVX_32 = 2 # :nodoc:
14
+ R_KVX_64 = 3 # :nodoc:
15
+ R_KVX_S16_PCREL = 4 # :nodoc:
16
+ R_KVX_PCREL17 = 5 # :nodoc:
17
+ R_KVX_PCREL27 = 6 # :nodoc:
18
+ R_KVX_32_PCREL = 7 # :nodoc:
19
+ R_KVX_S37_PCREL_LO10 = 8 # :nodoc:
20
+ R_KVX_S37_PCREL_UP27 = 9 # :nodoc:
21
+ R_KVX_S43_PCREL_LO10 = 10 # :nodoc:
22
+ R_KVX_S43_PCREL_UP27 = 11 # :nodoc:
23
+ R_KVX_S43_PCREL_EX6 = 12 # :nodoc:
24
+ R_KVX_S64_PCREL_LO10 = 13 # :nodoc:
25
+ R_KVX_S64_PCREL_UP27 = 14 # :nodoc:
26
+ R_KVX_S64_PCREL_EX27 = 15 # :nodoc:
27
+ R_KVX_64_PCREL = 16 # :nodoc:
28
+ R_KVX_S16 = 17 # :nodoc:
29
+ R_KVX_S32_LO5 = 18 # :nodoc:
30
+ R_KVX_S32_UP27 = 19 # :nodoc:
31
+ R_KVX_S37_LO10 = 20 # :nodoc:
32
+ R_KVX_S37_UP27 = 21 # :nodoc:
33
+ R_KVX_S37_GOTOFF_LO10 = 22 # :nodoc:
34
+ R_KVX_S37_GOTOFF_UP27 = 23 # :nodoc:
35
+ R_KVX_S43_GOTOFF_LO10 = 24 # :nodoc:
36
+ R_KVX_S43_GOTOFF_UP27 = 25 # :nodoc:
37
+ R_KVX_S43_GOTOFF_EX6 = 26 # :nodoc:
38
+ R_KVX_32_GOTOFF = 27 # :nodoc:
39
+ R_KVX_64_GOTOFF = 28 # :nodoc:
40
+ R_KVX_32_GOT = 29 # :nodoc:
41
+ R_KVX_S37_GOT_LO10 = 30 # :nodoc:
42
+ R_KVX_S37_GOT_UP27 = 31 # :nodoc:
43
+ R_KVX_S43_GOT_LO10 = 32 # :nodoc:
44
+ R_KVX_S43_GOT_UP27 = 33 # :nodoc:
45
+ R_KVX_S43_GOT_EX6 = 34 # :nodoc:
46
+ R_KVX_64_GOT = 35 # :nodoc:
47
+ R_KVX_GLOB_DAT = 36 # :nodoc:
48
+ R_KVX_COPY = 37 # :nodoc:
49
+ R_KVX_JMP_SLOT = 38 # :nodoc:
50
+ R_KVX_RELATIVE = 39 # :nodoc:
51
+ R_KVX_S43_LO10 = 40 # :nodoc:
52
+ R_KVX_S43_UP27 = 41 # :nodoc:
53
+ R_KVX_S43_EX6 = 42 # :nodoc:
54
+ R_KVX_S64_LO10 = 43 # :nodoc:
55
+ R_KVX_S64_UP27 = 44 # :nodoc:
56
+ R_KVX_S64_EX27 = 45 # :nodoc:
57
+ R_KVX_S37_GOTADDR_LO10 = 46 # :nodoc:
58
+ R_KVX_S37_GOTADDR_UP27 = 47 # :nodoc:
59
+ R_KVX_S43_GOTADDR_LO10 = 48 # :nodoc:
60
+ R_KVX_S43_GOTADDR_UP27 = 49 # :nodoc:
61
+ R_KVX_S43_GOTADDR_EX6 = 50 # :nodoc:
62
+ R_KVX_S64_GOTADDR_LO10 = 51 # :nodoc:
63
+ R_KVX_S64_GOTADDR_UP27 = 52 # :nodoc:
64
+ R_KVX_S64_GOTADDR_EX27 = 53 # :nodoc:
65
+ R_KVX_64_DTPMOD = 54 # :nodoc:
66
+ R_KVX_64_DTPOFF = 55 # :nodoc:
67
+ R_KVX_S37_TLS_DTPOFF_LO10 = 56 # :nodoc:
68
+ R_KVX_S37_TLS_DTPOFF_UP27 = 57 # :nodoc:
69
+ R_KVX_S43_TLS_DTPOFF_LO10 = 58 # :nodoc:
70
+ R_KVX_S43_TLS_DTPOFF_UP27 = 59 # :nodoc:
71
+ R_KVX_S43_TLS_DTPOFF_EX6 = 60 # :nodoc:
72
+ R_KVX_S37_TLS_GD_LO10 = 61 # :nodoc:
73
+ R_KVX_S37_TLS_GD_UP27 = 62 # :nodoc:
74
+ R_KVX_S43_TLS_GD_LO10 = 63 # :nodoc:
75
+ R_KVX_S43_TLS_GD_UP27 = 64 # :nodoc:
76
+ R_KVX_S43_TLS_GD_EX6 = 65 # :nodoc:
77
+ R_KVX_S37_TLS_LD_LO10 = 66 # :nodoc:
78
+ R_KVX_S37_TLS_LD_UP27 = 67 # :nodoc:
79
+ R_KVX_S43_TLS_LD_LO10 = 68 # :nodoc:
80
+ R_KVX_S43_TLS_LD_UP27 = 69 # :nodoc:
81
+ R_KVX_S43_TLS_LD_EX6 = 70 # :nodoc:
82
+ R_KVX_64_TPOFF = 71 # :nodoc:
83
+ R_KVX_S37_TLS_IE_LO10 = 72 # :nodoc:
84
+ R_KVX_S37_TLS_IE_UP27 = 73 # :nodoc:
85
+ R_KVX_S43_TLS_IE_LO10 = 74 # :nodoc:
86
+ R_KVX_S43_TLS_IE_UP27 = 75 # :nodoc:
87
+ R_KVX_S43_TLS_IE_EX6 = 76 # :nodoc:
88
+ R_KVX_S37_TLS_LE_LO10 = 77 # :nodoc:
89
+ R_KVX_S37_TLS_LE_UP27 = 78 # :nodoc:
90
+ R_KVX_S43_TLS_LE_LO10 = 79 # :nodoc:
91
+ R_KVX_S43_TLS_LE_UP27 = 80 # :nodoc:
92
+ R_KVX_S43_TLS_LE_EX6 = 81 # :nodoc:
93
+ R_KVX_8 = 82 # :nodoc:
94
+ end
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of LM32.
10
+ module LM32
11
+ R_LM32_NONE = 0 # :nodoc:
12
+ R_LM32_8 = 1 # :nodoc:
13
+ R_LM32_16 = 2 # :nodoc:
14
+ R_LM32_32 = 3 # :nodoc:
15
+ R_LM32_HI16 = 4 # :nodoc:
16
+ R_LM32_LO16 = 5 # :nodoc:
17
+ R_LM32_GPREL16 = 6 # :nodoc:
18
+ R_LM32_CALL = 7 # :nodoc:
19
+ R_LM32_BRANCH = 8 # :nodoc:
20
+ R_LM32_GNU_VTINHERIT = 9 # :nodoc:
21
+ R_LM32_GNU_VTENTRY = 10 # :nodoc:
22
+ R_LM32_16_GOT = 11 # :nodoc:
23
+ R_LM32_GOTOFF_HI16 = 12 # :nodoc:
24
+ R_LM32_GOTOFF_LO16 = 13 # :nodoc:
25
+ R_LM32_COPY = 14 # :nodoc:
26
+ R_LM32_GLOB_DAT = 15 # :nodoc:
27
+ R_LM32_JMP_SLOT = 16 # :nodoc:
28
+ R_LM32_RELATIVE = 17 # :nodoc:
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,144 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of LOONGARCH.
10
+ module LOONGARCH
11
+ R_LARCH_NONE = 0 # :nodoc:
12
+ R_LARCH_32 = 1 # :nodoc:
13
+ R_LARCH_64 = 2 # :nodoc:
14
+ R_LARCH_RELATIVE = 3 # :nodoc:
15
+ R_LARCH_COPY = 4 # :nodoc:
16
+ R_LARCH_JUMP_SLOT = 5 # :nodoc:
17
+ R_LARCH_TLS_DTPMOD32 = 6 # :nodoc:
18
+ R_LARCH_TLS_DTPMOD64 = 7 # :nodoc:
19
+ R_LARCH_TLS_DTPREL32 = 8 # :nodoc:
20
+ R_LARCH_TLS_DTPREL64 = 9 # :nodoc:
21
+ R_LARCH_TLS_TPREL32 = 10 # :nodoc:
22
+ R_LARCH_TLS_TPREL64 = 11 # :nodoc:
23
+ R_LARCH_IRELATIVE = 12 # :nodoc:
24
+ R_LARCH_TLS_DESC32 = 13 # :nodoc:
25
+ R_LARCH_TLS_DESC64 = 14 # :nodoc:
26
+ R_LARCH_MARK_LA = 20 # :nodoc:
27
+ R_LARCH_MARK_PCREL = 21 # :nodoc:
28
+ R_LARCH_SOP_PUSH_PCREL = 22 # :nodoc:
29
+ R_LARCH_SOP_PUSH_ABSOLUTE = 23 # :nodoc:
30
+ R_LARCH_SOP_PUSH_DUP = 24 # :nodoc:
31
+ R_LARCH_SOP_PUSH_GPREL = 25 # :nodoc:
32
+ R_LARCH_SOP_PUSH_TLS_TPREL = 26 # :nodoc:
33
+ R_LARCH_SOP_PUSH_TLS_GOT = 27 # :nodoc:
34
+ R_LARCH_SOP_PUSH_TLS_GD = 28 # :nodoc:
35
+ R_LARCH_SOP_PUSH_PLT_PCREL = 29 # :nodoc:
36
+ R_LARCH_SOP_ASSERT = 30 # :nodoc:
37
+ R_LARCH_SOP_NOT = 31 # :nodoc:
38
+ R_LARCH_SOP_SUB = 32 # :nodoc:
39
+ R_LARCH_SOP_SL = 33 # :nodoc:
40
+ R_LARCH_SOP_SR = 34 # :nodoc:
41
+ R_LARCH_SOP_ADD = 35 # :nodoc:
42
+ R_LARCH_SOP_AND = 36 # :nodoc:
43
+ R_LARCH_SOP_IF_ELSE = 37 # :nodoc:
44
+ R_LARCH_SOP_POP_32_S_10_5 = 38 # :nodoc:
45
+ R_LARCH_SOP_POP_32_U_10_12 = 39 # :nodoc:
46
+ R_LARCH_SOP_POP_32_S_10_12 = 40 # :nodoc:
47
+ R_LARCH_SOP_POP_32_S_10_16 = 41 # :nodoc:
48
+ R_LARCH_SOP_POP_32_S_10_16_S2 = 42 # :nodoc:
49
+ R_LARCH_SOP_POP_32_S_5_20 = 43 # :nodoc:
50
+ R_LARCH_SOP_POP_32_S_0_5_10_16_S2 = 44 # :nodoc:
51
+ R_LARCH_SOP_POP_32_S_0_10_10_16_S2 = 45 # :nodoc:
52
+ R_LARCH_SOP_POP_32_U = 46 # :nodoc:
53
+ R_LARCH_ADD8 = 47 # :nodoc:
54
+ R_LARCH_ADD16 = 48 # :nodoc:
55
+ R_LARCH_ADD24 = 49 # :nodoc:
56
+ R_LARCH_ADD32 = 50 # :nodoc:
57
+ R_LARCH_ADD64 = 51 # :nodoc:
58
+ R_LARCH_SUB8 = 52 # :nodoc:
59
+ R_LARCH_SUB16 = 53 # :nodoc:
60
+ R_LARCH_SUB24 = 54 # :nodoc:
61
+ R_LARCH_SUB32 = 55 # :nodoc:
62
+ R_LARCH_SUB64 = 56 # :nodoc:
63
+ R_LARCH_GNU_VTINHERIT = 57 # :nodoc:
64
+ R_LARCH_GNU_VTENTRY = 58 # :nodoc:
65
+ R_LARCH_B16 = 64 # :nodoc:
66
+ R_LARCH_B21 = 65 # :nodoc:
67
+ R_LARCH_B26 = 66 # :nodoc:
68
+ R_LARCH_ABS_HI20 = 67 # :nodoc:
69
+ R_LARCH_ABS_LO12 = 68 # :nodoc:
70
+ R_LARCH_ABS64_LO20 = 69 # :nodoc:
71
+ R_LARCH_ABS64_HI12 = 70 # :nodoc:
72
+ R_LARCH_PCALA_HI20 = 71 # :nodoc:
73
+ R_LARCH_PCALA_LO12 = 72 # :nodoc:
74
+ R_LARCH_PCALA64_LO20 = 73 # :nodoc:
75
+ R_LARCH_PCALA64_HI12 = 74 # :nodoc:
76
+ R_LARCH_GOT_PC_HI20 = 75 # :nodoc:
77
+ R_LARCH_GOT_PC_LO12 = 76 # :nodoc:
78
+ R_LARCH_GOT64_PC_LO20 = 77 # :nodoc:
79
+ R_LARCH_GOT64_PC_HI12 = 78 # :nodoc:
80
+ R_LARCH_GOT_HI20 = 79 # :nodoc:
81
+ R_LARCH_GOT_LO12 = 80 # :nodoc:
82
+ R_LARCH_GOT64_LO20 = 81 # :nodoc:
83
+ R_LARCH_GOT64_HI12 = 82 # :nodoc:
84
+ R_LARCH_TLS_LE_HI20 = 83 # :nodoc:
85
+ R_LARCH_TLS_LE_LO12 = 84 # :nodoc:
86
+ R_LARCH_TLS_LE64_LO20 = 85 # :nodoc:
87
+ R_LARCH_TLS_LE64_HI12 = 86 # :nodoc:
88
+ R_LARCH_TLS_IE_PC_HI20 = 87 # :nodoc:
89
+ R_LARCH_TLS_IE_PC_LO12 = 88 # :nodoc:
90
+ R_LARCH_TLS_IE64_PC_LO20 = 89 # :nodoc:
91
+ R_LARCH_TLS_IE64_PC_HI12 = 90 # :nodoc:
92
+ R_LARCH_TLS_IE_HI20 = 91 # :nodoc:
93
+ R_LARCH_TLS_IE_LO12 = 92 # :nodoc:
94
+ R_LARCH_TLS_IE64_LO20 = 93 # :nodoc:
95
+ R_LARCH_TLS_IE64_HI12 = 94 # :nodoc:
96
+ R_LARCH_TLS_LD_PC_HI20 = 95 # :nodoc:
97
+ R_LARCH_TLS_LD_HI20 = 96 # :nodoc:
98
+ R_LARCH_TLS_GD_PC_HI20 = 97 # :nodoc:
99
+ R_LARCH_TLS_GD_HI20 = 98 # :nodoc:
100
+ R_LARCH_32_PCREL = 99 # :nodoc:
101
+ R_LARCH_RELAX = 100 # :nodoc:
102
+ R_LARCH_DELETE = 101 # :nodoc:
103
+ R_LARCH_ALIGN = 102 # :nodoc:
104
+ R_LARCH_PCREL20_S2 = 103 # :nodoc:
105
+ R_LARCH_CFA = 104 # :nodoc:
106
+ R_LARCH_ADD6 = 105 # :nodoc:
107
+ R_LARCH_SUB6 = 106 # :nodoc:
108
+ R_LARCH_ADD_ULEB128 = 107 # :nodoc:
109
+ R_LARCH_SUB_ULEB128 = 108 # :nodoc:
110
+ R_LARCH_64_PCREL = 109 # :nodoc:
111
+ R_LARCH_CALL36 = 110 # :nodoc:
112
+ R_LARCH_TLS_DESC_PC_HI20 = 111 # :nodoc:
113
+ R_LARCH_TLS_DESC_PC_LO12 = 112 # :nodoc:
114
+ R_LARCH_TLS_DESC64_PC_LO20 = 113 # :nodoc:
115
+ R_LARCH_TLS_DESC64_PC_HI12 = 114 # :nodoc:
116
+ R_LARCH_TLS_DESC_HI20 = 115 # :nodoc:
117
+ R_LARCH_TLS_DESC_LO12 = 116 # :nodoc:
118
+ R_LARCH_TLS_DESC64_LO20 = 117 # :nodoc:
119
+ R_LARCH_TLS_DESC64_HI12 = 118 # :nodoc:
120
+ R_LARCH_TLS_DESC_LD = 119 # :nodoc:
121
+ R_LARCH_TLS_DESC_CALL = 120 # :nodoc:
122
+ R_LARCH_TLS_LE_HI20_R = 121 # :nodoc:
123
+ R_LARCH_TLS_LE_ADD_R = 122 # :nodoc:
124
+ R_LARCH_TLS_LE_LO12_R = 123 # :nodoc:
125
+ R_LARCH_TLS_LD_PCREL20_S2 = 124 # :nodoc:
126
+ R_LARCH_TLS_GD_PCREL20_S2 = 125 # :nodoc:
127
+ R_LARCH_TLS_DESC_PCREL20_S2 = 126 # :nodoc:
128
+ R_LARCH_CALL30 = 127 # :nodoc:
129
+ R_LARCH_PCADD_HI20 = 128 # :nodoc:
130
+ R_LARCH_PCADD_LO12 = 129 # :nodoc:
131
+ R_LARCH_GOT_PCADD_HI20 = 130 # :nodoc:
132
+ R_LARCH_GOT_PCADD_LO12 = 131 # :nodoc:
133
+ R_LARCH_TLS_IE_PCADD_HI20 = 132 # :nodoc:
134
+ R_LARCH_TLS_IE_PCADD_LO12 = 133 # :nodoc:
135
+ R_LARCH_TLS_LD_PCADD_HI20 = 134 # :nodoc:
136
+ R_LARCH_TLS_LD_PCADD_LO12 = 135 # :nodoc:
137
+ R_LARCH_TLS_GD_PCADD_HI20 = 136 # :nodoc:
138
+ R_LARCH_TLS_GD_PCADD_LO12 = 137 # :nodoc:
139
+ R_LARCH_TLS_DESC_PCADD_HI20 = 138 # :nodoc:
140
+ R_LARCH_TLS_DESC_PCADD_LO12 = 139 # :nodoc:
141
+ end
142
+ end
143
+ end
144
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of M32C.
10
+ module M32C
11
+ R_M32C_NONE = 0 # :nodoc:
12
+ R_M32C_16 = 1 # :nodoc:
13
+ R_M32C_24 = 2 # :nodoc:
14
+ R_M32C_32 = 3 # :nodoc:
15
+ R_M32C_8_PCREL = 4 # :nodoc:
16
+ R_M32C_16_PCREL = 5 # :nodoc:
17
+ R_M32C_8 = 6 # :nodoc:
18
+ R_M32C_LO16 = 7 # :nodoc:
19
+ R_M32C_HI8 = 8 # :nodoc:
20
+ R_M32C_HI16 = 9 # :nodoc:
21
+ R_M32C_RL_JUMP = 10 # :nodoc:
22
+ R_M32C_RL_1ADDR = 11 # :nodoc:
23
+ R_M32C_RL_2ADDR = 12 # :nodoc:
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of M32R.
10
+ module M32R
11
+ R_M32R_NONE = 0 # :nodoc:
12
+ R_M32R_16 = 1 # For backwards compatibility
13
+ R_M32R_32 = 2 # For backwards compatibility
14
+ R_M32R_24 = 3 # For backwards compatibility
15
+ R_M32R_10_PCREL = 4 # For backwards compatibility
16
+ R_M32R_18_PCREL = 5 # For backwards compatibility
17
+ R_M32R_26_PCREL = 6 # For backwards compatibility
18
+ R_M32R_HI16_ULO = 7 # For backwards compatibility
19
+ R_M32R_HI16_SLO = 8 # For backwards compatibility
20
+ R_M32R_LO16 = 9 # For backwards compatibility
21
+ R_M32R_SDA16 = 10 # For backwards compatibility
22
+ R_M32R_GNU_VTINHERIT = 11 # For backwards compatibility
23
+ R_M32R_GNU_VTENTRY = 12 # For backwards compatibility
24
+ R_M32R_16_RELA = 33 # :nodoc:
25
+ R_M32R_32_RELA = 34 # :nodoc:
26
+ R_M32R_24_RELA = 35 # :nodoc:
27
+ R_M32R_10_PCREL_RELA = 36 # :nodoc:
28
+ R_M32R_18_PCREL_RELA = 37 # :nodoc:
29
+ R_M32R_26_PCREL_RELA = 38 # :nodoc:
30
+ R_M32R_HI16_ULO_RELA = 39 # :nodoc:
31
+ R_M32R_HI16_SLO_RELA = 40 # :nodoc:
32
+ R_M32R_LO16_RELA = 41 # :nodoc:
33
+ R_M32R_SDA16_RELA = 42 # :nodoc:
34
+ R_M32R_RELA_GNU_VTINHERIT = 43 # :nodoc:
35
+ R_M32R_RELA_GNU_VTENTRY = 44 # :nodoc:
36
+ R_M32R_REL32 = 45 # :nodoc:
37
+ R_M32R_GOT24 = 48 # :nodoc:
38
+ R_M32R_26_PLTREL = 49 # :nodoc:
39
+ R_M32R_COPY = 50 # :nodoc:
40
+ R_M32R_GLOB_DAT = 51 # :nodoc:
41
+ R_M32R_JMP_SLOT = 52 # :nodoc:
42
+ R_M32R_RELATIVE = 53 # :nodoc:
43
+ R_M32R_GOTOFF = 54 # :nodoc:
44
+ R_M32R_GOTPC24 = 55 # :nodoc:
45
+ R_M32R_GOT16_HI_ULO = 56 # :nodoc:
46
+ R_M32R_GOT16_HI_SLO = 57 # :nodoc:
47
+ R_M32R_GOT16_LO = 58 # :nodoc:
48
+ R_M32R_GOTPC_HI_ULO = 59 # :nodoc:
49
+ R_M32R_GOTPC_HI_SLO = 60 # :nodoc:
50
+ R_M32R_GOTPC_LO = 61 # :nodoc:
51
+ R_M32R_GOTOFF_HI_ULO = 62 # :nodoc:
52
+ R_M32R_GOTOFF_HI_SLO = 63 # :nodoc:
53
+ R_M32R_GOTOFF_LO = 64 # :nodoc:
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of M68HC11.
10
+ module M68HC11
11
+ R_M68HC11_NONE = 0 # :nodoc:
12
+ R_M68HC11_8 = 1 # :nodoc:
13
+ R_M68HC11_HI8 = 2 # :nodoc:
14
+ R_M68HC11_LO8 = 3 # :nodoc:
15
+ R_M68HC11_PCREL_8 = 4 # :nodoc:
16
+ R_M68HC11_16 = 5 # :nodoc:
17
+ R_M68HC11_32 = 6 # :nodoc:
18
+ R_M68HC11_3B = 7 # :nodoc:
19
+ R_M68HC11_PCREL_16 = 8 # :nodoc:
20
+ R_M68HC11_GNU_VTINHERIT = 9 # :nodoc:
21
+ R_M68HC11_GNU_VTENTRY = 10 # :nodoc:
22
+ R_M68HC11_24 = 11 # :nodoc:
23
+ R_M68HC11_LO16 = 12 # :nodoc:
24
+ R_M68HC11_PAGE = 13 # :nodoc:
25
+ R_M68HC12_16B = 15 # :nodoc:
26
+ R_M68HC12_PCREL_9 = 16 # :nodoc:
27
+ R_M68HC12_PCREL_10 = 17 # :nodoc:
28
+ R_M68HC12_HI8XG = 18 # :nodoc:
29
+ R_M68HC12_LO8XG = 19 # :nodoc:
30
+ R_M68HC11_RL_JUMP = 20 # :nodoc:
31
+ R_M68HC11_RL_GROUP = 21 # :nodoc:
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of M68K.
10
+ module M68K
11
+ R_68K_NONE = 0 # No reloc
12
+ R_68K_32 = 1 # Direct 32 bit
13
+ R_68K_16 = 2 # Direct 16 bit
14
+ R_68K_8 = 3 # Direct 8 bit
15
+ R_68K_PC32 = 4 # PC relative 32 bit
16
+ R_68K_PC16 = 5 # PC relative 16 bit
17
+ R_68K_PC8 = 6 # PC relative 8 bit
18
+ R_68K_GOT32 = 7 # 32 bit PC relative GOT entry
19
+ R_68K_GOT16 = 8 # 16 bit PC relative GOT entry
20
+ R_68K_GOT8 = 9 # 8 bit PC relative GOT entry
21
+ R_68K_GOT32O = 10 # 32 bit GOT offset
22
+ R_68K_GOT16O = 11 # 16 bit GOT offset
23
+ R_68K_GOT8O = 12 # 8 bit GOT offset
24
+ R_68K_PLT32 = 13 # 32 bit PC relative PLT address
25
+ R_68K_PLT16 = 14 # 16 bit PC relative PLT address
26
+ R_68K_PLT8 = 15 # 8 bit PC relative PLT address
27
+ R_68K_PLT32O = 16 # 32 bit PLT offset
28
+ R_68K_PLT16O = 17 # 16 bit PLT offset
29
+ R_68K_PLT8O = 18 # 8 bit PLT offset
30
+ R_68K_COPY = 19 # Copy symbol at runtime
31
+ R_68K_GLOB_DAT = 20 # Create GOT entry
32
+ R_68K_JMP_SLOT = 21 # Create PLT entry
33
+ R_68K_RELATIVE = 22 # Adjust by program base
34
+ R_68K_GNU_VTINHERIT = 23 # :nodoc:
35
+ R_68K_GNU_VTENTRY = 24 # :nodoc:
36
+ R_68K_TLS_GD32 = 25 # :nodoc:
37
+ R_68K_TLS_GD16 = 26 # :nodoc:
38
+ R_68K_TLS_GD8 = 27 # :nodoc:
39
+ R_68K_TLS_LDM32 = 28 # :nodoc:
40
+ R_68K_TLS_LDM16 = 29 # :nodoc:
41
+ R_68K_TLS_LDM8 = 30 # :nodoc:
42
+ R_68K_TLS_LDO32 = 31 # :nodoc:
43
+ R_68K_TLS_LDO16 = 32 # :nodoc:
44
+ R_68K_TLS_LDO8 = 33 # :nodoc:
45
+ R_68K_TLS_IE32 = 34 # :nodoc:
46
+ R_68K_TLS_IE16 = 35 # :nodoc:
47
+ R_68K_TLS_IE8 = 36 # :nodoc:
48
+ R_68K_TLS_LE32 = 37 # :nodoc:
49
+ R_68K_TLS_LE16 = 38 # :nodoc:
50
+ R_68K_TLS_LE8 = 39 # :nodoc:
51
+ R_68K_TLS_DTPMOD32 = 40 # :nodoc:
52
+ R_68K_TLS_DTPREL32 = 41 # :nodoc:
53
+ R_68K_TLS_TPREL32 = 42 # :nodoc:
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of MCORE.
10
+ module MCORE
11
+ R_MCORE_NONE = 0 # :nodoc:
12
+ R_MCORE_ADDR32 = 1 # :nodoc:
13
+ R_MCORE_PCRELIMM8BY4 = 2 # :nodoc:
14
+ R_MCORE_PCRELIMM11BY2 = 3 # :nodoc:
15
+ R_MCORE_PCRELIMM4BY2 = 4 # :nodoc:
16
+ R_MCORE_PCREL32 = 5 # :nodoc:
17
+ R_MCORE_PCRELJSR_IMM11BY2 = 6 # :nodoc:
18
+ R_MCORE_GNU_VTINHERIT = 7 # :nodoc:
19
+ R_MCORE_GNU_VTENTRY = 8 # :nodoc:
20
+ R_MCORE_RELATIVE = 9 # :nodoc:
21
+ R_MCORE_COPY = 10 # :nodoc:
22
+ R_MCORE_GLOB_DAT = 11 # :nodoc:
23
+ R_MCORE_JUMP_SLOT = 12 # :nodoc:
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of MEP.
10
+ module MEP
11
+ R_MEP_NONE = 0 # :nodoc:
12
+ R_RELC = 1 # :nodoc:
13
+ R_MEP_8 = 2 # 7654 3210 U
14
+ R_MEP_16 = 3 # fedc ba98 7654 3210 U
15
+ R_MEP_32 = 4 # vuts rqpo nmlk jihg fedc ba98 7654 3210 U
16
+ R_MEP_PCREL8A2 = 5 # ---- ---- 7654 321- S PC-REL
17
+ R_MEP_PCREL12A2 = 6 # ---- ba98 7654 321- S PC-REL
18
+ R_MEP_PCREL17A2 = 7 # ---- ---- ---- ---- gfed cba9 8765 4321 S PC-REL
19
+ R_MEP_PCREL24A2 = 8 # ---- -765 4321 ---- nmlk jihg fedc ba98 S PC-REL
20
+ R_MEP_PCABS24A2 = 9 # ---- -765 4321 ---- nmlk jihg fedc ba98 U
21
+ R_MEP_LOW16 = 10 # ---- ---- ---- ---- fedc ba98 7654 3210 U no-overflow
22
+ R_MEP_HI16U = 11 # ---- ---- ---- ---- vuts rqpo nmlk jihg U no-overflow
23
+ R_MEP_HI16S = 12 # ---- ---- ---- ---- vuts rqpo nmlk jihg S no-overflow
24
+ R_MEP_GPREL = 13 # ---- ---- ---- ---- fedc ba98 7654 3210 S GP-REL
25
+ R_MEP_TPREL = 14 # ---- ---- ---- ---- fedc ba98 7654 3210 S TP-REL
26
+ R_MEP_TPREL7 = 15 # ---- ---- -654 3210 U TP-REL
27
+ R_MEP_TPREL7A2 = 16 # ---- ---- -654 321- U TP-REL
28
+ R_MEP_TPREL7A4 = 17 # ---- ---- -654 32-- U TP-REL
29
+ R_MEP_UIMM24 = 18 # ---- ---- 7654 3210 nmlk jihg fedc ba98 U
30
+ R_MEP_ADDR24A4 = 19 # ---- ---- 7654 32-- nmlk jihg fedc ba98 U
31
+ R_MEP_GNU_VTINHERIT = 20 # ---- ---- ---- ---- U no-overflow
32
+ R_MEP_GNU_VTENTRY = 21 # ---- ---- ---- ---- U no-overflow
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of METAG.
10
+ module METAG
11
+ R_METAG_HIADDR16 = 0 # :nodoc:
12
+ R_METAG_LOADDR16 = 1 # :nodoc:
13
+ R_METAG_ADDR32 = 2 # :nodoc:
14
+ R_METAG_NONE = 3 # :nodoc:
15
+ R_METAG_RELBRANCH = 4 # :nodoc:
16
+ R_METAG_GETSETOFF = 5 # :nodoc:
17
+ R_METAG_REG32OP1 = 6 # :nodoc:
18
+ R_METAG_REG32OP2 = 7 # :nodoc:
19
+ R_METAG_REG32OP3 = 8 # :nodoc:
20
+ R_METAG_REG16OP1 = 9 # :nodoc:
21
+ R_METAG_REG16OP2 = 10 # :nodoc:
22
+ R_METAG_REG16OP3 = 11 # :nodoc:
23
+ R_METAG_REG32OP4 = 12 # :nodoc:
24
+ R_METAG_HIOG = 13 # :nodoc:
25
+ R_METAG_LOOG = 14 # :nodoc:
26
+ R_METAG_REL8 = 15 # :nodoc:
27
+ R_METAG_REL16 = 16 # :nodoc:
28
+ R_METAG_GNU_VTINHERIT = 30 # :nodoc:
29
+ R_METAG_GNU_VTENTRY = 31 # :nodoc:
30
+ R_METAG_HI16_GOTOFF = 32 # :nodoc:
31
+ R_METAG_LO16_GOTOFF = 33 # :nodoc:
32
+ R_METAG_GETSET_GOTOFF = 34 # :nodoc:
33
+ R_METAG_GETSET_GOT = 35 # :nodoc:
34
+ R_METAG_HI16_GOTPC = 36 # :nodoc:
35
+ R_METAG_LO16_GOTPC = 37 # :nodoc:
36
+ R_METAG_HI16_PLT = 38 # :nodoc:
37
+ R_METAG_LO16_PLT = 39 # :nodoc:
38
+ R_METAG_RELBRANCH_PLT = 40 # :nodoc:
39
+ R_METAG_GOTOFF = 41 # :nodoc:
40
+ R_METAG_PLT = 42 # :nodoc:
41
+ R_METAG_COPY = 43 # :nodoc:
42
+ R_METAG_JMP_SLOT = 44 # :nodoc:
43
+ R_METAG_RELATIVE = 45 # :nodoc:
44
+ R_METAG_GLOB_DAT = 46 # :nodoc:
45
+ R_METAG_TLS_GD = 47 # :nodoc:
46
+ R_METAG_TLS_LDM = 48 # :nodoc:
47
+ R_METAG_TLS_LDO_HI16 = 49 # :nodoc:
48
+ R_METAG_TLS_LDO_LO16 = 50 # :nodoc:
49
+ R_METAG_TLS_LDO = 51 # :nodoc:
50
+ R_METAG_TLS_IE = 52 # :nodoc:
51
+ R_METAG_TLS_IENONPIC = 53 # :nodoc:
52
+ R_METAG_TLS_IENONPIC_HI16 = 54 # :nodoc:
53
+ R_METAG_TLS_IENONPIC_LO16 = 55 # :nodoc:
54
+ R_METAG_TLS_TPOFF = 56 # :nodoc:
55
+ R_METAG_TLS_DTPMOD = 57 # :nodoc:
56
+ R_METAG_TLS_DTPOFF = 58 # :nodoc:
57
+ R_METAG_TLS_LE = 59 # :nodoc:
58
+ R_METAG_TLS_LE_HI16 = 60 # :nodoc:
59
+ R_METAG_TLS_LE_LO16 = 61 # :nodoc:
60
+ end
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ # This file is generated by `bundle exec rake gen:constants`, do not edit it.
4
+ # Source: https://sourceware.org/cgit/binutils-gdb/tree/include/elf
5
+
6
+ module ELFTools
7
+ module Constants
8
+ module R
9
+ # Relocation types of MICROBLAZE.
10
+ module MICROBLAZE
11
+ R_MICROBLAZE_NONE = 0 # :nodoc:
12
+ R_MICROBLAZE_32 = 1 # :nodoc:
13
+ R_MICROBLAZE_32_PCREL = 2 # :nodoc:
14
+ R_MICROBLAZE_64_PCREL = 3 # :nodoc:
15
+ R_MICROBLAZE_32_PCREL_LO = 4 # :nodoc:
16
+ R_MICROBLAZE_64 = 5 # :nodoc:
17
+ R_MICROBLAZE_32_LO = 6 # :nodoc:
18
+ R_MICROBLAZE_SRO32 = 7 # :nodoc:
19
+ R_MICROBLAZE_SRW32 = 8 # :nodoc:
20
+ R_MICROBLAZE_64_NONE = 9 # :nodoc:
21
+ R_MICROBLAZE_32_SYM_OP_SYM = 10 # :nodoc:
22
+ R_MICROBLAZE_GNU_VTINHERIT = 11 # :nodoc:
23
+ R_MICROBLAZE_GNU_VTENTRY = 12 # :nodoc:
24
+ R_MICROBLAZE_GOTPC_64 = 13 # PC-relative GOT offset
25
+ R_MICROBLAZE_GOT_64 = 14 # GOT entry offset
26
+ R_MICROBLAZE_PLT_64 = 15 # PLT offset (PC-relative)
27
+ R_MICROBLAZE_REL = 16 # Adjust by program base
28
+ R_MICROBLAZE_JUMP_SLOT = 17 # Create PLT entry
29
+ R_MICROBLAZE_GLOB_DAT = 18 # Create GOT entry
30
+ R_MICROBLAZE_GOTOFF_64 = 19 # Offset relative to GOT
31
+ R_MICROBLAZE_GOTOFF_32 = 20 # Offset relative to GOT
32
+ R_MICROBLAZE_COPY = 21 # Runtime copy
33
+ R_MICROBLAZE_TLS = 22 # TLS Reloc
34
+ R_MICROBLAZE_TLSGD = 23 # TLS General Dynamic
35
+ R_MICROBLAZE_TLSLD = 24 # TLS Local Dynamic
36
+ R_MICROBLAZE_TLSDTPMOD32 = 25 # TLS Module ID
37
+ R_MICROBLAZE_TLSDTPREL32 = 26 # TLS Offset Within TLS Block
38
+ R_MICROBLAZE_TLSDTPREL64 = 27 # TLS Offset Within TLS Block
39
+ R_MICROBLAZE_TLSGOTTPREL32 = 28 # TLS Offset From Thread Pointer
40
+ R_MICROBLAZE_TLSTPREL32 = 29 # TLS Offset From Thread Pointer
41
+ R_MICROBLAZE_TEXTPCREL_64 = 30 # PC-relative TEXT offset
42
+ R_MICROBLAZE_TEXTREL_64 = 31 # TEXT Entry offset 64-bit
43
+ R_MICROBLAZE_TEXTREL_32_LO = 32 # TEXT Entry offset 32-bit
44
+ R_MICROBLAZE_32_NONE = 33 # :nodoc:
45
+ end
46
+ end
47
+ end
48
+ end