15#define DEBUG_TYPE "jitlink"
28 return "R_RISCV_BRANCH";
32 return "R_RISCV_CALL";
34 return "R_RISCV_CALL_PLT";
36 return "R_RISCV_GOT_HI20";
38 return "R_RISCV_PCREL_HI20";
40 return "R_RISCV_PCREL_LO12_I";
42 return "R_RISCV_PCREL_LO12_S";
44 return "R_RISCV_HI20";
46 return "R_RISCV_LO12_I";
48 return "R_RISCV_LO12_S";
50 return "R_RISCV_ADD8";
52 return "R_RISCV_ADD16";
54 return "R_RISCV_ADD32";
56 return "R_RISCV_ADD64";
58 return "R_RISCV_SUB8";
60 return "R_RISCV_SUB16";
62 return "R_RISCV_SUB32";
64 return "R_RISCV_SUB64";
66 return "R_RISCV_RVC_BRANCH";
68 return "R_RISCV_RVC_JUMP";
70 return "R_RISCV_SUB6";
72 return "R_RISCV_SET6";
74 return "R_RISCV_SET8";
76 return "R_RISCV_SET16";
78 return "R_RISCV_SET32";
80 return "R_RISCV_32_PCREL";
82 return "CallRelaxable";
84 return "AlignRelaxable";
@ R_RISCV_SUB32
32 bits label subtraction
@ R_RISCV_LO12_S
Low 12 bits of 32-bit pointer value relocation, used by S type instruction format.
@ R_RISCV_JAL
High 20 bits of PC-relative jump pointer value relocation.
@ R_RISCV_ADD8
8 bits label addition
@ R_RISCV_HI20
High 20 bits of 32-bit pointer value relocation.
@ R_RISCV_PCREL_LO12_I
Low 12 bits of PC relative relocation, used by I type instruction format.
@ R_RISCV_SUB8
8 bits label subtraction
@ R_RISCV_SET6
Local label assignment.
@ R_RISCV_CALL_PLT
PC relative call by PLT.
@ R_RISCV_SET32
Local label assignment.
@ R_RISCV_RVC_JUMP
11-bit PC-relative jump offset
@ R_RISCV_SUB6
6 bits label subtraction
@ R_RISCV_CALL
PC relative call.
@ CallRelaxable
An auipc/jalr pair eligible for linker relaxation.
@ R_RISCV_BRANCH
PC-relative branch pointer value relocation.
@ R_RISCV_PCREL_LO12_S
Low 12 bits of PC relative relocation, used by S type instruction format.
@ R_RISCV_32
A plain 32-bit pointer value relocation.
@ R_RISCV_RVC_BRANCH
8-bit PC-relative branch offset
@ R_RISCV_64
A plain 64-bit pointer value relocation.
@ R_RISCV_LO12_I
Low 12 bits of 32-bit pointer value relocation.
@ NegDelta32
32-bit negative delta.
@ R_RISCV_32_PCREL
32 bits PC relative relocation
@ R_RISCV_SET16
Local label assignment.
@ AlignRelaxable
Alignment requirement used by linker relaxation.
@ R_RISCV_PCREL_HI20
High 20 bits of PC relative relocation.
@ R_RISCV_ADD64
64 bits label addition
@ R_RISCV_ADD32
32 bits label addition
@ R_RISCV_GOT_HI20
PC relative GOT offset.
@ R_RISCV_SUB16
16 bits label subtraction
@ R_RISCV_SET8
Local label assignment.
@ R_RISCV_ADD16
16 bits label addition
@ R_RISCV_SUB64
64 bits label subtraction
const char * getEdgeKindName(Edge::Kind K)
Returns a string name for the given riscv edge.
const char * getGenericEdgeKindName(Edge::Kind K)
Returns the string name of the given generic edge kind, or "unknown" otherwise.
This is an optimization pass for GlobalISel generic memory operations.