implement initial support for the silly X constraint.  Testcase here: CodeGen/X86/2007-03-24-InlineAsmXConstraint.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35327 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/TargetLowering.cpp b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
index 7433a79..ee9fa67 100644
--- a/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+++ b/lib/CodeGen/SelectionDAG/TargetLowering.cpp
@@ -1841,6 +1841,7 @@
     case 'i':    // Simple Integer or Relocatable Constant
     case 'n':    // Simple Integer
     case 's':    // Relocatable Constant
+    case 'X':    // Allow ANY value.
     case 'I':    // Target registers.
     case 'J':
     case 'K':
@@ -1870,6 +1871,7 @@
   case 'i':    // Simple Integer or Relocatable Constant
   case 'n':    // Simple Integer
   case 's':    // Relocatable Constant
+  case 'X':    // Allows any operand.
     // These are okay if the operand is either a global variable address or a
     // simple immediate value.  If we have one of these, map to the TargetXXX
     // version so that the value itself doesn't get selected.