mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-14 15:19:33 +00:00
Expand 32-bit bitconverts via memory
llvm-svn: 76050
This commit is contained in:
parent
080bdae588
commit
373515d99e
@ -130,8 +130,8 @@ SystemZTargetLowering::SystemZTargetLowering(SystemZTargetMachine &tm) :
|
||||
setOperationAction(ISD::FCOS, MVT::f64, Expand);
|
||||
|
||||
// We have only 64-bit bitconverts
|
||||
setOperationAction(ISD::BIT_CONVERT, MVT::f32, Promote);
|
||||
setOperationAction(ISD::BIT_CONVERT, MVT::i32, Promote);
|
||||
setOperationAction(ISD::BIT_CONVERT, MVT::f32, Expand);
|
||||
setOperationAction(ISD::BIT_CONVERT, MVT::i32, Expand);
|
||||
|
||||
setOperationAction(ISD::UINT_TO_FP, MVT::i32, Expand);
|
||||
setOperationAction(ISD::UINT_TO_FP, MVT::i64, Expand);
|
||||
|
15
test/CodeGen/SystemZ/2009-07-11-FloatBitConvert.ll
Normal file
15
test/CodeGen/SystemZ/2009-07-11-FloatBitConvert.ll
Normal file
@ -0,0 +1,15 @@
|
||||
; ModuleID = 'bugpoint.test.bc'
|
||||
target datalayout = "E-p:64:64:64-i8:8:16-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128-a0:16:16"
|
||||
target triple = "s390x-linux"
|
||||
|
||||
define float @foo(i32 signext %a) {
|
||||
entry:
|
||||
%b = bitcast i32 %a to float
|
||||
ret float %b
|
||||
}
|
||||
|
||||
define i32 @bar(float %a) {
|
||||
entry:
|
||||
%b = bitcast float %a to i32
|
||||
ret i32 %b
|
||||
}
|
Loading…
Reference in New Issue
Block a user