Add more supported constraints.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47270 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Basic/TargetInfo.cpp b/Basic/TargetInfo.cpp
index f0aecb1..6b600a4 100644
--- a/Basic/TargetInfo.cpp
+++ b/Basic/TargetInfo.cpp
@@ -435,6 +435,7 @@
       // FIXME: Fail if % is used with the last operand.
       break;
     case 'i': // immediate integer.
+    case 'I':
       break;
     case 'r': // general register.
       info = (ConstraintInfo)(info|CI_AllowsRegister);
diff --git a/Basic/Targets.cpp b/Basic/Targets.cpp
index afe6e74..fec8499 100644
--- a/Basic/Targets.cpp
+++ b/Basic/Targets.cpp
@@ -461,6 +461,8 @@
     case 't': // top of floating point stack.
     case 'u': // second from top of floating point stack.
     case 'q': // a, b, c, d registers or any integer register in 64-bit.
+    case 'Z': // 32-bit integer constant for used with zero-extending x86_64
+              // instructions.
       info = (TargetInfo::ConstraintInfo)(info|TargetInfo::CI_AllowsRegister);
       return true;
     }