// aarch64.h -- ELF definitions specific to AARCH64  -*- C++ -*-

// Copyright (C) 2014 Free Software Foundation, Inc.
// Written by Jing Yu (jingyu@google.com)

// This file is part of elfcpp.

// This program is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public License
// as published by the Free Software Foundation; either version 2, or
// (at your option) any later version.

// In addition to the permissions in the GNU Library General Public
// License, the Free Software Foundation gives you unlimited
// permission to link the compiled version of this file into
// combinations with other programs, and to distribute those
// combinations without any restriction coming from the use of this
// file.  (The Library Public License restrictions do apply in other
// respects; for example, they cover modification of the file, and
/// distribution when not linked into a combined executable.)

// This program is distributed in the hope that it will be useful, but
// WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// Library General Public License for more details.

// You should have received a copy of the GNU Library General Public
// License along with this program; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
// 02110-1301, USA.

#ifndef ELFCPP_AARCH64_H
#define ELFCPP_AARCH64_H

namespace elfcpp
{

// The relocation type information is taken from:
//
//   ELF for the ARM 64-bit Architecture (AArch64)
//   Document number: ARM IHI 0056B, current through AArch64 ABI release 1.0
//   Date of Issue: 22nd May, 2013
//

enum
{
  // Null relocation codes
  R_AARCH64_NONE = 0,		// None
  R_AARCH64_withdrawn = 256,	// Treat as R_AARCH64_NONE

  // Static relocations
  R_AARCH64_ABS64 = 257,	// S + A
  R_AARCH64_ABS32 = 258,	// S + A
  R_AARCH64_ABS16 = 259,	// S + A
  R_AARCH64_PREL64 = 260,	// S + A - P
  R_AARCH64_PREL32 = 261,	// S + A - P
  R_AARCH64_PREL16 = 262,	// S + A - P
  R_AARCH64_MOVW_UABS_G0 = 263,		// S + A
  R_AARCH64_MOVW_UABS_G0_NC = 264,	// S + A
  R_AARCH64_MOVW_UABS_G1 = 265,		// S + A
  R_AARCH64_MOVW_UABS_G1_NC = 266,	// S + A
  R_AARCH64_MOVW_UABS_G2 = 267,		// S + A
  R_AARCH64_MOVW_UABS_G2_NC = 268,	// S + A
  R_AARCH64_MOVW_UABS_G3 = 269,		// S + A
  R_AARCH64_MOVW_SABS_G0 = 270,		// S + A
  R_AARCH64_MOVW_SABS_G1 = 271,		// S + A
  R_AARCH64_MOVW_SABS_G2 = 272,		// S + A
  R_AARCH64_LD_PREL_LO19 = 273,		// S + A - P
  R_AARCH64_ADR_PREL_LO21 = 274,	// S + A - P
  R_AARCH64_ADR_PREL_PG_HI21 = 275,	// Page(S+A) - Page(P)
  R_AARCH64_ADR_PREL_PG_HI21_NC = 276,	// Page(S+A) - Page(P)
  R_AARCH64_ADD_ABS_LO12_NC = 277,	// S + A
  R_AARCH64_LDST8_ABS_LO12_NC = 278,	// S + A
  R_AARCH64_TSTBR14 = 279,		// S + A - P
  R_AARCH64_CONDBR19 = 280,		// S + A - P
  R_AARCH64_JUMP26 = 282,		// S + A - P
  R_AARCH64_CALL26 = 283,		// S + A - P
  R_AARCH64_LDST16_ABS_LO12_NC = 284,	// S + A
  R_AARCH64_LDST32_ABS_LO12_NC = 285,	// S + A
  R_AARCH64_LDST64_ABS_LO12_NC = 286,	// S + A
  R_AARCH64_MOVW_PREL_G0 = 287,		// S + A - P
  R_AARCH64_MOVW_PREL_G0_NC = 288,	// S + A - P
  R_AARCH64_MOVW_PREL_G1 = 289,		// S + A - P
  R_AARCH64_MOVW_PREL_G1_NC = 290,	// S + A - P
  R_AARCH64_MOVW_PREL_G2 = 291,		// S + A - P
  R_AARCH64_MOVW_PREL_G2_NC = 292,	// S + A - P
  R_AARCH64_MOVW_PREL_G3 = 293,		// S + A - P
  R_AARCH64_LDST128_ABS_LO12_NC = 299,	// S + A
  R_AARCH64_MOVW_GOTOFF_G0 = 300,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G0_NC = 301,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G1 = 302,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G1_NC = 303,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G2 = 304,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G2_NC = 305,	// G(GDAT(S+A))-GOT
  R_AARCH64_MOVW_GOTOFF_G3 = 306,	// G(GDAT(S+A))-GOT
  R_AARCH64_GOTREL64 = 307,		// S + A - GOT
  R_AARCH64_GOTREL32 = 308,		// S + A - GOT
  R_AARCH64_GOT_LD_PREL19 = 309,	// G(GDAT(S+A))-P
  R_AARCH64_LD64_GOTOFF_LO15 = 310,	// G(GDAT(S+A))-GOT
  R_AARCH64_ADR_GOT_PAGE = 311,		// Page(G(GDAT(S+A)))-Page(P)
  R_AARCH64_LD64_GOT_LO12_NC = 312,	// G(GDAT(S+A))
  R_AARCH64_LD64_GOTPAGE_LO15 = 313,	// G(GDAT(S+A))-Page(GOT)

