diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/ARM/ARMInstrVFP.td | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMInstrVFP.td b/lib/Target/ARM/ARMInstrVFP.td index 671e1a48c1..a8a72ed72c 100644 --- a/lib/Target/ARM/ARMInstrVFP.td +++ b/lib/Target/ARM/ARMInstrVFP.td @@ -78,6 +78,11 @@ def FSTS : ASI5<(ops SPR:$src, addrmode5:$addr), [(store SPR:$src, addrmode5:$addr)]>; } // isStore +// avoid copying result of FTOUIZ to int reg when we're just storing it +let AddedComplexity = 1 in +def : ARMPat<(store (i32 (bitconvert SPR:$src)), addrmode5:$addr), + (FSTS SPR:$src, addrmode5:$addr)>; + //===----------------------------------------------------------------------===// // Load / store multiple Instructions. // |