Add AArch64 relocation types

This commit is contained in:
Richard Chien 2022-05-17 14:06:10 +00:00 committed by Serge Lamikhov-Center
parent 01f8fed8ad
commit 292367751d

View File

@ -797,6 +797,142 @@ constexpr unsigned R_386_IRELATIVE = 42;
constexpr unsigned R_386_GOT32X = 43;
constexpr unsigned R_X86_64_GNU_VTINHERIT = 250;
constexpr unsigned R_X86_64_GNU_VTENTRY = 251;
// AArch64
constexpr unsigned R_AARCH64_NONE = 0;
constexpr unsigned R_AARCH64_P32_ABS32 = 1;
constexpr unsigned R_AARCH64_P32_COPY = 180;
constexpr unsigned R_AARCH64_P32_GLOB_DAT = 181;
constexpr unsigned R_AARCH64_P32_JUMP_SLOT = 182;
constexpr unsigned R_AARCH64_P32_RELATIVE = 183;
constexpr unsigned R_AARCH64_P32_TLS_DTPMOD = 184;
constexpr unsigned R_AARCH64_P32_TLS_DTPREL = 185;
constexpr unsigned R_AARCH64_P32_TLS_TPREL = 186;
constexpr unsigned R_AARCH64_P32_TLSDESC = 187;
constexpr unsigned R_AARCH64_P32_IRELATIVE = 188;
constexpr unsigned R_AARCH64_ABS64 = 257;
constexpr unsigned R_AARCH64_ABS32 = 258;
constexpr unsigned R_AARCH64_ABS16 = 259;
constexpr unsigned R_AARCH64_PREL64 = 260;
constexpr unsigned R_AARCH64_PREL32 = 261;
constexpr unsigned R_AARCH64_PREL16 = 262;
constexpr unsigned R_AARCH64_MOVW_UABS_G0 = 263;
constexpr unsigned R_AARCH64_MOVW_UABS_G0_NC = 264;
constexpr unsigned R_AARCH64_MOVW_UABS_G1 = 265;
constexpr unsigned R_AARCH64_MOVW_UABS_G1_NC = 266;
constexpr unsigned R_AARCH64_MOVW_UABS_G2 = 267;
constexpr unsigned R_AARCH64_MOVW_UABS_G2_NC = 268;
constexpr unsigned R_AARCH64_MOVW_UABS_G3 = 269;
constexpr unsigned R_AARCH64_MOVW_SABS_G0 = 270;
constexpr unsigned R_AARCH64_MOVW_SABS_G1 = 271;
constexpr unsigned R_AARCH64_MOVW_SABS_G2 = 272;
constexpr unsigned R_AARCH64_LD_PREL_LO19 = 273;
constexpr unsigned R_AARCH64_ADR_PREL_LO21 = 274;
constexpr unsigned R_AARCH64_ADR_PREL_PG_HI21 = 275;
constexpr unsigned R_AARCH64_ADR_PREL_PG_HI21_NC = 276;
constexpr unsigned R_AARCH64_ADD_ABS_LO12_NC = 277;
constexpr unsigned R_AARCH64_LDST8_ABS_LO12_NC = 278;
constexpr unsigned R_AARCH64_TSTBR14 = 279;
constexpr unsigned R_AARCH64_CONDBR19 = 280;
constexpr unsigned R_AARCH64_JUMP26 = 282;
constexpr unsigned R_AARCH64_CALL26 = 283;
constexpr unsigned R_AARCH64_LDST16_ABS_LO12_NC = 284;
constexpr unsigned R_AARCH64_LDST32_ABS_LO12_NC = 285;
constexpr unsigned R_AARCH64_LDST64_ABS_LO12_NC = 286;
constexpr unsigned R_AARCH64_MOVW_PREL_G0 = 287;
constexpr unsigned R_AARCH64_MOVW_PREL_G0_NC = 288;
constexpr unsigned R_AARCH64_MOVW_PREL_G1 = 289;
constexpr unsigned R_AARCH64_MOVW_PREL_G1_NC = 290;
constexpr unsigned R_AARCH64_MOVW_PREL_G2 = 291;
constexpr unsigned R_AARCH64_MOVW_PREL_G2_NC = 292;
constexpr unsigned R_AARCH64_MOVW_PREL_G3 = 293;
constexpr unsigned R_AARCH64_LDST128_ABS_LO12_NC = 299;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G0 = 300;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G0_NC = 301;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G1 = 302;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G1_NC = 303;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G2 = 304;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G2_NC = 305;
constexpr unsigned R_AARCH64_MOVW_GOTOFF_G3 = 306;
constexpr unsigned R_AARCH64_GOTREL64 = 307;
constexpr unsigned R_AARCH64_GOTREL32 = 308;
constexpr unsigned R_AARCH64_GOT_LD_PREL19 = 309;
constexpr unsigned R_AARCH64_LD64_GOTOFF_LO15 = 310;
constexpr unsigned R_AARCH64_ADR_GOT_PAGE = 311;
constexpr unsigned R_AARCH64_LD64_GOT_LO12_NC = 312;
constexpr unsigned R_AARCH64_LD64_GOTPAGE_LO15 = 313;
constexpr unsigned R_AARCH64_TLSGD_ADR_PREL21 = 512;
constexpr unsigned R_AARCH64_TLSGD_ADR_PAGE21 = 513;
constexpr unsigned R_AARCH64_TLSGD_ADD_LO12_NC = 514;
constexpr unsigned R_AARCH64_TLSGD_MOVW_G1 = 515;
constexpr unsigned R_AARCH64_TLSGD_MOVW_G0_NC = 516;
constexpr unsigned R_AARCH64_TLSLD_ADR_PREL21 = 517;
constexpr unsigned R_AARCH64_TLSLD_ADR_PAGE21 = 518;
constexpr unsigned R_AARCH64_TLSLD_ADD_LO12_NC = 519;
constexpr unsigned R_AARCH64_TLSLD_MOVW_G1 = 520;
constexpr unsigned R_AARCH64_TLSLD_MOVW_G0_NC = 521;
constexpr unsigned R_AARCH64_TLSLD_LD_PREL19 = 522;
constexpr unsigned R_AARCH64_TLSLD_MOVW_DTPREL_G2 = 523;
constexpr unsigned R_AARCH64_TLSLD_MOVW_DTPREL_G1 = 524;
constexpr unsigned R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC = 525;
constexpr unsigned R_AARCH64_TLSLD_MOVW_DTPREL_G0 = 526;
constexpr unsigned R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC = 527;
constexpr unsigned R_AARCH64_TLSLD_ADD_DTPREL_HI12 = 528;
constexpr unsigned R_AARCH64_TLSLD_ADD_DTPREL_LO12 = 529;
constexpr unsigned R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC = 530;
constexpr unsigned R_AARCH64_TLSLD_LDST8_DTPREL_LO12 = 531;
constexpr unsigned R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC = 532;
constexpr unsigned R_AARCH64_TLSLD_LDST16_DTPREL_LO12 = 533;
constexpr unsigned R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC = 534;
constexpr unsigned R_AARCH64_TLSLD_LDST32_DTPREL_LO12 = 535;
constexpr unsigned R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC = 536;
constexpr unsigned R_AARCH64_TLSLD_LDST64_DTPREL_LO12 = 537;
constexpr unsigned R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC = 538;
constexpr unsigned R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 = 539;
constexpr unsigned R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC = 540;
constexpr unsigned R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 = 541;
constexpr unsigned R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC = 542;
constexpr unsigned R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 = 543;
constexpr unsigned R_AARCH64_TLSLE_MOVW_TPREL_G2 = 544;
constexpr unsigned R_AARCH64_TLSLE_MOVW_TPREL_G1 = 545;
constexpr unsigned R_AARCH64_TLSLE_MOVW_TPREL_G1_NC = 546;
constexpr unsigned R_AARCH64_TLSLE_MOVW_TPREL_G0 = 547;
constexpr unsigned R_AARCH64_TLSLE_MOVW_TPREL_G0_NC = 548;
constexpr unsigned R_AARCH64_TLSLE_ADD_TPREL_HI12 = 549;
constexpr unsigned R_AARCH64_TLSLE_ADD_TPREL_LO12 = 550;
constexpr unsigned R_AARCH64_TLSLE_ADD_TPREL_LO12_NC = 551;
constexpr unsigned R_AARCH64_TLSLE_LDST8_TPREL_LO12 = 552;
constexpr unsigned R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC = 553;
constexpr unsigned R_AARCH64_TLSLE_LDST16_TPREL_LO12 = 554;
constexpr unsigned R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC = 555;
constexpr unsigned R_AARCH64_TLSLE_LDST32_TPREL_LO12 = 556;
constexpr unsigned R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC = 557;
constexpr unsigned R_AARCH64_TLSLE_LDST64_TPREL_LO12 = 558;
constexpr unsigned R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC = 559;
constexpr unsigned R_AARCH64_TLSDESC_LD_PREL19 = 560;
constexpr unsigned R_AARCH64_TLSDESC_ADR_PREL21 = 561;
constexpr unsigned R_AARCH64_TLSDESC_ADR_PAGE21 = 562;
constexpr unsigned R_AARCH64_TLSDESC_LD64_LO12 = 563;
constexpr unsigned R_AARCH64_TLSDESC_ADD_LO12 = 564;
constexpr unsigned R_AARCH64_TLSDESC_OFF_G1 = 565;
constexpr unsigned R_AARCH64_TLSDESC_OFF_G0_NC = 566;
constexpr unsigned R_AARCH64_TLSDESC_LDR = 567;
constexpr unsigned R_AARCH64_TLSDESC_ADD = 568;
constexpr unsigned R_AARCH64_TLSDESC_CALL = 569;
constexpr unsigned R_AARCH64_TLSLE_LDST128_TPREL_LO12 = 570;
constexpr unsigned R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC = 571;
constexpr unsigned R_AARCH64_TLSLD_LDST128_DTPREL_LO12 = 572;
constexpr unsigned R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC = 573;
constexpr unsigned R_AARCH64_COPY = 1024;
constexpr unsigned R_AARCH64_GLOB_DAT = 1025;
constexpr unsigned R_AARCH64_JUMP_SLOT = 1026;
constexpr unsigned R_AARCH64_RELATIVE = 1027;
constexpr unsigned R_AARCH64_TLS_DTPMOD = 1028;
constexpr unsigned R_AARCH64_TLS_DTPMOD64 = 1028;
constexpr unsigned R_AARCH64_TLS_DTPREL = 1029;
constexpr unsigned R_AARCH64_TLS_DTPREL64 = 1029;
constexpr unsigned R_AARCH64_TLS_TPREL = 1030;
constexpr unsigned R_AARCH64_TLS_TPREL64 = 1030;
constexpr unsigned R_AARCH64_TLSDESC = 1031;
// Segment types
constexpr Elf_Word PT_NULL = 0;