LLVM
8.0.1
lib
Target
RISCV
MCTargetDesc
RISCVFixupKinds.h
Go to the documentation of this file.
1
//===-- RISCVFixupKinds.h - RISCV Specific Fixup Entries --------*- C++ -*-===//
2
//
3
// The LLVM Compiler Infrastructure
4
//
5
// This file is distributed under the University of Illinois Open Source
6
// License. See LICENSE.TXT for details.
7
//
8
//===----------------------------------------------------------------------===//
9
10
#ifndef LLVM_LIB_TARGET_RISCV_MCTARGETDESC_RISCVFIXUPKINDS_H
11
#define LLVM_LIB_TARGET_RISCV_MCTARGETDESC_RISCVFIXUPKINDS_H
12
13
#include "
llvm/MC/MCFixup.h
"
14
15
#undef RISCV
16
17
namespace
llvm
{
18
namespace
RISCV {
19
enum
Fixups
{
20
// fixup_riscv_hi20 - 20-bit fixup corresponding to hi(foo) for
21
// instructions like lui
22
fixup_riscv_hi20
=
FirstTargetFixupKind
,
23
// fixup_riscv_lo12_i - 12-bit fixup corresponding to lo(foo) for
24
// instructions like addi
25
fixup_riscv_lo12_i
,
26
// fixup_riscv_lo12_s - 12-bit fixup corresponding to lo(foo) for
27
// the S-type store instructions
28
fixup_riscv_lo12_s
,
29
// fixup_riscv_pcrel_hi20 - 20-bit fixup corresponding to pcrel_hi(foo) for
30
// instructions like auipc
31
fixup_riscv_pcrel_hi20
,
32
// fixup_riscv_pcrel_lo12_i - 12-bit fixup corresponding to pcrel_lo(foo) for
33
// instructions like addi
34
fixup_riscv_pcrel_lo12_i
,
35
// fixup_riscv_pcrel_lo12_s - 12-bit fixup corresponding to pcrel_lo(foo) for
36
// the S-type store instructions
37
fixup_riscv_pcrel_lo12_s
,
38
// fixup_riscv_jal - 20-bit fixup for symbol references in the jal
39
// instruction
40
fixup_riscv_jal
,
41
// fixup_riscv_branch - 12-bit fixup for symbol references in the branch
42
// instructions
43
fixup_riscv_branch
,
44
// fixup_riscv_rvc_jump - 11-bit fixup for symbol references in the
45
// compressed jump instruction
46
fixup_riscv_rvc_jump
,
47
// fixup_riscv_rvc_branch - 8-bit fixup for symbol references in the
48
// compressed branch instruction
49
fixup_riscv_rvc_branch
,
50
// fixup_riscv_call - A fixup representing a call attached to the auipc
51
// instruction in a pair composed of adjacent auipc+jalr instructions.
52
fixup_riscv_call
,
53
// fixup_riscv_relax - Used to generate an R_RISCV_RELAX relocation type,
54
// which indicates the linker may relax the instruction pair.
55
fixup_riscv_relax
,
56
57
// fixup_riscv_invalid - used as a sentinel and a marker, must be last fixup
58
fixup_riscv_invalid
,
59
NumTargetFixupKinds
=
fixup_riscv_invalid
-
FirstTargetFixupKind
60
};
61
}
// end namespace RISCV
62
}
// end namespace llvm
63
64
#endif
llvm
This class represents lattice values for constants.
Definition:
AllocatorList.h:24
llvm::RISCV::fixup_riscv_rvc_branch
Definition:
RISCVFixupKinds.h:49
llvm::RISCV::fixup_riscv_pcrel_hi20
Definition:
RISCVFixupKinds.h:31
llvm::RISCV::fixup_riscv_hi20
Definition:
RISCVFixupKinds.h:22
llvm::FirstTargetFixupKind
Definition:
MCFixup.h:53
llvm::RISCV::fixup_riscv_invalid
Definition:
RISCVFixupKinds.h:58
llvm::RISCV::NumTargetFixupKinds
Definition:
RISCVFixupKinds.h:59
llvm::RISCV::fixup_riscv_call
Definition:
RISCVFixupKinds.h:52
llvm::RISCV::fixup_riscv_lo12_s
Definition:
RISCVFixupKinds.h:28
llvm::RISCV::fixup_riscv_lo12_i
Definition:
RISCVFixupKinds.h:25
llvm::RISCV::fixup_riscv_pcrel_lo12_i
Definition:
RISCVFixupKinds.h:34
llvm::RISCV::fixup_riscv_rvc_jump
Definition:
RISCVFixupKinds.h:46
llvm::RISCV::fixup_riscv_relax
Definition:
RISCVFixupKinds.h:55
llvm::RISCV::fixup_riscv_jal
Definition:
RISCVFixupKinds.h:40
llvm::RISCV::fixup_riscv_pcrel_lo12_s
Definition:
RISCVFixupKinds.h:37
llvm::RISCV::fixup_riscv_branch
Definition:
RISCVFixupKinds.h:43
llvm::RISCV::Fixups
Fixups
Definition:
RISCVFixupKinds.h:19
MCFixup.h
Generated on Sun Dec 20 2020 13:57:46 for LLVM by
1.8.13