blob: 005a0242dc902a8c8f88bf825a7d5bbc3115f6be [file] [log] [blame]
Venkatraman Govindaraju5f1cce52014-01-05 02:13:48 +00001//===-- 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
10#ifndef LLVM_SPARC_FIXUPKINDS_H
11#define LLVM_SPARC_FIXUPKINDS_H
12
13#include "llvm/MC/MCFixup.h"
14
15namespace 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 Govindarajub73aeca2014-01-06 01:22:54 +000025 /// fixup_sparc_br19 - 19-bit PC relative relocation for
Venkatraman Govindaraju5f1cce52014-01-05 02:13:48 +000026 /// branches on icc/xcc
27 fixup_sparc_br19,
28
Venkatraman Govindarajub73aeca2014-01-06 01:22:54 +000029 /// fixup_sparc_hi22 - 22-bit fixup corresponding to %hi(foo)
30 /// for sethi
31 fixup_sparc_hi22,
32
33 /// fixup_sparc_lo10 - 10-bit fixup corresponding to %lo(foo)
34 fixup_sparc_lo10,
35
36 /// fixup_sparc_h44 - 22-bit fixup corresponding to %h44(foo)
37 fixup_sparc_h44,
38
39 /// fixup_sparc_m44 - 10-bit fixup corresponding to %m44(foo)
40 fixup_sparc_m44,
41
42 /// fixup_sparc_l44 - 12-bit fixup corresponding to %l44(foo)
43 fixup_sparc_l44,
44
45 /// fixup_sparc_hh - 22-bit fixup corresponding to %hh(foo)
46 fixup_sparc_hh,
47
48 /// fixup_sparc_hm - 10-bit fixup corresponding to %hm(foo)
49 fixup_sparc_hm,
50
Venkatraman Govindaraju104643d2014-02-07 04:24:35 +000051 /// fixup_sparc_pc22 - 22-bit fixup corresponding to %pc22(foo)
52 fixup_sparc_pc22,
53
54 /// fixup_sparc_pc10 - 10-bit fixup corresponding to %pc10(foo)
55 fixup_sparc_pc10,
56
57 /// fixup_sparc_got22 - 22-bit fixup corresponding to %got22(foo)
58 fixup_sparc_got22,
59
60 /// fixup_sparc_got10 - 10-bit fixup corresponding to %got10(foo)
61 fixup_sparc_got10,
62
63 /// fixup_sparc_wplt30
64 fixup_sparc_wplt30,
65
Venkatraman Govindarajufd075002014-02-07 05:54:20 +000066 /// fixups for Thread Local Storage
67 fixup_sparc_tls_gd_hi22,
68 fixup_sparc_tls_gd_lo10,
69 fixup_sparc_tls_gd_add,
70 fixup_sparc_tls_gd_call,
71 fixup_sparc_tls_ldm_hi22,
72 fixup_sparc_tls_ldm_lo10,
73 fixup_sparc_tls_ldm_add,
74 fixup_sparc_tls_ldm_call,
75 fixup_sparc_tls_ldo_hix22,
76 fixup_sparc_tls_ldo_lox10,
77 fixup_sparc_tls_ldo_add,
78 fixup_sparc_tls_ie_hi22,
79 fixup_sparc_tls_ie_lo10,
80 fixup_sparc_tls_ie_ld,
81 fixup_sparc_tls_ie_ldx,
82 fixup_sparc_tls_ie_add,
83 fixup_sparc_tls_le_hix22,
84 fixup_sparc_tls_le_lox10,
85
Venkatraman Govindaraju5f1cce52014-01-05 02:13:48 +000086 // Marker
87 LastTargetFixupKind,
88 NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind
89 };
90 }
91}
92
93#endif