Index: include/llvm/CodeGen/MachineOutliner.h =================================================================== --- include/llvm/CodeGen/MachineOutliner.h +++ include/llvm/CodeGen/MachineOutliner.h @@ -142,6 +142,7 @@ /// If a target does not need this information, then this should not be /// called. void initLRU(const TargetRegisterInfo &TRI) { + assert(MBB->getParent()->getRegInfo().tracksLiveness()); LRU.init(TRI); LRU.addLiveOuts(*MBB); Index: lib/Target/AArch64/AArch64InstrInfo.cpp =================================================================== --- lib/Target/AArch64/AArch64InstrInfo.cpp +++ lib/Target/AArch64/AArch64InstrInfo.cpp @@ -5065,6 +5065,7 @@ // Check if LR is available through all of the MBB. If it's not, then set // a flag. + assert(MBB->getParent()->getRegInfo().tracksLiveness()); LiveRegUnits LRU(getRegisterInfo()); LRU.addLiveOuts(MBB);