|
LLVM
3.7.0
|
#include "Mips.h"#include "MCTargetDesc/MipsBaseInfo.h"#include "Mips16InstrInfo.h"#include "MipsMachineFunction.h"#include "MipsTargetMachine.h"#include "llvm/ADT/Statistic.h"#include "llvm/CodeGen/MachineBasicBlock.h"#include "llvm/CodeGen/MachineConstantPool.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/IR/Function.h"#include "llvm/IR/InstIterator.h"#include "llvm/Support/CommandLine.h"#include "llvm/Support/Debug.h"#include "llvm/Support/Format.h"#include "llvm/Support/MathExtras.h"#include "llvm/Support/raw_ostream.h"#include "llvm/Target/TargetInstrInfo.h"#include "llvm/Target/TargetMachine.h"#include "llvm/Target/TargetRegisterInfo.h"#include <algorithm>Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "mips-constant-islands" |
Functions | |
| STATISTIC (NumCPEs,"Number of constpool entries") | |
| STATISTIC (NumSplit,"Number of uncond branches inserted") | |
| STATISTIC (NumCBrFixed,"Number of cond branches fixed") | |
| STATISTIC (NumUBrFixed,"Number of uncond branches fixed") | |
| static unsigned int | branchTargetOperand (MachineInstr *MI) |
| static bool | isUnconditionalBranch (unsigned int Opcode) |
| static unsigned int | longformBranchOpcode (unsigned int Opcode) |
| static unsigned int | branchMaxOffsets (unsigned int Opcode) |
| static bool | BBHasFallthrough (MachineBasicBlock *MBB) |
| BBHasFallthrough - Return true if the specified basic block can fallthrough into the block immediately after it. More... | |
| static bool | CompareMBBNumbers (const MachineBasicBlock *LHS, const MachineBasicBlock *RHS) |
| CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID. More... | |
| static bool | BBIsJumpedOver (MachineBasicBlock *MBB) |
| BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor. More... | |
| static unsigned | getUnconditionalBrDisp (int Opc) |
| getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction. More... | |
Variables | |
| static cl::opt< bool > | AlignConstantIslands ("mips-align-constant-islands", cl::Hidden, cl::init(true), cl::desc("Align constant islands in code")) |
| static cl::opt< int > | ConstantIslandsSmallOffset ("mips-constant-islands-small-offset", cl::init(0), cl::desc("Make small offsets be this amount for testing purposes"), cl::Hidden) |
| static cl::opt< bool > | NoLoadRelaxation ("mips-constant-islands-no-load-relaxation", cl::init(false), cl::desc("Don't relax loads to long loads - for testing purposes"), cl::Hidden) |
| #define DEBUG_TYPE "mips-constant-islands" |
Definition at line 49 of file MipsConstantIslandPass.cpp.
|
static |
BBHasFallthrough - Return true if the specified basic block can fallthrough into the block immediately after it.
Definition at line 599 of file MipsConstantIslandPass.cpp.
References llvm::MachineFunction::end(), llvm::MachineBasicBlock::getParent(), I, llvm::MachineBasicBlock::succ_begin(), and llvm::MachineBasicBlock::succ_end().
|
static |
BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor.
Definition at line 1030 of file MipsConstantIslandPass.cpp.
References llvm::MachineBasicBlock::back(), llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), llvm::MachineBasicBlock::pred_begin(), llvm::MachineBasicBlock::pred_size(), llvm::MachineBasicBlock::succ_begin(), and llvm::MachineBasicBlock::succ_size().
Definition at line 139 of file MipsConstantIslandPass.cpp.
References llvm::tgtok::Bits, and llvm_unreachable.
|
static |
Definition at line 81 of file MipsConstantIslandPass.cpp.
References llvm::MachineInstr::getOpcode(), and llvm_unreachable.
|
static |
CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID.
Definition at line 843 of file MipsConstantIslandPass.cpp.
References llvm::MachineBasicBlock::getNumber().
getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction.
Definition at line 1179 of file MipsConstantIslandPass.cpp.
Definition at line 100 of file MipsConstantIslandPass.cpp.
Definition at line 110 of file MipsConstantIslandPass.cpp.
References llvm_unreachable.
| STATISTIC | ( | NumCPEs | , |
| "Number of constpool entries" | |||
| ) |
| STATISTIC | ( | NumSplit | , |
| "Number of uncond branches inserted" | |||
| ) |
| STATISTIC | ( | NumCBrFixed | , |
| "Number of cond branches fixed" | |||
| ) |
| STATISTIC | ( | NumUBrFixed | , |
| "Number of uncond branches fixed" | |||
| ) |
|
static |
|
static |
1.8.6