1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00

Emit proper rounding mode for fp_to_sint

llvm-svn: 76037
This commit is contained in:
Anton Korobeynikov 2009-07-16 14:25:12 +00:00
parent 61bf5c13c4
commit 117e7a7179

View File

@ -277,20 +277,20 @@ def FCONVFP64 : Pseudo<(outs FP64:$dst), (ins GR64:$src),
(implicit PSW)]>; (implicit PSW)]>;
def FCONVGR32 : Pseudo<(outs GR32:$dst), (ins FP32:$src), def FCONVGR32 : Pseudo<(outs GR32:$dst), (ins FP32:$src),
"cfebr\t{$dst, $src}", "cfebr\t{$dst, 5, $src}",
[(set GR32:$dst, (fp_to_sint FP32:$src)), [(set GR32:$dst, (fp_to_sint FP32:$src)),
(implicit PSW)]>; (implicit PSW)]>;
def FCONVGR32r64: Pseudo<(outs GR32:$dst), (ins FP64:$src), def FCONVGR32r64: Pseudo<(outs GR32:$dst), (ins FP64:$src),
"cgebr\t{$dst, $src}", "cgebr\t{$dst, 5, $src}",
[(set GR32:$dst, (fp_to_sint FP64:$src)), [(set GR32:$dst, (fp_to_sint FP64:$src)),
(implicit PSW)]>; (implicit PSW)]>;
def FCONVGR64r32: Pseudo<(outs GR64:$dst), (ins FP32:$src), def FCONVGR64r32: Pseudo<(outs GR64:$dst), (ins FP32:$src),
"cfdbr\t{$dst, $src}", "cfdbr\t{$dst, 5, $src}",
[(set GR64:$dst, (fp_to_sint FP32:$src)), [(set GR64:$dst, (fp_to_sint FP32:$src)),
(implicit PSW)]>; (implicit PSW)]>;
def FCONVGR64 : Pseudo<(outs GR64:$dst), (ins FP64:$src), def FCONVGR64 : Pseudo<(outs GR64:$dst), (ins FP64:$src),
"cgdbr\t{$dst, $src}", "cgdbr\t{$dst, 5, $src}",
[(set GR64:$dst, (fp_to_sint FP64:$src)), [(set GR64:$dst, (fp_to_sint FP64:$src)),
(implicit PSW)]>; (implicit PSW)]>;
} // Defs = [PSW] } // Defs = [PSW]