63 lines
1.9 KiB
C
63 lines
1.9 KiB
C
|
//===-- ARMRelocations.h - ARM Code Relocations -----------------*- C++ -*-===//
|
||
|
//
|
||
|
// The LLVM Compiler Infrastructure
|
||
|
//
|
||
|
// This file is distributed under the University of Illinois Open Source
|
||
|
// License. See LICENSE.TXT for details.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
//
|
||
|
// This file defines the ARM target-specific relocation types.
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
|
||
|
#ifndef ARMRELOCATIONS_H
|
||
|
#define ARMRELOCATIONS_H
|
||
|
|
||
|
#include "llvm/CodeGen/MachineRelocation.h"
|
||
|
|
||
|
namespace llvm {
|
||
|
namespace ARM {
|
||
|
enum RelocationType {
|
||
|
// reloc_arm_absolute - Absolute relocation, just add the relocated value
|
||
|
// to the value already in memory.
|
||
|
reloc_arm_absolute,
|
||
|
|
||
|
// reloc_arm_relative - PC relative relocation, add the relocated value to
|
||
|
// the value already in memory, after we adjust it for where the PC is.
|
||
|
reloc_arm_relative,
|
||
|
|
||
|
// reloc_arm_cp_entry - PC relative relocation for constpool_entry's whose
|
||
|
// addresses are kept locally in a map.
|
||
|
reloc_arm_cp_entry,
|
||
|
|
||
|
// reloc_arm_vfp_cp_entry - Same as reloc_arm_cp_entry except the offset
|
||
|
// should be divided by 4.
|
||
|
reloc_arm_vfp_cp_entry,
|
||
|
|
||
|
// reloc_arm_machine_cp_entry - Relocation of a ARM machine constantpool
|
||
|
// entry.
|
||
|
reloc_arm_machine_cp_entry,
|
||
|
|
||
|
// reloc_arm_jt_base - PC relative relocation for jump tables whose
|
||
|
// addresses are kept locally in a map.
|
||
|
reloc_arm_jt_base,
|
||
|
|
||
|
// reloc_arm_pic_jt - PIC jump table entry relocation: dest bb - jt base.
|
||
|
reloc_arm_pic_jt,
|
||
|
|
||
|
// reloc_arm_branch - Branch address relocation.
|
||
|
reloc_arm_branch,
|
||
|
|
||
|
// reloc_arm_movt - MOVT immediate relocation.
|
||
|
reloc_arm_movt,
|
||
|
|
||
|
// reloc_arm_movw - MOVW immediate relocation.
|
||
|
reloc_arm_movw
|
||
|
};
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif
|
||
|
|