LLVM: llvm::BasicBlockInfo Struct Reference (original) (raw)
BasicBlockInfo - Information about the offset and size of a single basic block. More...
#include "[Target/ARM/ARMBasicBlockInfo.h](ARMBasicBlockInfo%5F8h%5Fsource.html)"
| Public Member Functions | |
|---|---|
| BasicBlockInfo ()=default | |
| unsigned | internalKnownBits () const |
| Compute the number of known offset bits internally to this block. | |
| unsigned | postOffset (Align Alignment=Align(1)) const |
| Compute the offset immediately following this block. | |
| unsigned | postKnownBits (Align Align=llvm::Align(1)) const |
| Compute the number of known low bits of postOffset. |
| Public Attributes | |
|---|---|
| unsigned | Offset = 0 |
| Offset - Distance from the beginning of the function to the beginning of this basic block. | |
| unsigned | Size = 0 |
| Size - Size of the basic block in bytes. | |
| uint8_t | KnownBits = 0 |
| KnownBits - The number of low bits in Offset that are known to be exact. | |
| uint8_t | Unalign = 0 |
| Unalign - When non-zero, the block contains instructions (inline asm) of unknown size. | |
| Align | PostAlign |
| PostAlign - When > 1, the block terminator contains a .align directive, so the end of the block is aligned to PostAlign bytes. |
BasicBlockInfo - Information about the offset and size of a single basic block.
Definition at line 41 of file ARMBasicBlockInfo.h.
| llvm::BasicBlockInfo::BasicBlockInfo ( ) | default |
|---|
◆ internalKnownBits()
| unsigned llvm::BasicBlockInfo::internalKnownBits ( ) const | inline |
|---|
◆ postKnownBits()
Compute the number of known low bits of postOffset.
If this block contains inline asm, the number of known bits drops to the instruction alignment. An aligned terminator may increase the number of know bits. If LogAlign is given, also consider the alignment of the next block.
Definition at line 104 of file ARMBasicBlockInfo.h.
References internalKnownBits(), llvm::Log2(), and PostAlign.
◆ postOffset()
◆ KnownBits
uint8_t llvm::BasicBlockInfo::KnownBits = 0
◆ Offset
unsigned llvm::BasicBlockInfo::Offset = 0
Offset - Distance from the beginning of the function to the beginning of this basic block.
Offsets are computed assuming worst case padding before an aligned block. This means that subtracting basic block offsets always gives a conservative estimate of the real distance which may be smaller.
Because worst case padding is used, the computed offset of an aligned block may not actually be aligned.
Definition at line 51 of file ARMBasicBlockInfo.h.
Referenced by postOffset().
◆ PostAlign
Align llvm::BasicBlockInfo::PostAlign
◆ Size
◆ Unalign
uint8_t llvm::BasicBlockInfo::Unalign = 0
The documentation for this struct was generated from the following file:
- lib/Target/ARM/ARMBasicBlockInfo.h