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

Phoebe Wang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 13 01:50:12 PDT 2022


pengfei 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);
----------------
LiuChen3 wrote:
> 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.
I see. So we still don't need to check it because we can't go here on 64 bit. The check may imply we can't do it on 64 bit for some reason.


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