1262261Sdim//===-- SparcFixupKinds.h - Sparc Specific Fixup Entries --------*- C++ -*-===// 2262261Sdim// 3262261Sdim// The LLVM Compiler Infrastructure 4262261Sdim// 5262261Sdim// This file is distributed under the University of Illinois Open Source 6262261Sdim// License. See LICENSE.TXT for details. 7262261Sdim// 8262261Sdim//===----------------------------------------------------------------------===// 9262261Sdim 10262261Sdim#ifndef LLVM_SPARC_FIXUPKINDS_H 11262261Sdim#define LLVM_SPARC_FIXUPKINDS_H 12262261Sdim 13262261Sdim#include "llvm/MC/MCFixup.h" 14262261Sdim 15262261Sdimnamespace llvm { 16262261Sdim namespace Sparc { 17262261Sdim enum Fixups { 18262261Sdim // fixup_sparc_call30 - 30-bit PC relative relocation for call 19262261Sdim fixup_sparc_call30 = FirstTargetFixupKind, 20262261Sdim 21262261Sdim /// fixup_sparc_br22 - 22-bit PC relative relocation for 22262261Sdim /// branches 23262261Sdim fixup_sparc_br22, 24262261Sdim 25262261Sdim /// fixup_sparc_br19 - 19-bit PC relative relocation for 26262261Sdim /// branches on icc/xcc 27262261Sdim fixup_sparc_br19, 28262261Sdim 29262261Sdim /// fixup_sparc_hi22 - 22-bit fixup corresponding to %hi(foo) 30262261Sdim /// for sethi 31262261Sdim fixup_sparc_hi22, 32262261Sdim 33262261Sdim /// fixup_sparc_lo10 - 10-bit fixup corresponding to %lo(foo) 34262261Sdim fixup_sparc_lo10, 35262261Sdim 36262261Sdim /// fixup_sparc_h44 - 22-bit fixup corresponding to %h44(foo) 37262261Sdim fixup_sparc_h44, 38262261Sdim 39262261Sdim /// fixup_sparc_m44 - 10-bit fixup corresponding to %m44(foo) 40262261Sdim fixup_sparc_m44, 41262261Sdim 42262261Sdim /// fixup_sparc_l44 - 12-bit fixup corresponding to %l44(foo) 43262261Sdim fixup_sparc_l44, 44262261Sdim 45262261Sdim /// fixup_sparc_hh - 22-bit fixup corresponding to %hh(foo) 46262261Sdim fixup_sparc_hh, 47262261Sdim 48262261Sdim /// fixup_sparc_hm - 10-bit fixup corresponding to %hm(foo) 49262261Sdim fixup_sparc_hm, 50262261Sdim 51262261Sdim /// fixup_sparc_pc22 - 22-bit fixup corresponding to %pc22(foo) 52262261Sdim fixup_sparc_pc22, 53262261Sdim 54262261Sdim /// fixup_sparc_pc10 - 10-bit fixup corresponding to %pc10(foo) 55262261Sdim fixup_sparc_pc10, 56262261Sdim 57262261Sdim /// fixup_sparc_got22 - 22-bit fixup corresponding to %got22(foo) 58262261Sdim fixup_sparc_got22, 59262261Sdim 60262261Sdim /// fixup_sparc_got10 - 10-bit fixup corresponding to %got10(foo) 61262261Sdim fixup_sparc_got10, 62262261Sdim 63262261Sdim /// fixup_sparc_wplt30 64262261Sdim fixup_sparc_wplt30, 65262261Sdim 66262261Sdim /// fixups for Thread Local Storage 67262261Sdim fixup_sparc_tls_gd_hi22, 68262261Sdim fixup_sparc_tls_gd_lo10, 69262261Sdim fixup_sparc_tls_gd_add, 70262261Sdim fixup_sparc_tls_gd_call, 71262261Sdim fixup_sparc_tls_ldm_hi22, 72262261Sdim fixup_sparc_tls_ldm_lo10, 73262261Sdim fixup_sparc_tls_ldm_add, 74262261Sdim fixup_sparc_tls_ldm_call, 75262261Sdim fixup_sparc_tls_ldo_hix22, 76262261Sdim fixup_sparc_tls_ldo_lox10, 77262261Sdim fixup_sparc_tls_ldo_add, 78262261Sdim fixup_sparc_tls_ie_hi22, 79262261Sdim fixup_sparc_tls_ie_lo10, 80262261Sdim fixup_sparc_tls_ie_ld, 81262261Sdim fixup_sparc_tls_ie_ldx, 82262261Sdim fixup_sparc_tls_ie_add, 83262261Sdim fixup_sparc_tls_le_hix22, 84262261Sdim fixup_sparc_tls_le_lox10, 85262261Sdim 86262261Sdim // Marker 87262261Sdim LastTargetFixupKind, 88262261Sdim NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind 89262261Sdim }; 90262261Sdim } 91262261Sdim} 92262261Sdim 93262261Sdim#endif 94