[PATCH] D81827: [CGP] Convert phi types

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 19 16:51:58 PDT 2020


craig.topper added inline comments.


================
Comment at: llvm/lib/Target/X86/X86ISelLowering.cpp:30744
+bool X86TargetLowering::shouldConvertPhiType(Type *From, Type *To) const {
+  if (!Subtarget.is64Bit())
+    return false;
----------------
efriedma wrote:
> craig.topper wrote:
> > 32-bit with sse2 isn't different than 64-bit is it? I'm assuming the real difference is x87 vs sse for floating point? In which case even sse or 64-bit still use x87 for fp80.
> fp80 doesn't have the same issue; SNaN payloads are preserved by fp80 load and store operations.
> 
> On 32-bit with SSE2, we still generate x87 operations to handle return values; the calling convention requires it.  Not sure what effect that has on this transform, specifically; maybe it's okay as long as we keep the values in SSE registers within the function.
Thanks for the clarification. Since this patch was about phis I didn't equate the mention of 32-bit mode with the calling convention specifically.


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

https://reviews.llvm.org/D81827





More information about the llvm-commits mailing list