[PATCH] [X86][FastIsel] Teach how to select scalar integer to float/double conversions.

Quentin Colombet qcolombet at apple.com
Tue Feb 17 10:08:08 PST 2015


Hi Andrea,

The code looks mostly good to me, but I am confused by the tests.
Shouldn’t we match some cvt instructions for the SSE2 pattern?

Thanks,
-Quentin


================
Comment at: lib/Target/X86/X86FastISel.cpp:2010
@@ +2009,3 @@
+bool X86FastISel::X86SelectSIToFP(const Instruction *I) {
+  if (I->getOperand(0)->getType()->isIntegerTy(32)) {
+    // Select integer to float/double conversion.
----------------
Use early exist here.

================
Comment at: test/CodeGen/X86/fast-isel-int-float-conversion.ll:7
@@ +6,3 @@
+; ALL-LABEL: int_to_double_rr:
+; SSE2-NOT: vcvtsi2sdl
+; AVX: vcvtsi2sdl %edi, %xmm0, %xmm0
----------------
Shouldn’t we have some check for the actual pattern for SSE2?

http://reviews.llvm.org/D7698

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list