[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCInstrInfo.td

Evan Cheng evan.cheng at apple.com
Wed Dec 14 14:07:24 PST 2005



Changes in directory llvm/lib/Target/PowerPC:

PPCInstrInfo.td updated: 1.157 -> 1.158
---
Log message:

Added predicate !NoExcessFPPrecision to FMADD, FMADDS, FMSUB, and FMSUBS.


---
Diffs of the changes:  (+11 -4)

 PPCInstrInfo.td |   15 +++++++++++----
 1 files changed, 11 insertions(+), 4 deletions(-)


Index: llvm/lib/Target/PowerPC/PPCInstrInfo.td
diff -u llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.157 llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.158
--- llvm/lib/Target/PowerPC/PPCInstrInfo.td:1.157	Tue Dec 13 18:34:09 2005
+++ llvm/lib/Target/PowerPC/PPCInstrInfo.td	Wed Dec 14 16:07:12 2005
@@ -166,6 +166,9 @@
   let PrintMethod = "printcrbitm";
 }
 
+//===----------------------------------------------------------------------===//
+// PowerPC Instruction Predicate Definitions.
+def FPContractions : Predicate<"!NoExcessFPPrecision">;
 
 //===----------------------------------------------------------------------===//
 // PowerPC Instruction Definitions.
@@ -719,22 +722,26 @@
                     (ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
                     "fmadd $FRT, $FRA, $FRC, $FRB", FPFused,
                     [(set F8RC:$FRT, (fadd (fmul F8RC:$FRA, F8RC:$FRC),
-                                           F8RC:$FRB))]>;
+                                           F8RC:$FRB))]>,
+                    Requires<[FPContractions]>;
 def FMADDS : AForm_1<59, 29,
                     (ops F4RC:$FRT, F4RC:$FRA, F4RC:$FRC, F4RC:$FRB),
                     "fmadds $FRT, $FRA, $FRC, $FRB", FPGeneral,
                     [(set F4RC:$FRT, (fadd (fmul F4RC:$FRA, F4RC:$FRC),
-                                           F4RC:$FRB))]>;
+                                           F4RC:$FRB))]>,
+                    Requires<[FPContractions]>;
 def FMSUB : AForm_1<63, 28,
                     (ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
                     "fmsub $FRT, $FRA, $FRC, $FRB", FPFused,
                     [(set F8RC:$FRT, (fsub (fmul F8RC:$FRA, F8RC:$FRC),
-                                           F8RC:$FRB))]>;
+                                           F8RC:$FRB))]>,
+                    Requires<[FPContractions]>;
 def FMSUBS : AForm_1<59, 28,
                     (ops F4RC:$FRT, F4RC:$FRA, F4RC:$FRC, F4RC:$FRB),
                     "fmsubs $FRT, $FRA, $FRC, $FRB", FPGeneral,
                     [(set F4RC:$FRT, (fsub (fmul F4RC:$FRA, F4RC:$FRC),
-                                           F4RC:$FRB))]>;
+                                           F4RC:$FRB))]>,
+                    Requires<[FPContractions]>;
 def FNMADD : AForm_1<63, 31,
                     (ops F8RC:$FRT, F8RC:$FRA, F8RC:$FRC, F8RC:$FRB),
                     "fnmadd $FRT, $FRA, $FRC, $FRB", FPFused,






More information about the llvm-commits mailing list