1 //===-- MSP430FixupKinds.h - MSP430 Specific Fixup Entries ------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #ifndef LLVM_LIB_TARGET_MSP430_MCTARGETDESC_MSP430FIXUPKINDS_H 10 #define LLVM_LIB_TARGET_MSP430_MCTARGETDESC_MSP430FIXUPKINDS_H 11 12 #include "llvm/MC/MCFixup.h" 13 14 #undef MSP430 15 16 namespace llvm { 17 namespace MSP430 { 18 19 // This table must be in the same order of 20 // MCFixupKindInfo Infos[MSP430::NumTargetFixupKinds] 21 // in MSP430AsmBackend.cpp. 22 // 23 enum Fixups { 24 // A 32 bit absolute fixup. 25 fixup_32 = FirstTargetFixupKind, 26 // A 10 bit PC relative fixup. 27 fixup_10_pcrel, 28 // A 16 bit absolute fixup. 29 fixup_16, 30 // A 16 bit PC relative fixup. 31 fixup_16_pcrel, 32 // A 16 bit absolute fixup for byte operations. 33 fixup_16_byte, 34 // A 16 bit PC relative fixup for command address. 35 fixup_16_pcrel_byte, 36 // A 10 bit PC relative fixup for complicated polymorphs. 37 fixup_2x_pcrel, 38 // A 16 bit relaxable fixup. 39 fixup_rl_pcrel, 40 // A 8 bit absolute fixup. 41 fixup_8, 42 // A 32 bit symbol difference fixup. 43 fixup_sym_diff, 44 45 // Marker 46 LastTargetFixupKind, 47 NumTargetFixupKinds = LastTargetFixupKind - FirstTargetFixupKind 48 }; 49 } // end namespace MSP430 50 } // end namespace llvm 51 52 #endif 53