[PATCH] D72805: [X86] Remove X86ISD::FILD_FLAG and stop gluing nodes together.
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 18 01:02:21 PST 2020
craig.topper marked an inline comment as done.
craig.topper added inline comments.
================
Comment at: llvm/test/CodeGen/X86/vec-strict-inttofp-256.ll:636
; AVX-32: # %bb.0:
; AVX-32-NEXT: pushl %ebp
; AVX-32-NEXT: .cfi_def_cfa_offset 8
----------------
I wonder if it would make sense to parallelize this. I think we can shift the v4i64 right by 32, trunc to v4i32 use sitofp to convert that part to double. Multiply that by 2^32 in double. That should all be lossless.
Then for the bottom 32 bits we can mask with 0xffffffff. OR with the double representation for 2^52. Then subtract 2^52 from it. This should also be lossless.
Then we just add the two double vectors together which should be the only part that does any rounding.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72805/new/
https://reviews.llvm.org/D72805
More information about the llvm-commits
mailing list