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