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,105 @@
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 TILEPRO.
10
+ module TILEPRO
11
+ R_TILEPRO_NONE = 0 # :nodoc:
12
+ R_TILEPRO_32 = 1 # :nodoc:
13
+ R_TILEPRO_16 = 2 # :nodoc:
14
+ R_TILEPRO_8 = 3 # :nodoc:
15
+ R_TILEPRO_32_PCREL = 4 # :nodoc:
16
+ R_TILEPRO_16_PCREL = 5 # :nodoc:
17
+ R_TILEPRO_8_PCREL = 6 # :nodoc:
18
+ R_TILEPRO_LO16 = 7 # :nodoc:
19
+ R_TILEPRO_HI16 = 8 # :nodoc:
20
+ R_TILEPRO_HA16 = 9 # :nodoc:
21
+ R_TILEPRO_COPY = 10 # :nodoc:
22
+ R_TILEPRO_GLOB_DAT = 11 # :nodoc:
23
+ R_TILEPRO_JMP_SLOT = 12 # :nodoc:
24
+ R_TILEPRO_RELATIVE = 13 # :nodoc:
25
+ R_TILEPRO_BROFF_X1 = 14 # :nodoc:
26
+ R_TILEPRO_JOFFLONG_X1 = 15 # :nodoc:
27
+ R_TILEPRO_JOFFLONG_X1_PLT = 16 # :nodoc:
28
+ R_TILEPRO_IMM8_X0 = 17 # :nodoc:
29
+ R_TILEPRO_IMM8_Y0 = 18 # :nodoc:
30
+ R_TILEPRO_IMM8_X1 = 19 # :nodoc:
31
+ R_TILEPRO_IMM8_Y1 = 20 # :nodoc:
32
+ R_TILEPRO_MT_IMM15_X1 = 21 # :nodoc:
33
+ R_TILEPRO_MF_IMM15_X1 = 22 # :nodoc:
34
+ R_TILEPRO_IMM16_X0 = 23 # :nodoc:
35
+ R_TILEPRO_IMM16_X1 = 24 # :nodoc:
36
+ R_TILEPRO_IMM16_X0_LO = 25 # :nodoc:
37
+ R_TILEPRO_IMM16_X1_LO = 26 # :nodoc:
38
+ R_TILEPRO_IMM16_X0_HI = 27 # :nodoc:
39
+ R_TILEPRO_IMM16_X1_HI = 28 # :nodoc:
40
+ R_TILEPRO_IMM16_X0_HA = 29 # :nodoc:
41
+ R_TILEPRO_IMM16_X1_HA = 30 # :nodoc:
42
+ R_TILEPRO_IMM16_X0_PCREL = 31 # :nodoc:
43
+ R_TILEPRO_IMM16_X1_PCREL = 32 # :nodoc:
44
+ R_TILEPRO_IMM16_X0_LO_PCREL = 33 # :nodoc:
45
+ R_TILEPRO_IMM16_X1_LO_PCREL = 34 # :nodoc:
46
+ R_TILEPRO_IMM16_X0_HI_PCREL = 35 # :nodoc:
47
+ R_TILEPRO_IMM16_X1_HI_PCREL = 36 # :nodoc:
48
+ R_TILEPRO_IMM16_X0_HA_PCREL = 37 # :nodoc:
49
+ R_TILEPRO_IMM16_X1_HA_PCREL = 38 # :nodoc:
50
+ R_TILEPRO_IMM16_X0_GOT = 39 # :nodoc:
51
+ R_TILEPRO_IMM16_X1_GOT = 40 # :nodoc:
52
+ R_TILEPRO_IMM16_X0_GOT_LO = 41 # :nodoc:
53
+ R_TILEPRO_IMM16_X1_GOT_LO = 42 # :nodoc:
54
+ R_TILEPRO_IMM16_X0_GOT_HI = 43 # :nodoc:
55
+ R_TILEPRO_IMM16_X1_GOT_HI = 44 # :nodoc:
56
+ R_TILEPRO_IMM16_X0_GOT_HA = 45 # :nodoc:
57
+ R_TILEPRO_IMM16_X1_GOT_HA = 46 # :nodoc:
58
+ R_TILEPRO_MMSTART_X0 = 47 # :nodoc:
59
+ R_TILEPRO_MMEND_X0 = 48 # :nodoc:
60
+ R_TILEPRO_MMSTART_X1 = 49 # :nodoc:
61
+ R_TILEPRO_MMEND_X1 = 50 # :nodoc:
62
+ R_TILEPRO_SHAMT_X0 = 51 # :nodoc:
63
+ R_TILEPRO_SHAMT_X1 = 52 # :nodoc:
64
+ R_TILEPRO_SHAMT_Y0 = 53 # :nodoc:
65
+ R_TILEPRO_SHAMT_Y1 = 54 # :nodoc:
66
+ R_TILEPRO_DEST_IMM8_X1 = 55 # :nodoc:
67
+ R_TILEPRO_TLS_GD_CALL = 60 # :nodoc:
68
+ R_TILEPRO_IMM8_X0_TLS_GD_ADD = 61 # :nodoc:
69
+ R_TILEPRO_IMM8_X1_TLS_GD_ADD = 62 # :nodoc:
70
+ R_TILEPRO_IMM8_Y0_TLS_GD_ADD = 63 # :nodoc:
71
+ R_TILEPRO_IMM8_Y1_TLS_GD_ADD = 64 # :nodoc:
72
+ R_TILEPRO_TLS_IE_LOAD = 65 # :nodoc:
73
+ R_TILEPRO_IMM16_X0_TLS_GD = 66 # :nodoc:
74
+ R_TILEPRO_IMM16_X1_TLS_GD = 67 # :nodoc:
75
+ R_TILEPRO_IMM16_X0_TLS_GD_LO = 68 # :nodoc:
76
+ R_TILEPRO_IMM16_X1_TLS_GD_LO = 69 # :nodoc:
77
+ R_TILEPRO_IMM16_X0_TLS_GD_HI = 70 # :nodoc:
78
+ R_TILEPRO_IMM16_X1_TLS_GD_HI = 71 # :nodoc:
79
+ R_TILEPRO_IMM16_X0_TLS_GD_HA = 72 # :nodoc:
80
+ R_TILEPRO_IMM16_X1_TLS_GD_HA = 73 # :nodoc:
81
+ R_TILEPRO_IMM16_X0_TLS_IE = 74 # :nodoc:
82
+ R_TILEPRO_IMM16_X1_TLS_IE = 75 # :nodoc:
83
+ R_TILEPRO_IMM16_X0_TLS_IE_LO = 76 # :nodoc:
84
+ R_TILEPRO_IMM16_X1_TLS_IE_LO = 77 # :nodoc:
85
+ R_TILEPRO_IMM16_X0_TLS_IE_HI = 78 # :nodoc:
86
+ R_TILEPRO_IMM16_X1_TLS_IE_HI = 79 # :nodoc:
87
+ R_TILEPRO_IMM16_X0_TLS_IE_HA = 80 # :nodoc:
88
+ R_TILEPRO_IMM16_X1_TLS_IE_HA = 81 # :nodoc:
89
+ R_TILEPRO_TLS_DTPMOD32 = 82 # :nodoc:
90
+ R_TILEPRO_TLS_DTPOFF32 = 83 # :nodoc:
91
+ R_TILEPRO_TLS_TPOFF32 = 84 # :nodoc:
92
+ R_TILEPRO_IMM16_X0_TLS_LE = 85 # :nodoc:
93
+ R_TILEPRO_IMM16_X1_TLS_LE = 86 # :nodoc:
94
+ R_TILEPRO_IMM16_X0_TLS_LE_LO = 87 # :nodoc:
95
+ R_TILEPRO_IMM16_X1_TLS_LE_LO = 88 # :nodoc:
96
+ R_TILEPRO_IMM16_X0_TLS_LE_HI = 89 # :nodoc:
97
+ R_TILEPRO_IMM16_X1_TLS_LE_HI = 90 # :nodoc:
98
+ R_TILEPRO_IMM16_X0_TLS_LE_HA = 91 # :nodoc:
99
+ R_TILEPRO_IMM16_X1_TLS_LE_HA = 92 # :nodoc:
100
+ R_TILEPRO_GNU_VTINHERIT = 128 # :nodoc:
101
+ R_TILEPRO_GNU_VTENTRY = 129 # :nodoc:
102
+ end
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,101 @@
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 V800.
10
+ module V800
11
+ R_V800_NONE = 0 # :nodoc:
12
+ R_V810_NONE = 48 # :nodoc:
13
+ R_V810_BYTE = 49 # :nodoc:
14
+ R_V810_HWORD = 50 # :nodoc:
15
+ R_V810_WORD = 51 # :nodoc:
16
+ R_V810_WLO = 52 # :nodoc:
17
+ R_V810_WHI = 53 # :nodoc:
18
+ R_V810_WHI1 = 54 # :nodoc:
19
+ R_V810_GPBYTE = 55 # :nodoc:
20
+ R_V810_GPHWORD = 56 # :nodoc:
21
+ R_V810_GPWORD = 57 # :nodoc:
22
+ R_V810_GPWLO = 58 # :nodoc:
23
+ R_V810_GPWHI = 59 # :nodoc:
24
+ R_V810_GPWHI1 = 60 # :nodoc:
25
+ R_V850_HWLO = 61 # :nodoc:
26
+ R_V850_EP7BIT = 63 # :nodoc:
27
+ R_V850_EPHBYTE = 64 # :nodoc:
28
+ R_V850_EPWBYTE = 65 # :nodoc:
29
+ R_V850_REGHWLO = 66 # :nodoc:
30
+ R_V850_GPHWLO = 68 # :nodoc:
31
+ R_V850_PCR22 = 70 # :nodoc:
32
+ R_V850_BLO = 71 # :nodoc:
33
+ R_V850_EP4BIT = 72 # :nodoc:
34
+ R_V850_EP5BIT = 73 # :nodoc:
35
+ R_V850_REGBLO = 74 # :nodoc:
36
+ R_V850_GPBLO = 75 # :nodoc:
37
+ R_V810_WLO_1 = 76 # :nodoc:
38
+ R_V810_GPWLO_1 = 77 # :nodoc:
39
+ R_V850_BLO_1 = 78 # :nodoc:
40
+ R_V850_HWLO_1 = 79 # :nodoc:
41
+ R_V850_GPBLO_1 = 81 # :nodoc:
42
+ R_V850_GPHWLO_1 = 82 # :nodoc:
43
+ R_V850_EPBLO = 84 # :nodoc:
44
+ R_V850_EPHWLO = 85 # :nodoc:
45
+ R_V850_EPWLO_N = 87 # :nodoc:
46
+ R_V850_PC32 = 88 # :nodoc:
47
+ R_V850_W23BIT = 89 # :nodoc:
48
+ R_V850_GPW23BIT = 90 # :nodoc:
49
+ R_V850_EPW23BIT = 91 # :nodoc:
50
+ R_V850_B23BIT = 92 # :nodoc:
51
+ R_V850_GPB23BIT = 93 # :nodoc:
52
+ R_V850_EPB23BIT = 94 # :nodoc:
53
+ R_V850_PC16U = 95 # :nodoc:
54
+ R_V850_PC17 = 96 # :nodoc:
55
+ R_V850_DW8 = 97 # :nodoc:
56
+ R_V850_GPDW8 = 98 # :nodoc:
57
+ R_V850_EPDW8 = 99 # :nodoc:
58
+ R_V850_PC9 = 100 # :nodoc:
59
+ R_V810_REGBYTE = 101 # :nodoc:
60
+ R_V810_REGHWORD = 102 # :nodoc:
61
+ R_V810_REGWORD = 103 # :nodoc:
62
+ R_V810_REGWLO = 104 # :nodoc:
63
+ R_V810_REGWHI = 105 # :nodoc:
64
+ R_V810_REGWHI1 = 106 # :nodoc:
65
+ R_V850_REGW23BIT = 107 # :nodoc:
66
+ R_V850_REGB23BIT = 108 # :nodoc:
67
+ R_V850_REGDW8 = 109 # :nodoc:
68
+ R_V810_EPBYTE = 110 # :nodoc:
69
+ R_V810_EPHWORD = 111 # :nodoc:
70
+ R_V810_EPWORD = 112 # :nodoc:
71
+ R_V850_WLO23 = 113 # :nodoc:
72
+ R_V850_WORD_E = 114 # :nodoc:
73
+ R_V850_REGWORD_E = 115 # :nodoc:
74
+ R_V850_WORD = 116 # :nodoc:
75
+ R_V850_GPWORD = 117 # :nodoc:
76
+ R_V850_REGWORD = 118 # :nodoc:
77
+ R_V850_EPWORD = 119 # :nodoc:
78
+ R_V810_TPBYTE = 120 # :nodoc:
79
+ R_V810_TPHWORD = 121 # :nodoc:
80
+ R_V810_TPWORD = 122 # :nodoc:
81
+ R_V810_TPWLO = 123 # :nodoc:
82
+ R_V810_TPWHI = 124 # :nodoc:
83
+ R_V810_TPWHI1 = 125 # :nodoc:
84
+ R_V850_TPHWLO = 126 # :nodoc:
85
+ R_V850_TPBLO = 127 # :nodoc:
86
+ R_V810_TPWLO_1 = 128 # :nodoc:
87
+ R_V850_TPBLO_1 = 129 # :nodoc:
88
+ R_V850_TPHWLO_1 = 130 # :nodoc:
89
+ R_V850_TP23BIT = 131 # :nodoc:
90
+ R_V850_TPW23BIT = 132 # :nodoc:
91
+ R_V850_TPDW8 = 133 # :nodoc:
92
+ R_V810_ABS32 = 160 # :nodoc:
93
+ R_V850_SYM = 224 # :nodoc:
94
+ R_V850_OPadd = 225 # :nodoc:
95
+ R_V850_OPsub = 226 # :nodoc:
96
+ R_V850_OPsctsize = 227 # :nodoc:
97
+ R_V850_OPscttop = 228 # :nodoc:
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,66 @@
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 V850.
10
+ module V850
11
+ R_V850_NONE = 0 # :nodoc:
12
+ R_V850_9_PCREL = 1 # :nodoc:
13
+ R_V850_22_PCREL = 2 # :nodoc:
14
+ R_V850_HI16_S = 3 # :nodoc:
15
+ R_V850_HI16 = 4 # :nodoc:
16
+ R_V850_LO16 = 5 # :nodoc:
17
+ R_V850_ABS32 = 6 # :nodoc:
18
+ R_V850_16 = 7 # :nodoc:
19
+ R_V850_8 = 8 # :nodoc:
20
+ R_V850_SDA_16_16_OFFSET = 9 # For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi
21
+ R_V850_SDA_15_16_OFFSET = 10 # For ld.w, ld.h, ld.hu, st.w, st.h
22
+ R_V850_ZDA_16_16_OFFSET = 11 # For ld.b, st.b, set1, clr1, not1, tst1, movea, movhi
23
+ R_V850_ZDA_15_16_OFFSET = 12 # For ld.w, ld.h, ld.hu, st.w, st.h
24
+ R_V850_TDA_6_8_OFFSET = 13 # For sst.w, sld.w
25
+ R_V850_TDA_7_8_OFFSET = 14 # For sst.h, sld.h
26
+ R_V850_TDA_7_7_OFFSET = 15 # For sst.b, sld.b
27
+ R_V850_TDA_16_16_OFFSET = 16 # For set1, clr1, not1, tst1, movea, movhi
28
+ R_V850_TDA_4_5_OFFSET = 17 # For sld.hu
29
+ R_V850_TDA_4_4_OFFSET = 18 # For sld.bu
30
+ R_V850_SDA_16_16_SPLIT_OFFSET = 19 # For ld.bu
31
+ R_V850_ZDA_16_16_SPLIT_OFFSET = 20 # For ld.bu
32
+ R_V850_CALLT_6_7_OFFSET = 21 # For callt
33
+ R_V850_CALLT_16_16_OFFSET = 22 # For callt
34
+ R_V850_GNU_VTINHERIT = 23 # :nodoc:
35
+ R_V850_GNU_VTENTRY = 24 # :nodoc:
36
+ R_V850_LONGCALL = 25 # :nodoc:
37
+ R_V850_LONGJUMP = 26 # :nodoc:
38
+ R_V850_ALIGN = 27 # :nodoc:
39
+ R_V850_REL32 = 28 # :nodoc:
40
+ R_V850_LO16_SPLIT_OFFSET = 29 # For ld.bu
41
+ R_V850_16_PCREL = 30 # For loop
42
+ R_V850_17_PCREL = 31 # For br
43
+ R_V850_23 = 32 # For 23bit ld.[w,h,hu,b,bu],st.[w,h,b]
44
+ R_V850_32_PCREL = 33 # For jr32, jarl32
45
+ R_V850_32_ABS = 34 # For jmp32
46
+ R_V850_16_SPLIT_OFFSET = 35 # For ld.bu
47
+ R_V850_16_S1 = 36 # For ld.w, ld.h st.w st.h
48
+ R_V850_LO16_S1 = 37 # For ld.w, ld.h st.w st.h
49
+ R_V850_CALLT_15_16_OFFSET = 38 # For ld.w, ld.h, ld.hu, st.w, st.h
50
+ R_V850_32_GOTPCREL = 39 # GLOBAL_OFFSET_TABLE from pc
51
+ R_V850_16_GOT = 40 # GOT ENTRY from gp
52
+ R_V850_32_GOT = 41 # :nodoc:
53
+ R_V850_22_PLT = 42 # For jr
54
+ R_V850_32_PLT = 43 # For jr32
55
+ R_V850_COPY = 44 # :nodoc:
56
+ R_V850_GLOB_DAT = 45 # :nodoc:
57
+ R_V850_JMP_SLOT = 46 # :nodoc:
58
+ R_V850_RELATIVE = 47 # :nodoc:
59
+ R_V850_16_GOTOFF = 48 # From gp
60
+ R_V850_32_GOTOFF = 49 # :nodoc:
61
+ R_V850_CODE = 50 # :nodoc:
62
+ R_V850_DATA = 51 # For loop
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,29 @@
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 VAX.
10
+ module VAX
11
+ R_VAX_NONE = 0 # No reloc
12
+ R_VAX_32 = 1 # Direct 32 bit
13
+ R_VAX_16 = 2 # Direct 16 bit
14
+ R_VAX_8 = 3 # Direct 8 bit
15
+ R_VAX_PC32 = 4 # PC relative 32 bit
16
+ R_VAX_PC16 = 5 # PC relative 16 bit
17
+ R_VAX_PC8 = 6 # PC relative 8 bit
18
+ R_VAX_GOT32 = 7 # 32 bit PC relative GOT entry
19
+ R_VAX_PLT32 = 13 # 32 bit PC relative PLT address
20
+ R_VAX_COPY = 19 # Copy symbol at runtime
21
+ R_VAX_GLOB_DAT = 20 # Create GOT entry
22
+ R_VAX_JMP_SLOT = 21 # Create PLT entry
23
+ R_VAX_RELATIVE = 22 # Adjust by program base
24
+ R_VAX_GNU_VTINHERIT = 23 # :nodoc:
25
+ R_VAX_GNU_VTENTRY = 24 # :nodoc:
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,30 @@
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 VISIUM.
10
+ module VISIUM
11
+ R_VISIUM_NONE = 0 # :nodoc:
12
+ R_VISIUM_8 = 1 # :nodoc:
13
+ R_VISIUM_16 = 2 # :nodoc:
14
+ R_VISIUM_32 = 3 # :nodoc:
15
+ R_VISIUM_8_PCREL = 4 # :nodoc:
16
+ R_VISIUM_16_PCREL = 5 # :nodoc:
17
+ R_VISIUM_32_PCREL = 6 # :nodoc:
18
+ R_VISIUM_PC16 = 7 # :nodoc:
19
+ R_VISIUM_HI16 = 8 # :nodoc:
20
+ R_VISIUM_LO16 = 9 # :nodoc:
21
+ R_VISIUM_IM16 = 10 # :nodoc:
22
+ R_VISIUM_HI16_PCREL = 11 # :nodoc:
23
+ R_VISIUM_LO16_PCREL = 12 # :nodoc:
24
+ R_VISIUM_IM16_PCREL = 13 # :nodoc:
25
+ R_VISIUM_GNU_VTINHERIT = 200 # :nodoc:
26
+ R_VISIUM_GNU_VTENTRY = 201 # :nodoc:
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,16 @@
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 WASM32.
10
+ module WASM32
11
+ R_WASM32_NONE = 0 # :nodoc:
12
+ R_WASM32_32 = 1 # :nodoc:
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,68 @@
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 X86_64.
10
+ module X86_64
11
+ R_X86_64_NONE = 0 # No reloc
12
+ R_X86_64_64 = 1 # Direct 64 bit
13
+ R_X86_64_PC32 = 2 # PC relative 32 bit signed
14
+ R_X86_64_GOT32 = 3 # 32 bit GOT entry
15
+ R_X86_64_PLT32 = 4 # 32 bit PLT address
16
+ R_X86_64_COPY = 5 # Copy symbol at runtime
17
+ R_X86_64_GLOB_DAT = 6 # Create GOT entry
18
+ R_X86_64_JUMP_SLOT = 7 # Create PLT entry
19
+ R_X86_64_RELATIVE = 8 # Adjust by program base
20
+ R_X86_64_GOTPCREL = 9 # :nodoc:
21
+ R_X86_64_32 = 10 # Direct 32 bit zero extended
22
+ R_X86_64_32S = 11 # Direct 32 bit sign extended
23
+ R_X86_64_16 = 12 # Direct 16 bit zero extended
24
+ R_X86_64_PC16 = 13 # 16 bit sign extended pc relative
25
+ R_X86_64_8 = 14 # Direct 8 bit sign extended
26
+ R_X86_64_PC8 = 15 # 8 bit sign extended pc relative
27
+ R_X86_64_DTPMOD64 = 16 # ID of module containing symbol
28
+ R_X86_64_DTPOFF64 = 17 # Offset in TLS block
29
+ R_X86_64_TPOFF64 = 18 # Offset in initial TLS block
30
+ R_X86_64_TLSGD = 19 # PC relative offset to GD GOT block
31
+ R_X86_64_TLSLD = 20 # PC relative offset to LD GOT block
32
+ R_X86_64_DTPOFF32 = 21 # Offset in TLS block
33
+ R_X86_64_GOTTPOFF = 22 # PC relative offset to IE GOT entry
34
+ R_X86_64_TPOFF32 = 23 # Offset in initial TLS block
35
+ R_X86_64_PC64 = 24 # PC relative 64 bit
36
+ R_X86_64_GOTOFF64 = 25 # 64 bit offset to GOT
37
+ R_X86_64_GOTPC32 = 26 # :nodoc:
38
+ R_X86_64_GOT64 = 27 # 64 bit GOT entry offset
39
+ R_X86_64_GOTPCREL64 = 28 # :nodoc:
40
+ R_X86_64_GOTPC64 = 29 # :nodoc:
41
+ R_X86_64_GOTPLT64 = 30 # Obsolete. The same as GOT64
42
+ R_X86_64_PLTOFF64 = 31 # :nodoc:
43
+ R_X86_64_SIZE32 = 32 # 32-bit symbol size
44
+ R_X86_64_SIZE64 = 33 # 64-bit symbol size
45
+ R_X86_64_GOTPC32_TLSDESC = 34 # :nodoc:
46
+ R_X86_64_TLSDESC_CALL = 35 # :nodoc:
47
+ R_X86_64_TLSDESC = 36 # 2x64-bit TLS descriptor
48
+ R_X86_64_IRELATIVE = 37 # Adjust indirectly by program base
49
+ R_X86_64_RELATIVE64 = 38 # 64bit adjust by program base
50
+ R_X86_64_PC32_BND = 39 # :nodoc:
51
+ R_X86_64_PLT32_BND = 40 # :nodoc:
52
+ R_X86_64_GOTPCRELX = 41 # :nodoc:
53
+ R_X86_64_REX_GOTPCRELX = 42 # :nodoc:
54
+ R_X86_64_CODE_4_GOTPCRELX = 43 # :nodoc:
55
+ R_X86_64_CODE_4_GOTTPOFF = 44 # :nodoc:
56
+ R_X86_64_CODE_4_GOTPC32_TLSDESC = 45 # :nodoc:
57
+ R_X86_64_CODE_5_GOTPCRELX = 46 # :nodoc:
58
+ R_X86_64_CODE_5_GOTTPOFF = 47 # :nodoc:
59
+ R_X86_64_CODE_5_GOTPC32_TLSDESC = 48 # :nodoc:
60
+ R_X86_64_CODE_6_GOTPCRELX = 49 # :nodoc:
61
+ R_X86_64_CODE_6_GOTTPOFF = 50 # :nodoc:
62
+ R_X86_64_CODE_6_GOTPC32_TLSDESC = 51 # :nodoc:
63
+ R_X86_64_GNU_VTINHERIT = 250 # GNU C++ hack
64
+ R_X86_64_GNU_VTENTRY = 251 # GNU C++ hack
65
+ end
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,34 @@
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 XGATE.
10
+ module XGATE
11
+ R_XGATE_NONE = 0 # :nodoc:
12
+ R_XGATE_8 = 1 # :nodoc:
13
+ R_XGATE_PCREL_8 = 2 # :nodoc:
14
+ R_XGATE_16 = 3 # :nodoc:
15
+ R_XGATE_32 = 4 # :nodoc:
16
+ R_XGATE_PCREL_16 = 5 # :nodoc:
17
+ R_XGATE_GNU_VTINHERIT = 6 # :nodoc:
18
+ R_XGATE_GNU_VTENTRY = 7 # :nodoc:
19
+ R_XGATE_24 = 8 # :nodoc:
20
+ R_XGATE_LO16 = 9 # :nodoc:
21
+ R_XGATE_GPAGE = 10 # :nodoc:
22
+ R_XGATE_PCREL_9 = 11 # :nodoc:
23
+ R_XGATE_PCREL_10 = 12 # :nodoc:
24
+ R_XGATE_IMM8_LO = 13 # :nodoc:
25
+ R_XGATE_IMM8_HI = 14 # :nodoc:
26
+ R_XGATE_IMM3 = 15 # :nodoc:
27
+ R_XGATE_IMM4 = 16 # :nodoc:
28
+ R_XGATE_IMM5 = 17 # :nodoc:
29
+ R_XGATE_RL_JUMP = 18 # :nodoc:
30
+ R_XGATE_RL_GROUP = 19 # :nodoc:
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,29 @@
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 XSTORMY16.
10
+ module XSTORMY16
11
+ R_XSTORMY16_NONE = 0 # :nodoc:
12
+ R_XSTORMY16_32 = 1 # :nodoc:
13
+ R_XSTORMY16_16 = 2 # :nodoc:
14
+ R_XSTORMY16_8 = 3 # :nodoc:
15
+ R_XSTORMY16_PC32 = 4 # :nodoc:
16
+ R_XSTORMY16_PC16 = 5 # :nodoc:
17
+ R_XSTORMY16_PC8 = 6 # :nodoc:
18
+ R_XSTORMY16_REL_12 = 7 # :nodoc:
19
+ R_XSTORMY16_24 = 8 # :nodoc:
20
+ R_XSTORMY16_FPTR16 = 9 # :nodoc:
21
+ R_XSTORMY16_LO16 = 10 # :nodoc:
22
+ R_XSTORMY16_HI16 = 11 # :nodoc:
23
+ R_XSTORMY16_12 = 12 # :nodoc:
24
+ R_XSTORMY16_GNU_VTINHERIT = 128 # :nodoc:
25
+ R_XSTORMY16_GNU_VTENTRY = 129 # :nodoc:
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,75 @@
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 XTENSA.
10
+ module XTENSA
11
+ R_XTENSA_NONE = 0 # :nodoc:
12
+ R_XTENSA_32 = 1 # :nodoc:
13
+ R_XTENSA_RTLD = 2 # :nodoc:
14
+ R_XTENSA_GLOB_DAT = 3 # :nodoc:
15
+ R_XTENSA_JMP_SLOT = 4 # :nodoc:
16
+ R_XTENSA_RELATIVE = 5 # :nodoc:
17
+ R_XTENSA_PLT = 6 # :nodoc:
18
+ R_XTENSA_OP0 = 8 # :nodoc:
19
+ R_XTENSA_OP1 = 9 # :nodoc:
20
+ R_XTENSA_OP2 = 10 # :nodoc:
21
+ R_XTENSA_ASM_EXPAND = 11 # :nodoc:
22
+ R_XTENSA_ASM_SIMPLIFY = 12 # :nodoc:
23
+ R_XTENSA_32_PCREL = 14 # :nodoc:
24
+ R_XTENSA_GNU_VTINHERIT = 15 # :nodoc:
25
+ R_XTENSA_GNU_VTENTRY = 16 # :nodoc:
26
+ R_XTENSA_DIFF8 = 17 # :nodoc:
27
+ R_XTENSA_DIFF16 = 18 # :nodoc:
28
+ R_XTENSA_DIFF32 = 19 # :nodoc:
29
+ R_XTENSA_SLOT0_OP = 20 # :nodoc:
30
+ R_XTENSA_SLOT1_OP = 21 # :nodoc:
31
+ R_XTENSA_SLOT2_OP = 22 # :nodoc:
32
+ R_XTENSA_SLOT3_OP = 23 # :nodoc:
33
+ R_XTENSA_SLOT4_OP = 24 # :nodoc:
34
+ R_XTENSA_SLOT5_OP = 25 # :nodoc:
35
+ R_XTENSA_SLOT6_OP = 26 # :nodoc:
36
+ R_XTENSA_SLOT7_OP = 27 # :nodoc:
37
+ R_XTENSA_SLOT8_OP = 28 # :nodoc:
38
+ R_XTENSA_SLOT9_OP = 29 # :nodoc:
39
+ R_XTENSA_SLOT10_OP = 30 # :nodoc:
40
+ R_XTENSA_SLOT11_OP = 31 # :nodoc:
41
+ R_XTENSA_SLOT12_OP = 32 # :nodoc:
42
+ R_XTENSA_SLOT13_OP = 33 # :nodoc:
43
+ R_XTENSA_SLOT14_OP = 34 # :nodoc:
44
+ R_XTENSA_SLOT0_ALT = 35 # :nodoc:
45
+ R_XTENSA_SLOT1_ALT = 36 # :nodoc:
46
+ R_XTENSA_SLOT2_ALT = 37 # :nodoc:
47
+ R_XTENSA_SLOT3_ALT = 38 # :nodoc:
48
+ R_XTENSA_SLOT4_ALT = 39 # :nodoc:
49
+ R_XTENSA_SLOT5_ALT = 40 # :nodoc:
50
+ R_XTENSA_SLOT6_ALT = 41 # :nodoc:
51
+ R_XTENSA_SLOT7_ALT = 42 # :nodoc:
52
+ R_XTENSA_SLOT8_ALT = 43 # :nodoc:
53
+ R_XTENSA_SLOT9_ALT = 44 # :nodoc:
54
+ R_XTENSA_SLOT10_ALT = 45 # :nodoc:
55
+ R_XTENSA_SLOT11_ALT = 46 # :nodoc:
56
+ R_XTENSA_SLOT12_ALT = 47 # :nodoc:
57
+ R_XTENSA_SLOT13_ALT = 48 # :nodoc:
58
+ R_XTENSA_SLOT14_ALT = 49 # :nodoc:
59
+ R_XTENSA_TLSDESC_FN = 50 # :nodoc:
60
+ R_XTENSA_TLSDESC_ARG = 51 # :nodoc:
61
+ R_XTENSA_TLS_DTPOFF = 52 # :nodoc:
62
+ R_XTENSA_TLS_TPOFF = 53 # :nodoc:
63
+ R_XTENSA_TLS_FUNC = 54 # :nodoc:
64
+ R_XTENSA_TLS_ARG = 55 # :nodoc:
65
+ R_XTENSA_TLS_CALL = 56 # :nodoc:
66
+ R_XTENSA_PDIFF8 = 57 # :nodoc:
67
+ R_XTENSA_PDIFF16 = 58 # :nodoc:
68
+ R_XTENSA_PDIFF32 = 59 # :nodoc:
69
+ R_XTENSA_NDIFF8 = 60 # :nodoc:
70
+ R_XTENSA_NDIFF16 = 61 # :nodoc:
71
+ R_XTENSA_NDIFF32 = 62 # :nodoc:
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,28 @@
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 Z80.
10
+ module Z80
11
+ R_Z80_NONE = 0 # :nodoc:
12
+ R_Z80_8 = 1 # :nodoc:
13
+ R_Z80_8_DIS = 2 # :nodoc:
14
+ R_Z80_8_PCREL = 3 # :nodoc:
15
+ R_Z80_16 = 4 # :nodoc:
16
+ R_Z80_24 = 5 # :nodoc:
17
+ R_Z80_32 = 6 # :nodoc:
18
+ R_Z80_BYTE0 = 7 # :nodoc:
19
+ R_Z80_BYTE1 = 8 # :nodoc:
20
+ R_Z80_BYTE2 = 9 # :nodoc:
21
+ R_Z80_BYTE3 = 10 # :nodoc:
22
+ R_Z80_WORD0 = 11 # :nodoc:
23
+ R_Z80_WORD1 = 12 # :nodoc:
24
+ R_Z80_16_BE = 13 # :nodoc:
25
+ end
26
+ end
27
+ end
28
+ end