|
LLVM
8.0.1
|
Namespaces | |
| ldi | |
| Fixups relating to the LDI instruction. | |
Functions | |
| void | signed_width (unsigned Width, uint64_t Value, std::string Description, const MCFixup &Fixup, MCContext *Ctx=nullptr) |
| void | unsigned_width (unsigned Width, uint64_t Value, std::string Description, const MCFixup &Fixup, MCContext *Ctx=nullptr) |
| void | adjustBranch (unsigned Size, const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| Adjusts the value of a branch target before fixup application. More... | |
| void | adjustRelativeBranch (unsigned Size, const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| Adjusts the value of a relative branch target before fixup application. More... | |
| void | fixup_call (unsigned Size, const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| 22-bit absolute fixup. More... | |
| void | fixup_7_pcrel (unsigned Size, const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| 7-bit PC-relative fixup. More... | |
| void | fixup_13_pcrel (unsigned Size, const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| 12-bit PC-relative fixup. More... | |
| void | fixup_6_adiw (const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| 6-bit fixup for the immediate operand of the ADIW family of instructions. More... | |
| void | fixup_port5 (const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
| 5-bit port number fixup on the SBIC family of instructions. More... | |
| void | fixup_port6 (const MCFixup &Fixup, uint64_t &Value, MCContext *Ctx=nullptr) |
6-bit port number fixup on the IN family of instructions. More... | |
| void | pm (uint64_t &Value) |
| Adjusts a program memory address. More... | |
| void adjust::adjustBranch | ( | unsigned | Size, |
| const MCFixup & | Fixup, | ||
| uint64_t & | Value, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
Adjusts the value of a branch target before fixup application.
Definition at line 76 of file AVRAsmBackend.cpp.
References llvm::AVR::fixups::adjustBranchTarget(), and unsigned_width().
Referenced by fixup_call().
| void adjust::adjustRelativeBranch | ( | unsigned | Size, |
| const MCFixup & | Fixup, | ||
| uint64_t & | Value, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
Adjusts the value of a relative branch target before fixup application.
Definition at line 87 of file AVRAsmBackend.cpp.
References llvm::AVR::fixups::adjustBranchTarget(), and signed_width().
Referenced by fixup_13_pcrel(), and fixup_7_pcrel().
| void adjust::fixup_13_pcrel | ( | unsigned | Size, |
| const MCFixup & | Fixup, | ||
| uint64_t & | Value, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
12-bit PC-relative fixup.
Yes, the fixup is 12 bits even though the name says otherwise.
Resolves to: 0000 kkkk kkkk kkkk Offset of 0 (so the result isn't left-shifted before application).
Definition at line 135 of file AVRAsmBackend.cpp.
References adjustRelativeBranch().
Referenced by llvm::AVRAsmBackend::adjustFixupValue(), and llvm::AVRAsmBackend::shouldForceRelocation().
6-bit fixup for the immediate operand of the ADIW family of instructions.
Resolves to: 0000 0000 kk00 kkkk
Definition at line 148 of file AVRAsmBackend.cpp.
References unsigned_width().
Referenced by llvm::AVRAsmBackend::adjustFixupValue().
| void adjust::fixup_7_pcrel | ( | unsigned | Size, |
| const MCFixup & | Fixup, | ||
| uint64_t & | Value, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
7-bit PC-relative fixup.
Resolves to: 0000 00kk kkkk k000 Offset of 0 (so the result is left shifted by 3 bits before application).
Definition at line 121 of file AVRAsmBackend.cpp.
References adjustRelativeBranch().
Referenced by llvm::AVRAsmBackend::adjustFixupValue(), and llvm::AVRAsmBackend::shouldForceRelocation().
| void adjust::fixup_call | ( | unsigned | Size, |
| const MCFixup & | Fixup, | ||
| uint64_t & | Value, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
22-bit absolute fixup.
Resolves to: 1001 kkkk 010k kkkk kkkk kkkk 111k kkkk
Offset of 0 (so the result is left shifted by 3 bits before application).
Definition at line 105 of file AVRAsmBackend.cpp.
References adjustBranch().
Referenced by llvm::AVRAsmBackend::adjustFixupValue(), and llvm::AVRAsmBackend::shouldForceRelocation().
5-bit port number fixup on the SBIC family of instructions.
Resolves to: 0000 0000 AAAA A000
Definition at line 159 of file AVRAsmBackend.cpp.
References unsigned_width().
Referenced by llvm::AVRAsmBackend::adjustFixupValue().
6-bit port number fixup on the IN family of instructions.
Resolves to: 1011 0AAd dddd AAAA
Definition at line 172 of file AVRAsmBackend.cpp.
References unsigned_width().
Referenced by llvm::AVRAsmBackend::adjustFixupValue().
| void adjust::pm | ( | uint64_t & | Value | ) |
Adjusts a program memory address.
This is a simple right-shift.
Definition at line 181 of file AVRAsmBackend.cpp.
Referenced by llvm::AVRAsmBackend::adjustFixupValue(), and llvm::Regex::match().
| void adjust::signed_width | ( | unsigned | Width, |
| uint64_t | Value, | ||
| std::string | Description, | ||
| const MCFixup & | Fixup, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
Definition at line 38 of file AVRAsmBackend.cpp.
References llvm::MCFixup::getLoc(), llvm::isIntN(), llvm_unreachable, llvm::maxIntN(), llvm::minIntN(), and llvm::to_string().
Referenced by adjustRelativeBranch().
| void adjust::unsigned_width | ( | unsigned | Width, |
| uint64_t | Value, | ||
| std::string | Description, | ||
| const MCFixup & | Fixup, | ||
| MCContext * | Ctx = nullptr |
||
| ) |
Definition at line 57 of file AVRAsmBackend.cpp.
References llvm::MCFixup::getLoc(), llvm::isUIntN(), llvm_unreachable, llvm::maxUIntN(), and llvm::to_string().
Referenced by adjustBranch(), llvm::AVRAsmBackend::adjustFixupValue(), fixup_6_adiw(), fixup_port5(), and fixup_port6().
1.8.13