[mips] Remove predicates that were incorrectly or unnecessarily added.
authorAkira Hatanaka <ahatanaka@mips.com>
Tue, 20 Aug 2013 23:21:55 +0000 (23:21 +0000)
committerAkira Hatanaka <ahatanaka@mips.com>
Tue, 20 Aug 2013 23:21:55 +0000 (23:21 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188845 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsCallingConv.td
lib/Target/Mips/MipsInstrFPU.td

index 659a7a2389ee1d3f750707742efa14c291df2708..11efdb78dce79f6e935cf5c34b67e25125832e6f 100644 (file)
@@ -288,7 +288,7 @@ defm : SetgeImmPats<GPR64, SLTi64, SLTiu64>;
 // truncate
 def : MipsPat<(i32 (trunc GPR64:$src)),
               (SLL (EXTRACT_SUBREG GPR64:$src, sub_32), 0)>,
-      Requires<[IsN64, HasStdEnc]>;
+      Requires<[HasStdEnc]>;
 
 // 32-to-64-bit extension
 def : MipsPat<(i64 (anyext GPR32:$src)), (SLL64_32 GPR32:$src)>;
index ac40b118004c7c6cf9e6e77dd52bf390553169a5..ed515ef0c96795d6e3b88f5f0324c00a005d7558 100644 (file)
@@ -27,7 +27,7 @@ def RetCC_MipsO32 : CallingConv<[
   CCIfType<[f32], CCAssignToReg<[F0, F2]>>,
 
   // f64 are returned in register D0, D1
-  CCIfType<[f64], CCIfSubtarget<"isNotSingleFloat()", CCAssignToReg<[D0, D1]>>>
+  CCIfType<[f64], CCAssignToReg<[D0, D1]>>
 ]>;
 
 //===----------------------------------------------------------------------===//
index 92a828c9f226b6a3351add297f81a9edc62e3806..aef1ace461c336ca047d02178c7eac95fdc04f83 100644 (file)
@@ -358,12 +358,12 @@ let Predicates = [HasStdEnc] in {
   def SWC1 : SW_FT<"swc1", FGR32Opnd, IIFStore, store>, LW_FM<0x39>;
 }
 
-let Predicates = [HasMips64, HasStdEnc], DecoderNamespace = "Mips64" in {
+let Predicates = [IsFP64bit, HasStdEnc], DecoderNamespace = "Mips64" in {
   def LDC164 : LW_FT<"ldc1", FGR64Opnd, IIFLoad, load>, LW_FM<0x35>;
   def SDC164 : SW_FT<"sdc1", FGR64Opnd, IIFStore, store>, LW_FM<0x3d>;
 }
 
-let Predicates = [NotMips64, HasStdEnc] in {
+let Predicates = [NotFP64bit, HasStdEnc] in {
   let isPseudo = 1, isCodeGenOnly = 1 in {
     def PseudoLDC1 : LW_FT<"", AFGR64Opnd, IIFLoad, load>;
     def PseudoSDC1 : SW_FT<"", AFGR64Opnd, IIFStore, store>;
@@ -600,12 +600,12 @@ let AddedComplexity = 40 in {
     def : StoreRegImmPat<SWC1, f32>;
   }
 
-  let Predicates = [HasMips64, HasStdEnc] in {
+  let Predicates = [IsFP64bit, HasStdEnc] in {
     def : LoadRegImmPat<LDC164, f64, load>;
     def : StoreRegImmPat<SDC164, f64>;
   }
 
-  let Predicates = [NotMips64, HasStdEnc] in {
+  let Predicates = [NotFP64bit, HasStdEnc] in {
     def : LoadRegImmPat<PseudoLDC1, f64, load>;
     def : StoreRegImmPat<PseudoSDC1, f64>;
   }