[llvm] r240746 - Revert "X86: Reject register operands with obvious type mismatches."

Matthias Braun matze at braunis.de
Thu Jun 25 17:26:49 PDT 2015


Author: matze
Date: Thu Jun 25 19:26:49 2015
New Revision: 240746

URL: http://llvm.org/viewvc/llvm-project?rev=240746&view=rev
Log:
Revert "X86: Reject register operands with obvious type mismatches."

Revert until http://llvm.org/PR23955 is investigated.

This reverts commit r239309.

Removed:
    llvm/trunk/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll
Modified:
    llvm/trunk/lib/Target/X86/X86ISelLowering.cpp

Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=240746&r1=240745&r2=240746&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Thu Jun 25 19:26:49 2015
@@ -25583,10 +25583,6 @@ X86TargetLowering::getRegForInlineAsmCon
         Res.first = DestReg;
         Res.second = &X86::GR64RegClass;
       }
-    } else if (VT != MVT::Other) {
-      // Type mismatch and not a clobber: Return an error;
-      Res.first = 0;
-      Res.second = nullptr;
     }
   } else if (Res.second == &X86::FR32RegClass ||
              Res.second == &X86::FR64RegClass ||
@@ -25612,15 +25608,6 @@ X86TargetLowering::getRegForInlineAsmCon
       Res.second = &X86::VR256RegClass;
     else if (X86::VR512RegClass.hasType(VT))
       Res.second = &X86::VR512RegClass;
-    else if (VT != MVT::Other) {
-      // Type mismatch and not a clobber: Return an error;
-      Res.first = 0;
-      Res.second = nullptr;
-    }
-  } else if (VT != MVT::Other) {
-    // Type mismatch and not a clobber: Return an error;
-    Res.first = 0;
-    Res.second = nullptr;
   }
 
   return Res;

Removed: llvm/trunk/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll?rev=240745&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll (original)
+++ llvm/trunk/test/CodeGen/X86/asm-reject-reg-type-mismatch.ll (removed)
@@ -1,10 +0,0 @@
-; RUN: not llc -no-integrated-as %s -o - 2> %t1
-; RUN: FileCheck %s < %t1
-target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
-target triple = "x86_64--"
-
-; CHECK: error: couldn't allocate output register for constraint '{ax}'
-define i128 @blup() {
-  %v = tail call i128 asm "", "={ax},0,~{dirflag},~{fpsr},~{flags}"(i128 0)
-  ret i128 %v
-}





More information about the llvm-commits mailing list