  // Relocations for thread-local storage
  R_AARCH64_TLSGD_ADR_PREL21 = 512,		// G(GTLSIDX(S,A)) - P
  R_AARCH64_TLSGD_ADR_PAGE21 = 513,		// Page(G(GTLSIDX(S,A)))-Page(P)
  R_AARCH64_TLSGD_ADD_LO12_NC = 514,		// G(GTLSICX(S,A))
  R_AARCH64_TLSGD_MOVW_G1 = 515,		// G(GTLSIDX(S,A)) - GOT
  R_AARCH64_TLSGD_MOVW_G0_NC = 516,		// G(GTLSIDX(S,A)) - GOT

  R_AARCH64_TLSLD_ADR_PREL21 = 517,		// G(GLDM(S)) - P
  R_AARCH64_TLSLD_ADR_PAGE21 = 518,		// Page(G(GLDM(S))) - Page(P)
  R_AARCH64_TLSLD_ADD_LO12_NC = 519,		// G(GLDM(S))
  R_AARCH64_TLSLD_MOVW_G1 = 520,		// G(GLDM(S)) - GOT
  R_AARCH64_TLSLD_MOVW_G0_NC = 521,		// G(GLDM(S)) - GOT
  R_AARCH64_TLSLD_LD_PREL19 = 522,		// G(GLDM(S)) - P
  R_AARCH64_TLSLD_MOVW_DTPREL_G2 = 523,		// DTPREL(S+A)
  R_AARCH64_TLSLD_MOVW_DTPREL_G1 = 524,		// DTPREL(S+A)
  R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC = 525,	// DTPREL(S+A)
  R_AARCH64_TLSLD_MOVW_DTPREL_G0 = 526,		// DTPREL(S+A)
  R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC = 527,	// DTPREL(S+A)
  R_AARCH64_TLSLD_ADD_DTPREL_HI12 = 528,	// DTPREL(S+A)
  R_AARCH64_TLSLD_ADD_DTPREL_LO12 = 529,	// DTPREL(S+A)
  R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC = 530,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST8_DTPREL_LO12 = 531,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC = 532,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST16_DTPREL_LO12 = 533,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC = 534,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST32_DTPREL_LO12 = 535,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC = 536,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST64_DTPREL_LO12 = 537,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC = 538,	// DTPREL(S+A)
  R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 = 539,	// G(GTPREL(S+A)) - GOT
  R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC = 540,	// G(GTPREL(S+A)) - GOT
  R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 = 541,	// Page(G(GTPREL(S+A)))-Page(P)
  R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC = 542,	// G(GTPREL(S+A))
  R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 = 543,	// G(GTPREL(S+A)) - P
  R_AARCH64_TLSLE_MOVW_TPREL_G2 = 544,		// TPREL(S+A)
  R_AARCH64_TLSLE_MOVW_TPREL_G1 = 545,		// TPREL(S+A)
  R_AARCH64_TLSLE_MOVW_TPREL_G1_NC = 546,	// TPREL(S+A)
  R_AARCH64_TLSLE_MOVW_TPREL_G0 = 547,		// TPREL(S+A)
  R_AARCH64_TLSLE_MOVW_TPREL_G0_NC = 548,	// TPREL(S+A)
  R_AARCH64_TLSLE_ADD_TPREL_HI12 = 549,		// TPREL(S+A)
  R_AARCH64_TLSLE_ADD_TPREL_LO12 = 550,		// TPREL(S+A)
  R_AARCH64_TLSLE_ADD_TPREL_LO12_NC = 551,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST8_TPREL_LO12 = 552,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC = 553,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST16_TPREL_LO12 = 554,	// TPREL(S+A)
  R_AARCH64_TLSLE_LSDT16_TPREL_LO12_NC = 555,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST32_TPREL_LO12 = 556,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC = 557,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST64_TPREL_LO12 = 558,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC = 559,	// TPREL(S+A)
  R_AARCH64_TLSDESC_LD_PREL19 = 560,	// G(GTLSDESC(S+A)) - P
  R_AARCH64_TLSDESC_ADR_PREL21 = 561,	// G(GTLSDESC(S+A)) - P
  R_AARCH64_TLSDESC_ADR_PAGE21 = 562,	// Page(G(GTLSDESC(S+A)))-Page(P)
  R_AARCH64_TLSDESC_LD64_LO12 = 563,	// G(GTLSDESC(S+A))
  R_AARCH64_TLSDESC_ADD_LO12 = 564,	// G(GTLSDESC(S+A))
  R_AARCH64_TLSDESC_OFF_G1 = 565,	// G(GTLSDESC(S+A)) - GOT
  R_AARCH64_TLSDESC_OFF_G0_NC = 566,	// G(GTLSDESC(S+A)) - GOT
  R_AARCH64_TLSDESC_LDR = 567,		// None
  R_AARCH64_TLSDESC_ADD = 568,		// None
  R_AARCH64_TLSDESC_CALL = 569,		// None
  R_AARCH64_TLSLE_LDST128_TPREL_LO12 = 570,	// TPREL(S+A)
  R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC = 571,	// TPREL(S+A)
  R_AARCH64_TLSLD_LDST128_DTPREL_LO12 = 572,	// DTPREL(S+A)
  R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC = 573,	// DTPREL(S+A)

  // Dynamic relocations
  R_AARCH64_COPY = 1024,
  R_AARCH64_GLOB_DAT = 1025,		// S + A
  R_AARCH64_JUMP_SLOT = 1026,		// S + A
  R_AARCH64_RELATIVE = 1027,		// Delta(S) + A
  // Note (shenhan): the following 2 relocs are different from elf spec from
  // arm.  In elf docs, TLS_DTPMOD64 is defined as 1029, TLS_DTPREL64 1028.
  // While actually the bfd linker (and the dynamic linker) treates TLS_DTPMOD64
  // as 1028, TLS_DTPREL64 1029.  See binutils-gdb/include/elf/aarch64.h.
  R_AARCH64_TLS_DTPMOD64 = 1028,	// LDM(S)
  R_AARCH64_TLS_DTPREL64 = 1029,	// DTPREL(S+A)
  R_AARCH64_TLS_TPREL64 = 1030,		// TPREL(S+A)
  R_AARCH64_TLSDESC = 1031,		// TLSDESC(S+A)
  R_AARCH64_IRELATIVE = 1032,		// Indirect(Delta(S) + A)
};

} // End namespace elfcpp.

#endif // !defined(ELFCPP_AARCH64_H)
