[PATCH] D123660: [X86] Covert unsigned int 0 to float-point with FILD instruction.

LiuChen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 13 01:29:30 PDT 2022


LiuChen3 added inline comments.


================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:21245
+  if (SrcVT == MVT::i32 && Subtarget.hasSSE2() && DstVT != MVT::f80 &&
+      !(Subtarget.is32Bit() && IsStrict))
     return LowerUINT_TO_FP_i32(Op, DAG, Subtarget);
----------------
pengfei wrote:
> Why we need 32Bit check? Above code doesn't do that.
In 64bit, `cvtsi2ss` will be emitted. There is no intermediate subtraction operation, which avoid such error.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123660/new/

https://reviews.llvm.org/D123660



More information about the llvm-commits mailing list