[mips][fp64a] Temporarily disable odd-numbered double-precision registers when using...
[oota-llvm.git] / lib / Target / Mips / MipsRegisterInfo.td
index 6323da3788507e1d81aec283dfa64eb5f7402266..74dfa4fe7d9cd5cd51e08c0c6ceb46a4de3cd887 100644 (file)
@@ -341,9 +341,12 @@ def AFGR64 : RegisterClass<"Mips", [f64], 64, (add
 def FGR64 : RegisterClass<"Mips", [f64], 64, (sequence "D%u_64", 0, 31)>;
 
 // Used to reserve odd registers when given -mattr=+nooddspreg
+// FIXME: Remove double precision registers from this set.
 def OddSP : RegisterClass<"Mips", [f32], 32,
                           (add (decimate (sequence "F%u", 1, 31), 2),
-                               (decimate (sequence "F_HI%u", 1, 31), 2))>,
+                               (decimate (sequence "F_HI%u", 1, 31), 2),
+                               (decimate (sequence "D%u", 1, 15), 2),
+                               (decimate (sequence "D%u_64", 1, 31), 2))>,
             Unallocatable;
 
 // FP control registers.