summaryrefslogtreecommitdiff
path: root/backends/riscv_reloc.def
diff options
context:
space:
mode:
Diffstat (limited to 'backends/riscv_reloc.def')
-rw-r--r--backends/riscv_reloc.def83
1 files changed, 83 insertions, 0 deletions
diff --git a/backends/riscv_reloc.def b/backends/riscv_reloc.def
new file mode 100644
index 00000000..2bd3513e
--- /dev/null
+++ b/backends/riscv_reloc.def
@@ -0,0 +1,83 @@
+/* List the relocation types for RISC-V. -*- C -*-
+ This file is part of elfutils.
+
+ This file is free software; you can redistribute it and/or modify
+ it under the terms of either
+
+ * the GNU Lesser General Public License as published by the Free
+ Software Foundation; either version 3 of the License, or (at
+ your option) any later version
+
+ or
+
+ * the GNU General Public License as published by the Free
+ Software Foundation; either version 2 of the License, or (at
+ your option) any later version
+
+ or both in parallel, as here.
+
+ elfutils 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
+ General Public License for more details.
+
+ You should have received copies of the GNU General Public License and
+ the GNU Lesser General Public License along with this program. If
+ not, see <http://www.gnu.org/licenses/>. */
+
+/* NAME, REL|EXEC|DYN */
+
+RELOC_TYPE (NONE, EXEC|DYN)
+RELOC_TYPE (32, REL|EXEC|DYN)
+RELOC_TYPE (64, REL|EXEC|DYN)
+RELOC_TYPE (RELATIVE, EXEC|DYN)
+RELOC_TYPE (COPY, EXEC|DYN)
+RELOC_TYPE (JUMP_SLOT, EXEC|DYN)
+RELOC_TYPE (TLS_DTPMOD32, EXEC|DYN)
+RELOC_TYPE (TLS_DTPMOD64, EXEC|DYN)
+RELOC_TYPE (TLS_DTPREL32, EXEC|DYN)
+RELOC_TYPE (TLS_DTPREL64, EXEC|DYN)
+RELOC_TYPE (TLS_TPREL32, EXEC|DYN)
+RELOC_TYPE (TLS_TPREL64, EXEC|DYN)
+RELOC_TYPE (BRANCH, REL)
+RELOC_TYPE (JAL, REL)
+RELOC_TYPE (CALL, REL)
+RELOC_TYPE (CALL_PLT, REL)
+RELOC_TYPE (GOT_HI20, REL)
+RELOC_TYPE (TLS_GOT_HI20, REL)
+RELOC_TYPE (TLS_GD_HI20, REL)
+RELOC_TYPE (PCREL_HI20, REL)
+RELOC_TYPE (PCREL_LO12_I, REL)
+RELOC_TYPE (PCREL_LO12_S, REL)
+RELOC_TYPE (HI20, REL)
+RELOC_TYPE (LO12_I, REL)
+RELOC_TYPE (LO12_S, REL)
+RELOC_TYPE (TPREL_HI20, REL)
+RELOC_TYPE (TPREL_LO12_I, REL)
+RELOC_TYPE (TPREL_LO12_S, REL)
+RELOC_TYPE (TPREL_ADD, REL)
+RELOC_TYPE (ADD8, REL)
+RELOC_TYPE (ADD16, REL)
+RELOC_TYPE (ADD32, REL)
+RELOC_TYPE (ADD64, REL)
+RELOC_TYPE (SUB8, REL)
+RELOC_TYPE (SUB16, REL)
+RELOC_TYPE (SUB32, REL)
+RELOC_TYPE (SUB64, REL)
+RELOC_TYPE (GNU_VTINHERIT, REL)
+RELOC_TYPE (GNU_VTENTRY, REL)
+RELOC_TYPE (ALIGN, REL)
+RELOC_TYPE (RVC_BRANCH, REL)
+RELOC_TYPE (RVC_JUMP, REL)
+RELOC_TYPE (RVC_LUI, REL)
+RELOC_TYPE (GPREL_I, REL)
+RELOC_TYPE (GPREL_S, REL)
+RELOC_TYPE (TPREL_I, REL)
+RELOC_TYPE (TPREL_S, REL)
+RELOC_TYPE (RELAX, REL)
+RELOC_TYPE (SUB6, REL)
+RELOC_TYPE (SET6, REL)
+RELOC_TYPE (SET8, REL)
+RELOC_TYPE (SET16, REL)
+RELOC_TYPE (SET32, REL)
+RELOC_TYPE (32_PCREL, REL)