Venkatraman Govindaraju | 5f1cce5 | 2014-01-05 02:13:48 +0000 | [diff] [blame] | 1 | //===-- SparcFixupKinds.h - Sparc Specific Fixup Entries --------*- C++ -*-===// |
| 2 | // |
| 3 | // The LLVM Compiler Infrastructure |
| 4 | // |
| 5 | // This file is distributed under the University of Illinois Open Source |
| 6 | // License. See LICENSE.TXT for details. |
| 7 | // |
| 8 | //===----------------------------------------------------------------------===// |
| 9 | |
Benjamin Kramer | a7c40ef | 2014-08-13 16:26:38 +0000 | [diff] [blame] | 10 | #ifndef LLVM_LIB_TARGET_SPARC_MCTARGETDESC_SPARCFIXUPKINDS_H |
| 11 | #define LLVM_LIB_TARGET_SPARC_MCTARGETDESC_SPARCFIXUPKINDS_H |
Venkatraman Govindaraju | 5f1cce5 | 2014-01-05 02:13:48 +0000 | [diff] [blame] | 12 | |
| 13 | #include "llvm/MC/MCFixup.h" |
| 14 | |
| 15 | namespace llvm { |
| 16 | namespace Sparc { |
| 17 | enum Fixups { |
| 18 | // fixup_sparc_call30 - 30-bit PC relative relocation for call |
| 19 | fixup_sparc_call30 = FirstTargetFixupKind, |
| 20 | |
| 21 | /// fixup_sparc_br22 - 22-bit PC relative relocation for |
| 22 | /// branches |
| 23 | fixup_sparc_br22, |
| 24 | |
Venkatraman Govindaraju | b73aeca | 2014-01-06 01:22:54 +0000 | [diff] [blame] | 25 | /// fixup_sparc_br19 - 19-bit PC relative relocation for |
Venkatraman Govindaraju | 5f1cce5 | 2014-01-05 02:13:48 +0000 | [diff] [blame] | 26 | /// branches on icc/xcc |
| 27 | fixup_sparc_br19, |
| 28 | |
Venkatraman Govindaraju | b745e67 | 2014-03-02 09:46:56 +0000 | [diff] [blame] | 29 | /// fixup_sparc_bpr - 16-bit fixup for bpr |
| 30 | fixup_sparc_br16_2, |
| 31 | fixup_sparc_br16_14, |
| 32 | |
Venkatraman Govindaraju | b73aeca | 2014-01-06 01:22:54 +0000 | [diff] [blame] | 33 | /// fixup_sparc_hi22 - 22-bit fixup corresponding to %hi(foo) |
| 34 | /// for sethi |
| 35 | fixup_sparc_hi22, |
| 36 | |
| 37 | /// fixup_sparc_lo10 - 10-bit fixup corresponding to %lo(foo) |
| 38 | fixup_sparc_lo10, |
| 39 | |
| 40 | /// fixup_sparc_h44 - 22-bit fixup corresponding to %h44(foo) |
| 41 | fixup_sparc_h44, |
| 42 | |
| 43 | /// fixup_sparc_m44 - 10-bit fixup corresponding to %m44(foo) |
| 44 | fixup_sparc_m44, |
| 45 | |
| 46 | /// fixup_sparc_l44 - 12-bit fixup corresponding to %l44(foo) |
| 47 | fixup_sparc_l44, |
| 48 | |
| 49 | /// fixup_sparc_hh - 22-bit fixup corresponding to %hh(foo) |
| 50 | fixup_sparc_hh, |
| 51 | |
| 52 | /// fixup_sparc_hm - 10-bit fixup corresponding to %hm(foo) |
| 53 | fixup_sparc_hm, |
| 54 | |
Venkatraman Govindaraju | 104643d | 2014-02-07 04:24:35 +0000 | [diff] [blame] | 55 | /// fixup_sparc_pc22 - 22-bit fixup corresponding to %pc22(foo) |
| 56 | fixup_sparc_pc22, |
| 57 | |
| 58 | /// fixup_sparc_pc10 - 10-bit fixup corresponding to %pc10(foo) |
| 59 | fixup_sparc_pc10, |
| 60 | |
| 61 | /// fixup_sparc_got22 - 22-bit fixup corresponding to %got22(foo) |
| 62 | fixup_sparc_got22, |
| 63 | |
| 64 | /// fixup_sparc_got10 - 10-bit fixup corresponding to %got10(foo) |
| 65 | fixup_sparc_got10, |
| 66 | |
| 67 | /// fixup_sparc_wplt30 |
| 68 | fixup_sparc_wplt30, |
| 69 | |
Venkatraman Govindaraju | fd07500 | 2014-02-07 05:54:20 +0000 | [diff] [blame] | 70 | /// fixups for Thread Local Storage |
| 71 | fixup_sparc_tls_gd_hi22, |
| 72 | fixup_sparc_tls_gd_lo10, |
| 73 | fixup_sparc_tls_gd_add, |
| 74 | fixup_sparc_tls_gd_call, |
| 75 | fixup_sparc_tls_ldm_hi22, |
| 76 | fixup_sparc_tls_ldm_lo10, |
| 77 | fixup_sparc_tls_ldm_add, |
| 78 | fixup_sparc_tls_ldm_call, |
| 79 | fixup_sparc_tls_ldo_hix22, |
| 80 | fixup_sparc_tls_ldo_lox10, |
| 81 | fixup_sparc_tls_ldo_add, |
| 82 | fixup_sparc_tls_ie_hi22, |
| 83 | fixup_sparc_tls_ie_lo10, |
| 84 | fixup_sparc_tls_ie_ld, |
| 85 | fixup_sparc_tls_ie_ldx, |
| 86 | fixup_sparc_tls_ie_add, |
| 87 | fixup_sparc_tls_le_hix22, |
| 88 | fixup_sparc_tls_le_lox10, |
| 89 | |
Venkatraman Govindaraju | 5f1cce5 | 2014-01-05 02:13:48 +0000 | [diff] [blame] | 90 | // Marker |
| 91 | LastTargetFixupKind, |
| 92 | NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind |
| 93 | }; |
Alexander Kornienko | f00654e | 2015-06-23 09:49:53 +0000 | [diff] [blame] | 94 | } |
| 95 | } |
Venkatraman Govindaraju | 5f1cce5 | 2014-01-05 02:13:48 +0000 | [diff] [blame] | 96 | |
| 97 | #endif |