diff options
author | Lang Hames <lhames@gmail.com> | 2014-07-25 02:29:19 +0000 |
---|---|---|
committer | Lang Hames <lhames@gmail.com> | 2014-07-25 02:29:19 +0000 |
commit | 5432649be73fba30d3014a158509c25b868d6452 (patch) | |
tree | f506655e24284b4f268653dc64b38fe90ae23be0 /llvm/lib/Target/X86/X86MCInstLower.cpp | |
parent | 2f93b448a8ca44d90b5c8d0e0c655db72093fb1b (diff) | |
download | bcm5719-llvm-5432649be73fba30d3014a158509c25b868d6452.tar.gz bcm5719-llvm-5432649be73fba30d3014a158509c25b868d6452.zip |
[X86] Clarify some stackmap shadow optimization code as based on review
feedback from Eric Christopher.
No functional change.
llvm-svn: 213917
Diffstat (limited to 'llvm/lib/Target/X86/X86MCInstLower.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86MCInstLower.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/llvm/lib/Target/X86/X86MCInstLower.cpp b/llvm/lib/Target/X86/X86MCInstLower.cpp index 4b55f00db63..96ab70a29a3 100644 --- a/llvm/lib/Target/X86/X86MCInstLower.cpp +++ b/llvm/lib/Target/X86/X86MCInstLower.cpp @@ -66,7 +66,7 @@ static void EmitNops(MCStreamer &OS, unsigned NumBytes, bool Is64Bit, namespace llvm { X86AsmPrinter::StackMapShadowTracker::StackMapShadowTracker(TargetMachine &TM) - : TM(TM), Count(false), RequiredShadowSize(0), CurrentShadowSize(0) {} + : TM(TM), InShadow(false), RequiredShadowSize(0), CurrentShadowSize(0) {} X86AsmPrinter::StackMapShadowTracker::~StackMapShadowTracker() {} @@ -80,7 +80,7 @@ namespace llvm { void X86AsmPrinter::StackMapShadowTracker::count(MCInst &Inst, const MCSubtargetInfo &STI) { - if (Count) { + if (InShadow) { SmallString<256> Code; SmallVector<MCFixup, 4> Fixups; raw_svector_ostream VecOS(Code); @@ -88,16 +88,17 @@ namespace llvm { VecOS.flush(); CurrentShadowSize += Code.size(); if (CurrentShadowSize >= RequiredShadowSize) - Count = false; // The shadow is big enough. Stop counting. + InShadow = false; // The shadow is big enough. Stop counting. } } void X86AsmPrinter::StackMapShadowTracker::emitShadowPadding( MCStreamer &OutStreamer, const MCSubtargetInfo &STI) { - if (Count && CurrentShadowSize < RequiredShadowSize) + if (InShadow && CurrentShadowSize < RequiredShadowSize) { + InShadow = false; EmitNops(OutStreamer, RequiredShadowSize - CurrentShadowSize, TM.getSubtarget<X86Subtarget>().is64Bit(), STI); - Count = false; + } } void X86AsmPrinter::EmitAndCountInstruction(MCInst &Inst) { |