reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

lib/Target/X86/X86SpeculativeLoadHardening.cpp
  399   LLVM_DEBUG(dbgs() << "********** " << getPassName() << " : " << MF.getName()
  405       !MF.getFunction().hasFnAttribute(Attribute::SpeculativeLoadHardening))
  408   Subtarget = &MF.getSubtarget<X86Subtarget>();
  409   MRI = &MF.getRegInfo();
  414   PS.emplace(MF, &X86::GR64_NOSPRegClass);
  416   if (MF.begin() == MF.end())
  416   if (MF.begin() == MF.end())
  422     hardenEdgesWithLFENCE(MF);
  429   MachineBasicBlock &Entry = *MF.begin();
  433   bool HasVulnerableLoad = hasVulnerableLoad(MF);
  437   SmallVector<BlockCondInfo, 16> Infos = collectBlockCondInfo(MF);
  499   canonicalizePHIOperands(MF);
  507   auto CMovs = tracePredStateThroughCFG(MF, Infos);
  517     for (MachineBasicBlock &MBB : MF) {
  532     unfoldCallAndJumpLoads(MF);
  535     auto IndirectBrCMovs = tracePredStateThroughIndirectBranches(MF);
  542   tracePredStateThroughBlocksAndHarden(MF);
  554   LLVM_DEBUG(dbgs() << "Final speculative load hardened function:\n"; MF.dump();
  555              dbgs() << "\n"; MF.verify(this));