mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-02-04 11:17:31 +00:00
Use endianess dependent offsets for load/store of doubles when
using two swc/lwc instead of sdc/ldc. llvm-svn: 89826
This commit is contained in:
parent
916d90c926
commit
974ab18d0e
@ -235,6 +235,10 @@ SDNode *MipsDAGToDAGISel::SelectLoadFp64(SDValue N) {
|
||||
else
|
||||
return NULL;
|
||||
|
||||
// Choose the offsets depending on the endianess
|
||||
if (TM.getTargetData()->isBigEndian())
|
||||
std::swap(Offset0, Offset1);
|
||||
|
||||
// Instead of:
|
||||
// ldc $f0, X($3)
|
||||
// Generate:
|
||||
@ -296,6 +300,10 @@ SDNode *MipsDAGToDAGISel::SelectStoreFp64(SDValue N) {
|
||||
else
|
||||
return NULL;
|
||||
|
||||
// Choose the offsets depending on the endianess
|
||||
if (TM.getTargetData()->isBigEndian())
|
||||
std::swap(Offset0, Offset1);
|
||||
|
||||
// Instead of:
|
||||
// sdc $f0, X($3)
|
||||
// Generate:
|
||||
|
Loading…
x
Reference in New Issue
Block a user