LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Macros | Functions
AArch64BranchFixupPass.cpp File Reference
#include "AArch64.h"
#include "AArch64InstrInfo.h"
#include "Utils/AArch64BaseInfo.h"
#include "llvm/CodeGen/MachineFunctionPass.h"
#include "llvm/CodeGen/MachineInstrBuilder.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/Format.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/ADT/Statistic.h"
Include dependency graph for AArch64BranchFixupPass.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "aarch64-branch-fixup"
 

Functions

 STATISTIC (NumSplit,"Number of uncond branches inserted")
 
 STATISTIC (NumCBrFixed,"Number of cond branches fixed")
 
static unsigned UnknownPadding (unsigned LogAlign, unsigned KnownBits)
 
static bool BBHasFallthrough (MachineBasicBlock *MBB)
 

Macro Definition Documentation

#define DEBUG_TYPE   "aarch64-branch-fixup"

Definition at line 15 of file AArch64BranchFixupPass.cpp.

Function Documentation

static bool BBHasFallthrough ( MachineBasicBlock MBB)
static

Return true if the specified basic block can fallthrough into the block immediately after it.

Definition at line 237 of file AArch64BranchFixupPass.cpp.

References llvm::MachineFunction::end(), llvm::MachineBasicBlock::getParent(), I, llvm::next(), llvm::MachineBasicBlock::succ_begin(), and llvm::MachineBasicBlock::succ_end().

STATISTIC ( NumSplit  ,
"Number of uncond branches inserted"   
)
STATISTIC ( NumCBrFixed  ,
"Number of cond branches fixed"   
)
static unsigned UnknownPadding ( unsigned  LogAlign,
unsigned  KnownBits 
)
inlinestatic

Return the worst case padding that could result from unknown offset bits. This does not include alignment padding caused by known offset bits.

Parameters
LogAlignlog2(alignment)
KnownBitsNumber of known low offset bits.

Definition at line 36 of file AArch64BranchFixupPass.cpp.