Implement shifts properly (hopefilly - finally!)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76005 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/SystemZ/SystemZOperands.td b/lib/Target/SystemZ/SystemZOperands.td
index d783050..8eccd3a 100644
--- a/lib/Target/SystemZ/SystemZOperands.td
+++ b/lib/Target/SystemZ/SystemZOperands.td
@@ -251,10 +251,10 @@
 // Address operands
 
 // riaddr := reg + imm
-def riaddr32 : Operand<i32>,
-               ComplexPattern<i32, 2, "SelectAddrRI12Only", []> {
+def riaddr32 : Operand<i64>,
+               ComplexPattern<i64, 2, "SelectAddrRI12Only", []> {
   let PrintMethod = "printRIAddrOperand";
-  let MIOperandInfo = (ops ADDR32:$base, u12imm:$disp);
+  let MIOperandInfo = (ops ADDR64:$base, u12imm:$disp);
 }
 
 def riaddr12 : Operand<i64>,