mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-29 06:30:39 +00:00
Proper FP extloads
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76028 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
299dc78d67
commit
85c5c3f138
@ -65,13 +65,13 @@ SystemZTargetLowering::SystemZTargetLowering(SystemZTargetMachine &tm) :
|
||||
setLoadExtAction(ISD::ZEXTLOAD, MVT::i1, Promote);
|
||||
setLoadExtAction(ISD::EXTLOAD, MVT::i1, Promote);
|
||||
|
||||
setLoadExtAction(ISD::SEXTLOAD, MVT::f32, Promote);
|
||||
setLoadExtAction(ISD::ZEXTLOAD, MVT::f32, Promote);
|
||||
setLoadExtAction(ISD::EXTLOAD, MVT::f32, Promote);
|
||||
setLoadExtAction(ISD::SEXTLOAD, MVT::f32, Expand);
|
||||
setLoadExtAction(ISD::ZEXTLOAD, MVT::f32, Expand);
|
||||
setLoadExtAction(ISD::EXTLOAD, MVT::f32, Expand);
|
||||
|
||||
setLoadExtAction(ISD::SEXTLOAD, MVT::f64, Promote);
|
||||
setLoadExtAction(ISD::ZEXTLOAD, MVT::f64, Promote);
|
||||
setLoadExtAction(ISD::EXTLOAD, MVT::f64, Promote);
|
||||
setLoadExtAction(ISD::SEXTLOAD, MVT::f64, Expand);
|
||||
setLoadExtAction(ISD::ZEXTLOAD, MVT::f64, Expand);
|
||||
setLoadExtAction(ISD::EXTLOAD, MVT::f64, Expand);
|
||||
|
||||
setStackPointerRegisterToSaveRestore(SystemZ::R15D);
|
||||
setSchedulingPreference(SchedulingForLatency);
|
||||
|
@ -167,10 +167,12 @@ def FROUND64r32 : Pseudo<(outs FP32:$dst), (ins FP64:$src),
|
||||
"ledbr\t{$dst, $src}",
|
||||
[(set FP32:$dst, (fround FP64:$src))]>;
|
||||
|
||||
// FIXME: memory variant
|
||||
def FEXT32r64 : Pseudo<(outs FP64:$dst), (ins FP32:$src),
|
||||
"ldebr\t{$dst, $src}",
|
||||
[(set FP64:$dst, (fextend FP32:$src))]>;
|
||||
def FEXT32m64 : Pseudo<(outs FP64:$dst), (ins rriaddr:$src),
|
||||
"ldeb\t{$dst, $src}",
|
||||
[(set FP64:$dst, (fextend (load rriaddr:$src)))]>;
|
||||
|
||||
let Defs = [PSW] in {
|
||||
def FCONVFP32 : Pseudo<(outs FP32:$dst), (ins GR32:$src),
|
||||
|
Loading…
Reference in New Issue
Block a user