|
LLVM 22.0.0git
|
#include "CSKY.h"#include "CSKYConstantPoolValue.h"#include "CSKYMachineFunctionInfo.h"#include "CSKYSubtarget.h"#include "llvm/ADT/STLExtras.h"#include "llvm/ADT/SmallSet.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/MachineFrameInfo.h"#include "llvm/CodeGen/MachineFunction.h"#include "llvm/CodeGen/MachineFunctionPass.h"#include "llvm/CodeGen/MachineInstr.h"#include "llvm/CodeGen/MachineInstrBuilder.h"#include "llvm/CodeGen/MachineOperand.h"#include "llvm/CodeGen/MachineRegisterInfo.h"#include "llvm/Config/llvm-config.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/CommandLine.h"#include "llvm/Support/Compiler.h"#include "llvm/Support/Debug.h"#include "llvm/Support/ErrorHandling.h"#include "llvm/Support/Format.h"#include "llvm/Support/MathExtras.h"#include "llvm/Support/raw_ostream.h"#include <algorithm>#include <cassert>#include <cstdint>#include <iterator>#include <vector>Go to the source code of this file.
Macros | |
| #define | DEBUG_TYPE "CSKY-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 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 "CSKY-constant-islands" |
Definition at line 59 of file CSKYConstantIslandPass.cpp.
|
static |
|
static |
BBIsJumpedOver - Return true of the specified basic block's only predecessor unconditionally branches to its only successor.
Definition at line 794 of file CSKYConstantIslandPass.cpp.
References llvm::MachineOperand::getMBB(), llvm::MachineInstr::getOpcode(), llvm::MachineInstr::getOperand(), and MBB.
|
static |
CompareMBBNumbers - Little predicate function to sort the WaterList by MBB ID.
Definition at line 606 of file CSKYConstantIslandPass.cpp.
|
inlinestatic |
getUnconditionalBrDisp - Returns the maximum displacement that can fit in the specific unconditional branch instruction.
Definition at line 885 of file CSKYConstantIslandPass.cpp.
References llvm_unreachable, and Opc.
| 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" | ) |
References llvm::Offset, and Size.