[llvm-commits] CVS: llvm/include/llvm/Target/TargetLowering.h

Chris Lattner lattner at cs.uiuc.edu
Thu Mar 30 16:28:35 PST 2006



Changes in directory llvm/include/llvm/Target:

TargetLowering.h updated: 1.63 -> 1.64
---
Log message:

Add a method useful for decimating vectors.


---
Diffs of the changes:  (+10 -0)

 TargetLowering.h |   10 ++++++++++
 1 files changed, 10 insertions(+)


Index: llvm/include/llvm/Target/TargetLowering.h
diff -u llvm/include/llvm/Target/TargetLowering.h:1.63 llvm/include/llvm/Target/TargetLowering.h:1.64
--- llvm/include/llvm/Target/TargetLowering.h:1.63	Wed Mar 22 16:07:06 2006
+++ llvm/include/llvm/Target/TargetLowering.h	Thu Mar 30 18:28:23 2006
@@ -173,6 +173,16 @@
     return TransformToType[VT];
   }
 
+  /// getPackedTypeBreakdown - Packed types are broken down into some number of
+  /// legal scalar types.  For example, <8 x float> maps to 2 MVT::v2f32 values
+  /// with Altivec or SSE1, or 8 promoted MVT::f64 values with the X86 FP stack.
+  /// Similarly, <2 x long> turns into 4 MVT::i32 values with both PPC and X86.
+  ///
+  /// This method returns the number and type of the resultant breakdown.
+  ///
+  MVT::ValueType getPackedTypeBreakdown(const PackedType *PTy, 
+                                        unsigned &NE) const;
+  
   typedef std::vector<double>::const_iterator legal_fpimm_iterator;
   legal_fpimm_iterator legal_fpimm_begin() const {
     return LegalFPImmediates.begin();






More information about the llvm-commits mailing list