[IRTranslator] Update getOrCreateBB API to use references.
A null basic block is invalid, so just pass a reference.
llvm-svn: 263260
diff --git a/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp b/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
index 4ba21e7..3e0c0ec 100644
--- a/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+++ b/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
@@ -51,8 +51,8 @@
return ValReg;
}
-MachineBasicBlock &IRTranslator::getOrCreateBB(const BasicBlock *BB) {
- MachineBasicBlock *&MBB = BBToMBB[BB];
+MachineBasicBlock &IRTranslator::getOrCreateBB(const BasicBlock &BB) {
+ MachineBasicBlock *&MBB = BBToMBB[&BB];
if (!MBB) {
MachineFunction &MF = MIRBuilder.getMF();
MBB = MF.CreateMachineBasicBlock();
@@ -111,7 +111,7 @@
MIRBuilder.setFunction(MF);
MRI = &MF.getRegInfo();
// Setup the arguments.
- MachineBasicBlock &MBB = getOrCreateBB(&F.front());
+ MachineBasicBlock &MBB = getOrCreateBB(F.front());
MIRBuilder.setBasicBlock(MBB);
SmallVector<unsigned, 8> VRegArgs;
for (const Argument &Arg: F.args())
@@ -122,7 +122,7 @@
report_fatal_error("Unable to lower arguments");
for (const BasicBlock &BB: F) {
- MachineBasicBlock &MBB = getOrCreateBB(&BB);
+ MachineBasicBlock &MBB = getOrCreateBB(BB);
MIRBuilder.setBasicBlock(MBB);
for (const Instruction &Inst: BB) {
bool Succeeded = translate(Inst);