LLVM API Documentation

SparcFixupKinds.h
Go to the documentation of this file.
00001 //===-- SparcFixupKinds.h - Sparc Specific Fixup Entries --------*- C++ -*-===//
00002 //
00003 //                     The LLVM Compiler Infrastructure
00004 //
00005 // This file is distributed under the University of Illinois Open Source
00006 // License. See LICENSE.TXT for details.
00007 //
00008 //===----------------------------------------------------------------------===//
00009 
00010 #ifndef LLVM_LIB_TARGET_SPARC_MCTARGETDESC_SPARCFIXUPKINDS_H
00011 #define LLVM_LIB_TARGET_SPARC_MCTARGETDESC_SPARCFIXUPKINDS_H
00012 
00013 #include "llvm/MC/MCFixup.h"
00014 
00015 namespace llvm {
00016   namespace Sparc {
00017     enum Fixups {
00018       // fixup_sparc_call30 - 30-bit PC relative relocation for call
00019       fixup_sparc_call30 = FirstTargetFixupKind,
00020 
00021       /// fixup_sparc_br22 - 22-bit PC relative relocation for
00022       /// branches
00023       fixup_sparc_br22,
00024 
00025       /// fixup_sparc_br19 - 19-bit PC relative relocation for
00026       /// branches on icc/xcc
00027       fixup_sparc_br19,
00028 
00029       /// fixup_sparc_bpr  - 16-bit fixup for bpr
00030       fixup_sparc_br16_2,
00031       fixup_sparc_br16_14,
00032 
00033       /// fixup_sparc_hi22  - 22-bit fixup corresponding to %hi(foo)
00034       /// for sethi
00035       fixup_sparc_hi22,
00036 
00037       /// fixup_sparc_lo10  - 10-bit fixup corresponding to %lo(foo)
00038       fixup_sparc_lo10,
00039 
00040       /// fixup_sparc_h44  - 22-bit fixup corresponding to %h44(foo)
00041       fixup_sparc_h44,
00042 
00043       /// fixup_sparc_m44  - 10-bit fixup corresponding to %m44(foo)
00044       fixup_sparc_m44,
00045 
00046       /// fixup_sparc_l44  - 12-bit fixup corresponding to %l44(foo)
00047       fixup_sparc_l44,
00048 
00049       /// fixup_sparc_hh  -  22-bit fixup corresponding to %hh(foo)
00050       fixup_sparc_hh,
00051 
00052       /// fixup_sparc_hm  -  10-bit fixup corresponding to %hm(foo)
00053       fixup_sparc_hm,
00054 
00055       /// fixup_sparc_pc22 - 22-bit fixup corresponding to %pc22(foo)
00056       fixup_sparc_pc22,
00057 
00058       /// fixup_sparc_pc10 - 10-bit fixup corresponding to %pc10(foo)
00059       fixup_sparc_pc10,
00060 
00061       /// fixup_sparc_got22 - 22-bit fixup corresponding to %got22(foo)
00062       fixup_sparc_got22,
00063 
00064       /// fixup_sparc_got10 - 10-bit fixup corresponding to %got10(foo)
00065       fixup_sparc_got10,
00066 
00067       /// fixup_sparc_wplt30
00068       fixup_sparc_wplt30,
00069 
00070       /// fixups for Thread Local Storage
00071       fixup_sparc_tls_gd_hi22,
00072       fixup_sparc_tls_gd_lo10,
00073       fixup_sparc_tls_gd_add,
00074       fixup_sparc_tls_gd_call,
00075       fixup_sparc_tls_ldm_hi22,
00076       fixup_sparc_tls_ldm_lo10,
00077       fixup_sparc_tls_ldm_add,
00078       fixup_sparc_tls_ldm_call,
00079       fixup_sparc_tls_ldo_hix22,
00080       fixup_sparc_tls_ldo_lox10,
00081       fixup_sparc_tls_ldo_add,
00082       fixup_sparc_tls_ie_hi22,
00083       fixup_sparc_tls_ie_lo10,
00084       fixup_sparc_tls_ie_ld,
00085       fixup_sparc_tls_ie_ldx,
00086       fixup_sparc_tls_ie_add,
00087       fixup_sparc_tls_le_hix22,
00088       fixup_sparc_tls_le_lox10,
00089 
00090       // Marker
00091       LastTargetFixupKind,
00092       NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind
00093     };
00094   }
00095 }
00096 
00097 #endif