Index: lib/Target/SystemZ/SystemZElimCompare.cpp =================================================================== --- lib/Target/SystemZ/SystemZElimCompare.cpp +++ lib/Target/SystemZ/SystemZElimCompare.cpp @@ -500,6 +500,9 @@ } bool SystemZElimCompare::runOnMachineFunction(MachineFunction &F) { + if (skipFunction(*F.getFunction())) + return false; + TII = static_cast(F.getSubtarget().getInstrInfo()); TRI = &TII->getRegisterInfo(); Index: lib/Target/SystemZ/SystemZLDCleanup.cpp =================================================================== --- lib/Target/SystemZ/SystemZLDCleanup.cpp +++ lib/Target/SystemZ/SystemZLDCleanup.cpp @@ -64,6 +64,9 @@ } bool SystemZLDCleanup::runOnMachineFunction(MachineFunction &F) { + if (skipFunction(*F.getFunction())) + return false; + TII = static_cast(F.getSubtarget().getInstrInfo()); MF = &F; Index: lib/Target/SystemZ/SystemZShortenInst.cpp =================================================================== --- lib/Target/SystemZ/SystemZShortenInst.cpp +++ lib/Target/SystemZ/SystemZShortenInst.cpp @@ -268,6 +268,9 @@ } bool SystemZShortenInst::runOnMachineFunction(MachineFunction &F) { + if (skipFunction(*F.getFunction())) + return false; + const SystemZSubtarget &ST = F.getSubtarget(); TII = ST.getInstrInfo(); TRI = ST.getRegisterInfo();