|
LLVM 24.0.0git
|
#include "Mips.h"#include "Mips16InstrInfo.h"#include "MipsMachineFunction.h"#include "MipsSubtarget.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallVector.h"#include "llvm/ADT/Statistic.h"#include "llvm/ADT/StringRef.h"#include "llvm/CodeGen/MachineBasicBlock.h"#include "llvm/CodeGen/MachineConstantPool.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineFunctionAnalysisManager.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineInstr.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineOperand.h"#include "llvm/CodeGen/MachinePassManager.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/Config/llvm-config.h"#include "llvm/IR/Analysis.h"#include "llvm/IR/Constants.h"#include "llvm/IR/DataLayout.h"#include "llvm/IR/DebugLoc.h"#include "llvm/IR/Function.h"#include "llvm/IR/Type.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/Debug.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Support/Format.h"#include "llvm/Support/raw_ostream.h"#include <cassert>#include <cstdint>#include <iterator>#include <vector>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 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. | |
| static bool | CompareMBBNumbers (const MachineBasicBlock *LHS, const MachineBasicBlock *RHS) |
| CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID. | |
| static bool | BBIsJumpedOver (MachineBasicBlock *MBB) |
| BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor. | |
| static unsigned | getUnconditionalBrDisp (int Opc) |
| getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction. | |
| #define DEBUG_TYPE "mips-constant-islands" |
Definition at line 59 of file MipsConstantIslandPass.cpp.
|
static |
BBHasFallthrough - Return true if the specified basic block can fallthrough into the block immediately after it.
Definition at line 568 of file MipsConstantIslandPass.cpp.
References llvm::is_contained(), MBB, and MBBI.
|
static |
BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor.
Definition at line 976 of file MipsConstantIslandPass.cpp.
References llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), MBB, and Pred.
Definition at line 112 of file MipsConstantIslandPass.cpp.
References llvm_unreachable.
|
static |
Definition at line 66 of file MipsConstantIslandPass.cpp.
References llvm_unreachable, and MI.
|
static |
CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID.
Definition at line 793 of file MipsConstantIslandPass.cpp.
|
inlinestatic |
getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction.
Definition at line 1122 of file MipsConstantIslandPass.cpp.
References Opc.
Definition at line 85 of file MipsConstantIslandPass.cpp.
References llvm_unreachable.
| STATISTIC | ( | NumCBrFixed | , |
| "Number of cond branches fixed" | ) |
| STATISTIC | ( | NumCPEs | , |
| "Number of constpool entries" | ) |
| STATISTIC | ( | NumSplit | , |
| "Number of uncond branches inserted" | ) |
| STATISTIC | ( | NumUBrFixed | , |
| "Number of uncond branches fixed" | ) |