mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-05-13 17:38:39 +00:00
Add support to codegen for getresult instructions with undef operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50180 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
6829157f49
commit
3dc34f682d
@ -3311,8 +3311,13 @@ void SelectionDAGLowering::visitCall(CallInst &I) {
|
|||||||
|
|
||||||
|
|
||||||
void SelectionDAGLowering::visitGetResult(GetResultInst &I) {
|
void SelectionDAGLowering::visitGetResult(GetResultInst &I) {
|
||||||
|
if (UndefValue *UV = dyn_cast<UndefValue>(I.getOperand(0))) {
|
||||||
|
SDOperand Undef = DAG.getNode(ISD::UNDEF, TLI.getValueType(I.getType()));
|
||||||
|
setValue(&I, Undef);
|
||||||
|
} else {
|
||||||
SDOperand Call = getValue(I.getOperand(0));
|
SDOperand Call = getValue(I.getOperand(0));
|
||||||
setValue(&I, SDOperand(Call.Val, I.getIndex()));
|
setValue(&I, SDOperand(Call.Val, I.getIndex()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
6
test/CodeGen/Generic/getresult-undef.ll
Normal file
6
test/CodeGen/Generic/getresult-undef.ll
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
; RUN: llvm-as < %s | llc
|
||||||
|
|
||||||
|
define double @foo() {
|
||||||
|
%t = getresult {double, double} undef, 1
|
||||||
|
ret double %t
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user