diff options
| author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-04-01 02:51:21 +0000 |
|---|---|---|
| committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2016-04-01 02:51:21 +0000 |
| commit | 9d41a8f269a284cf1b08c0cd37d3c38be6f0d2a2 (patch) | |
| tree | cd5a163b2fc43feb954db2b7ff57f0444ef102e3 | |
| parent | cc7fba40fe33e7999be7bd7f5cee1ab0ef934658 (diff) | |
| download | bcm5719-llvm-9d41a8f269a284cf1b08c0cd37d3c38be6f0d2a2.tar.gz bcm5719-llvm-9d41a8f269a284cf1b08c0cd37d3c38be6f0d2a2.zip | |
Don't use an i64 return type with webkit_jscc
Re-enable an assertion enabled by Justin Lebar in rL265092. rL265092
was breaking test/CodeGen/X86/deopt-intrinsic.ll because webkit_jscc
does not like non-i64 return types. Change the test case to not do
that.
llvm-svn: 265099
| -rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp | 13 | ||||
| -rw-r--r-- | llvm/test/CodeGen/X86/deopt-intrinsic.ll | 8 |
2 files changed, 11 insertions, 10 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp index 71c015df520..e3acfd2436e 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp @@ -7446,12 +7446,13 @@ TargetLowering::LowerCallTo(TargetLowering::CallLoweringInfo &CLI) const { return std::make_pair(SDValue(), SDValue()); } - DEBUG(for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) { - assert(InVals[i].getNode() && - "LowerCall emitted a null value!"); - assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() && - "LowerCall emitted a value with the wrong type!"); - }); +#ifndef NDEBUG + for (unsigned i = 0, e = CLI.Ins.size(); i != e; ++i) { + assert(InVals[i].getNode() && "LowerCall emitted a null value!"); + assert(EVT(CLI.Ins[i].VT) == InVals[i].getValueType() && + "LowerCall emitted a value with the wrong type!"); + } +#endif SmallVector<SDValue, 4> ReturnValues; if (!CanLowerReturn) { diff --git a/llvm/test/CodeGen/X86/deopt-intrinsic.ll b/llvm/test/CodeGen/X86/deopt-intrinsic.ll index 561da932782..f9d7527e764 100644 --- a/llvm/test/CodeGen/X86/deopt-intrinsic.ll +++ b/llvm/test/CodeGen/X86/deopt-intrinsic.ll @@ -7,7 +7,7 @@ target triple = "x86_64-apple-macosx10.11.0" declare i32 @llvm.experimental.deoptimize.i32(...) declare i8 @llvm.experimental.deoptimize.i8(...) -declare webkit_jscc i16 @llvm.experimental.deoptimize.i16(...) +declare webkit_jscc i64 @llvm.experimental.deoptimize.i64(...) define i32 @caller_0() { ; CHECK-LABEL: _caller_0: @@ -44,7 +44,7 @@ entry: ret i8 %v } -define i16 @caller_2() { +define i64 @caller_2() { ; CHECK-LABEL: _caller_2: ; CHECK-NEXT: {{.+cfi.+}} ; CHECK-NEXT: ##{{.+}} @@ -59,8 +59,8 @@ define i16 @caller_2() { ; CHECK-NEXT: retq entry: - %v = call webkit_jscc i16(...) @llvm.experimental.deoptimize.i16(i32 42, float 500.0) [ "deopt"(i32 3) ] - ret i16 %v + %v = call webkit_jscc i64(...) @llvm.experimental.deoptimize.i64(i32 42, float 500.0) [ "deopt"(i32 3) ] + ret i64 %v } ; STACKMAPS: Stack Maps: callsites: |

