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