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

Chris Lattner lattner at cs.uiuc.edu
Wed Apr 19 22:58:23 PDT 2006



Changes in directory llvm/lib/Target/PowerPC:

PPCInstrAltivec.td updated: 1.51 -> 1.52
---
Log message:

Make sure that the new instructions selected have the right type.  This fixes
CodeGen/PowerPC/2006-04-19-vmaddfp-crash.ll


---
Diffs of the changes:  (+5 -5)

 PPCInstrAltivec.td |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)


Index: llvm/lib/Target/PowerPC/PPCInstrAltivec.td
diff -u llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.51 llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.52
--- llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.51	Sat Apr 15 20:37:57 2006
+++ llvm/lib/Target/PowerPC/PPCInstrAltivec.td	Thu Apr 20 00:58:10 2006
@@ -603,20 +603,20 @@
           (v4i32 (VANDC VRRC:$A, VRRC:$B))>;
 
 def : Pat<(fmul VRRC:$vA, VRRC:$vB),
-          (VMADDFP VRRC:$vA, VRRC:$vB, (v4i32 (V_SET0)))>; 
+          (v4f32 (VMADDFP VRRC:$vA, VRRC:$vB, (v4f32 (V_SET0))))>; 
 
 // Fused multiply add and multiply sub for packed float.  These are represented
 // separately from the real instructions above, for operations that must have
 // the additional precision, such as Newton-Rhapson (used by divide, sqrt)
 def : Pat<(PPCvmaddfp VRRC:$A, VRRC:$B, VRRC:$C),
-          (VMADDFP VRRC:$A, VRRC:$B, VRRC:$C)>;
+          (v4f32 (VMADDFP VRRC:$A, VRRC:$B, VRRC:$C))>;
 def : Pat<(PPCvnmsubfp VRRC:$A, VRRC:$B, VRRC:$C),
-          (VNMSUBFP VRRC:$A, VRRC:$B, VRRC:$C)>;
+          (v4f32 (VNMSUBFP VRRC:$A, VRRC:$B, VRRC:$C))>;
 
 def : Pat<(int_ppc_altivec_vmaddfp VRRC:$A, VRRC:$B, VRRC:$C),
-          (VMADDFP VRRC:$A, VRRC:$B, VRRC:$C)>;
+          (v4f32 (VMADDFP VRRC:$A, VRRC:$B, VRRC:$C))>;
 def : Pat<(int_ppc_altivec_vnmsubfp VRRC:$A, VRRC:$B, VRRC:$C),
-          (VNMSUBFP VRRC:$A, VRRC:$B, VRRC:$C)>;
+          (v4f32 (VNMSUBFP VRRC:$A, VRRC:$B, VRRC:$C))>;
 
 def : Pat<(PPCvperm (v16i8 VRRC:$vA), VRRC:$vB, VRRC:$vC),
           (v16i8 (VPERM VRRC:$vA, VRRC:$vB, VRRC:$vC))>;






More information about the llvm-commits mailing list