mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
ARMEB: Fix function return type f64
Reviewed at http://reviews.llvm.org/D3968 llvm-svn: 209990
This commit is contained in:
parent
f929df2d1e
commit
6d4cce97f1
@ -8315,6 +8315,8 @@ static SDValue PerformVMOVRRDCombine(SDNode *N,
|
||||
std::min(4U, LD->getAlignment() / 2));
|
||||
|
||||
DAG.ReplaceAllUsesOfValueWith(SDValue(LD, 1), NewLD2.getValue(1));
|
||||
if (DCI.DAG.getTargetLoweringInfo().isBigEndian())
|
||||
std::swap (NewLD1, NewLD2);
|
||||
SDValue Result = DCI.CombineTo(N, NewLD1, NewLD2);
|
||||
DCI.RemoveFromWorklist(LD);
|
||||
DAG.DeleteNode(LD);
|
||||
|
12
test/CodeGen/ARM/big-endian-ret-f64.ll
Normal file
12
test/CodeGen/ARM/big-endian-ret-f64.ll
Normal file
@ -0,0 +1,12 @@
|
||||
; RUN: llc -mtriple=armebv7a-eabi %s -O0 -o - | FileCheck %s
|
||||
; RUN: llc -mtriple=armebv8a-eabi %s -O0 -o - | FileCheck %s
|
||||
|
||||
define double @fn() {
|
||||
; CHECK-LABEL: fn
|
||||
; CHECK: ldr r0, [sp]
|
||||
; CHECK: ldr r1, [sp, #4]
|
||||
%r = alloca double, align 8
|
||||
%1 = load double* %r, align 8
|
||||
ret double %1
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user