@@ -25,21 +25,23 @@ class InputSection;
2525
2626enum class RelocAttrBits {
2727 _0 = 0 , // invalid
28- PCREL = 1 << 0 , // Value is PC-relative offset
29- ABSOLUTE = 1 << 1 , // Value is an absolute address or fixed offset
28+ BYTE1 = 1 << 0 , // 1 byte datum
29+ BYTE2 = 1 << 1 , // 2 byte datum
3030 BYTE4 = 1 << 2 , // 4 byte datum
3131 BYTE8 = 1 << 3 , // 8 byte datum
32- EXTERN = 1 << 4 , // Can have an external symbol
33- LOCAL = 1 << 5 , // Can have a local symbol
34- ADDEND = 1 << 6 , // *_ADDEND paired prefix reloc
35- SUBTRAHEND = 1 << 7 , // *_SUBTRACTOR paired prefix reloc
36- BRANCH = 1 << 8 , // Value is branch target
37- GOT = 1 << 9 , // References a symbol in the Global Offset Table
38- TLV = 1 << 10 , // References a thread-local symbol
39- LOAD = 1 << 11 , // Relaxable indirect load
40- POINTER = 1 << 12 , // Non-relaxable indirect load (pointer is taken)
41- UNSIGNED = 1 << 13 , // *_UNSIGNED relocs
42- LLVM_MARK_AS_BITMASK_ENUM (/* LargestValue*/ (1 << 14 ) - 1 ),
32+ PCREL = 1 << 4 , // Value is PC-relative offset
33+ ABSOLUTE = 1 << 5 , // Value is an absolute address or fixed offset
34+ EXTERN = 1 << 6 , // Can have an external symbol
35+ LOCAL = 1 << 7 , // Can have a local symbol
36+ ADDEND = 1 << 8 , // *_ADDEND paired prefix reloc
37+ SUBTRAHEND = 1 << 9 , // *_SUBTRACTOR paired prefix reloc
38+ BRANCH = 1 << 10 , // Value is branch target
39+ GOT = 1 << 11 , // References a symbol in the Global Offset Table
40+ TLV = 1 << 12 , // References a thread-local symbol
41+ LOAD = 1 << 13 , // Relaxable indirect load
42+ POINTER = 1 << 14 , // Non-relaxable indirect load (pointer is taken)
43+ UNSIGNED = 1 << 15 , // *_UNSIGNED relocs
44+ LLVM_MARK_AS_BITMASK_ENUM (/* LargestValue*/ (1 << 16 ) - 1 ),
4345};
4446// Note: SUBTRACTOR always pairs with UNSIGNED (a delta between two symbols).
4547
0 commit comments