[llvm] 1b20908 - [X86] Return Op instead of SDValue() for lowering flags_read/write intrinsics

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 25 23:17:06 PST 2019


Author: Craig Topper
Date: 2019-11-25T23:13:30-08:00
New Revision: 1b20908334847f4dc7b283f0493f4c59f1c62858

URL: https://github.com/llvm/llvm-project/commit/1b20908334847f4dc7b283f0493f4c59f1c62858
DIFF: https://github.com/llvm/llvm-project/commit/1b20908334847f4dc7b283f0493f4c59f1c62858.diff

LOG: [X86] Return Op instead of SDValue() for lowering flags_read/write intrinsics

Returning SDValue() means we didn't handle it and the common
code should try to expand it. But its a target intrinsic so
expanding won't do anything and just leave the node alone. But
it will print confusing debug messages.

By returning Op we tell the common code that the node is legal
and shouldn't receive any further processing.

Added: 
    

Modified: 
    llvm/lib/Target/X86/X86ISelLowering.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp
index 33f50e518bbe..c3861adf0912 100644
--- a/llvm/lib/Target/X86/X86ISelLowering.cpp
+++ b/llvm/lib/Target/X86/X86ISelLowering.cpp
@@ -24105,7 +24105,7 @@ static SDValue LowerINTRINSIC_W_CHAIN(SDValue Op, const X86Subtarget &Subtarget,
       MFI.setHasCopyImplyingStackAdjustment(true);
       // Don't do anything here, we will expand these intrinsics out later
       // during FinalizeISel in EmitInstrWithCustomInserter.
-      return SDValue();
+      return Op;
     }
     case Intrinsic::x86_lwpins32:
     case Intrinsic::x86_lwpins64:


        


More information about the llvm-commits mailing list