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