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

2006-04-12 Thread Chris Lattner


Changes in directory llvm/include/llvm/Target:

TargetLowering.h updated: 1.67 - 1.68
---
Log message:

Provide a default impl of LowerArguments


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

 TargetLowering.h |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/include/llvm/Target/TargetLowering.h
diff -u llvm/include/llvm/Target/TargetLowering.h:1.67 
llvm/include/llvm/Target/TargetLowering.h:1.68
--- llvm/include/llvm/Target/TargetLowering.h:1.67  Tue Apr  4 12:21:22 2006
+++ llvm/include/llvm/Target/TargetLowering.h   Wed Apr 12 11:21:12 2006
@@ -524,7 +524,7 @@
   /// LowerArguments - This hook must be implemented to indicate how we should
   /// lower the arguments for the specified function, into the specified DAG.
   virtual std::vectorSDOperand
-  LowerArguments(Function F, SelectionDAG DAG) = 0;
+  LowerArguments(Function F, SelectionDAG DAG);
 
   /// LowerCallTo - This hook lowers an abstract call to a function into an
   /// actual call.  This returns a pair of operands.  The first element is the



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp SelectionDAG.cpp SelectionDAGISel.cpp

2006-04-12 Thread Chris Lattner


Changes in directory llvm/lib/CodeGen/SelectionDAG:

LegalizeDAG.cpp updated: 1.361 - 1.362
SelectionDAG.cpp updated: 1.298 - 1.299
SelectionDAGISel.cpp updated: 1.221 - 1.222
---
Log message:

Implement support for the formal_arguments node.  To get this, targets 
shouldcustom legalize it and remove their XXXTargetLowering::LowerArguments 
overload



---
Diffs of the changes:  (+128 -3)

 LegalizeDAG.cpp  |   11 +++-
 SelectionDAG.cpp |1 
 SelectionDAGISel.cpp |  119 +++
 3 files changed, 128 insertions(+), 3 deletions(-)


Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.361 
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.362
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.361 Tue Apr 11 01:33:39 2006
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp   Wed Apr 12 11:20:43 2006
@@ -826,7 +826,13 @@
   Result = DAG.UpdateNodeOperands(Result, Ops);
 }
 break;
-
+
+  case ISD::FORMAL_ARGUMENTS:
+// The only option for this is to custom lower it.
+Result = TLI.LowerOperation(Result, DAG);
+assert(Result.Val  Target didn't custom lower ISD::FORMAL_ARGUMENTS!);
+break;
+
   case ISD::BUILD_VECTOR:
 switch (TLI.getOperationAction(ISD::BUILD_VECTOR, Node-getValueType(0))) {
 default: assert(0  This action is not supported yet!);
@@ -2782,7 +2788,7 @@
 Result = DAG.getNode(ISD::SETCC, 
TLI.getSetCCResultTy(),Node-getOperand(0),
  Node-getOperand(1), Node-getOperand(2));
 break;
-
+
   case ISD::TRUNCATE:
 switch (getTypeAction(Node-getOperand(0).getValueType())) {
 case Legal:
@@ -4057,7 +4063,6 @@
   }
 }
 
-
 /// ExpandOp - Expand the specified SDOperand into its two component pieces
 /// LoHi.  Note that the Op MUST be an expanded type.  As a result of this, 
the
 /// LegalizeNodes map is filled in for any results that are not expanded, the


Index: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.298 
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.299
--- llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.298Tue Apr 11 
22:25:41 2006
+++ llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp  Wed Apr 12 11:20:43 2006
@@ -2714,6 +2714,7 @@
   case ISD::MERGE_VALUES:  return mergevalues;
   case ISD::INLINEASM: return inlineasm;
   case ISD::HANDLENODE:return handlenode;
+  case ISD::FORMAL_ARGUMENTS: return formal_arguments;
 
   // Unary operators
   case ISD::FABS:   return fabs;


Index: llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1.221 
llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1.222
--- llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp:1.221Sat Apr  8 
17:22:57 2006
+++ llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp  Wed Apr 12 11:20:43 2006
@@ -2230,6 +2230,125 @@
   DAG.getSrcValue(I.getOperand(2;
 }
 
+/// TargetLowering::LowerArguments - This is the default LowerArguments
+/// implementation, which just inserts a FORMAL_ARGUMENTS node.  FIXME: When 
all
+/// targets are migrated to using FORMAL_ARGUMENTS, this hook should be 
removed.
+std::vectorSDOperand 
+TargetLowering::LowerArguments(Function F, SelectionDAG DAG) {
+  // Add CC# and isVararg as operands to the FORMAL_ARGUMENTS node.
+  std::vectorSDOperand Ops;
+  Ops.push_back(DAG.getConstant(F.getCallingConv(), getPointerTy()));
+  Ops.push_back(DAG.getConstant(F.isVarArg(), getPointerTy()));
+
+  // Add one result value for each formal argument.
+  std::vectorMVT::ValueType RetVals;
+  for (Function::arg_iterator I = F.arg_begin(), E = F.arg_end(); I != E; ++I) 
{
+MVT::ValueType VT = getValueType(I-getType());
+
+switch (getTypeAction(VT)) {
+default: assert(0  Unknown type action!);
+case Legal: 
+  RetVals.push_back(VT);
+  break;
+case Promote:
+  RetVals.push_back(getTypeToTransformTo(VT));
+  break;
+case Expand:
+  if (VT != MVT::Vector) {
+// If this is a large integer, it needs to be broken up into small
+// integers.  Figure out what the destination type is and how many 
small
+// integers it turns into.
+MVT::ValueType NVT = getTypeToTransformTo(VT);
+unsigned NumVals = MVT::getSizeInBits(VT)/MVT::getSizeInBits(NVT);
+for (unsigned i = 0; i != NumVals; ++i)
+  RetVals.push_back(NVT);
+  } else {
+// Otherwise, this is a vector type.  We only support legal vectors
+// right now.
+unsigned NumElems = castPackedType(I-getType())-getNumElements();
+const Type *EltTy = castPackedType(I-getType())-getElementType();
+
+// Figure out if there is a Packed type corresponding to this Vector
+// type.  If so, convert to the packed type.
+MVT::ValueType TVT = 

[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/CodeGen/SelectionDAG:

LegalizeDAG.cpp updated: 1.362 - 1.363
---
Log message:

Vector type promotion for ISD::LOAD and ISD::SELECT

---
Diffs of the changes:  (+23 -9)

 LegalizeDAG.cpp |   32 +++-
 1 files changed, 23 insertions(+), 9 deletions(-)


Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.362 
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.363
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.362 Wed Apr 12 11:20:43 2006
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp   Wed Apr 12 11:33:18 2006
@@ -1256,25 +1256,36 @@
 
 MVT::ValueType VT = Node-getValueType(0);
 Result = DAG.UpdateNodeOperands(Result, Tmp1, Tmp2, Node-getOperand(2));
-Tmp2 = Result.getValue(0);
-Tmp3 = Result.getValue(1);
+Tmp3 = Result.getValue(0);
+Tmp4 = Result.getValue(1);
 
 switch (TLI.getOperationAction(Node-getOpcode(), VT)) {
 default: assert(0  This action is not supported yet!);
 case TargetLowering::Legal: break;
 case TargetLowering::Custom:
-  Tmp1 = TLI.LowerOperation(Tmp2, DAG);
+  Tmp1 = TLI.LowerOperation(Tmp3, DAG);
   if (Tmp1.Val) {
-Tmp2 = LegalizeOp(Tmp1);
-Tmp3 = LegalizeOp(Tmp1.getValue(1));
+Tmp3 = LegalizeOp(Tmp1);
+Tmp4 = LegalizeOp(Tmp1.getValue(1));
   }
   break;
+case TargetLowering::Promote: {
+  // Only promote a load of vector type to another.
+  assert(MVT::isVector(VT)  Cannot promote this load!);
+  // Change base type to a different vector type.
+  MVT::ValueType NVT = TLI.getTypeToPromoteTo(Node-getOpcode(), VT);
+
+  Tmp1 = DAG.getLoad(NVT, Tmp1, Tmp2, Node-getOperand(2));
+  Tmp3 = LegalizeOp(DAG.getNode(ISD::BIT_CONVERT, VT, Tmp1));
+  Tmp4 = LegalizeOp(Tmp1.getValue(1));
+  break;
+}
 }
 // Since loads produce two values, make sure to remember that we 
 // legalized both of them.
-AddLegalizedOperand(SDOperand(Node, 0), Tmp2);
-AddLegalizedOperand(SDOperand(Node, 1), Tmp3);
-return Op.ResNo ? Tmp3 : Tmp2;
+AddLegalizedOperand(SDOperand(Node, 0), Tmp3);
+AddLegalizedOperand(SDOperand(Node, 1), Tmp4);
+return Op.ResNo ? Tmp4 : Tmp3;
   }
   case ISD::EXTLOAD:
   case ISD::SEXTLOAD:
@@ -1755,7 +1766,10 @@
   MVT::ValueType NVT =
 TLI.getTypeToPromoteTo(ISD::SELECT, Tmp2.getValueType());
   unsigned ExtOp, TruncOp;
-  if (MVT::isInteger(Tmp2.getValueType())) {
+  if (MVT::isVector(Tmp2.getValueType())) {
+ExtOp   = ISD::BIT_CONVERT;
+TruncOp = ISD::BIT_CONVERT;
+  } else if (MVT::isInteger(Tmp2.getValueType())) {
 ExtOp   = ISD::ANY_EXTEND;
 TruncOp = ISD::TRUNCATE;
   } else {



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/include/llvm/CodeGen/SelectionDAGNodes.h

2006-04-12 Thread Reid Spencer


Changes in directory llvm/include/llvm/CodeGen:

SelectionDAGNodes.h updated: 1.128 - 1.129
---
Log message:

Make sure both member variables are initialized in the default constructor
for SDOperand. This gets rid of numerous warnings in lib/CodeGen and 
lib/Target when compiled with GCC 4.0.2


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

 SelectionDAGNodes.h |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h
diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.128 
llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.129
--- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.128 Tue Apr 11 16:30:42 2006
+++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h   Wed Apr 12 11:44:15 2006
@@ -609,7 +609,7 @@
   SDNode *Val;// The node defining the value we are using.
   unsigned ResNo; // Which return value of the node we are using.
 
-  SDOperand() : Val(0) {}
+  SDOperand() : Val(0), ResNo(0) {}
   SDOperand(SDNode *val, unsigned resno) : Val(val), ResNo(resno) {}
 
   bool operator==(const SDOperand O) const {



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/CodeGen/PowerPC:

vxor-canonicalize.ll added (r1.1)
---
Log message:

new testcase


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

 vxor-canonicalize.ll |9 +
 1 files changed, 9 insertions(+)


Index: llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll
diff -c /dev/null llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll:1.1
*** /dev/null   Wed Apr 12 11:49:26 2006
--- llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll   Wed Apr 12 
11:49:16 2006
***
*** 0 
--- 1,9 
+ ; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 | grep vxor | wc -l | grep 1
+ ; There should be exactly one vxor here, not two.
+ 
+ void %test(4 x float* %P1, 4 x int* %P2) {
+ store 4 x float zeroinitializer, 4 x float* %P1
+ store 4 x int zeroinitializer, 4 x int* %P2
+ ret void
+ }
+ 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


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

2006-04-12 Thread Chris Lattner


Changes in directory llvm/lib/Target/PowerPC:

PPCISelLowering.cpp updated: 1.144 - 1.145
PPCInstrAltivec.td updated: 1.47 - 1.48
---
Log message:

Ensure that zero vectors are always v4i32, which forces them to CSE with 
each other.  This implements CodeGen/PowerPC/vxor-canonicalize.ll


---
Diffs of the changes:  (+13 -8)

 PPCISelLowering.cpp |   14 +++---
 PPCInstrAltivec.td  |7 ++-
 2 files changed, 13 insertions(+), 8 deletions(-)


Index: llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.144 
llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.145
--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.144   Mon Apr 10 20:38:39 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp Wed Apr 12 11:53:28 2006
@@ -923,11 +923,19 @@
   case ISD::BUILD_VECTOR:
 // If this is a case we can't handle, return null and let the default
 // expansion code take care of it.  If we CAN select this case, return Op.
-
-// See if this is all zeros.
+
 // FIXME: We should handle splat(-0.0), and other cases here.
-if (ISD::isBuildVectorAllZeros(Op.Val))
+
+// See if this is all zeros.
+if (ISD::isBuildVectorAllZeros(Op.Val)) {
+  // Canonicalize all zero vectors to be v4i32.
+  if (Op.getValueType() != MVT::v4i32) {
+SDOperand Z = DAG.getConstant(0, MVT::i32);
+Z = DAG.getNode(ISD::BUILD_VECTOR, MVT::v4i32, Z, Z, Z, Z);
+Op = DAG.getNode(ISD::BIT_CONVERT, Op.getValueType(), Z);
+  }
   return Op;
+}
 
 if (PPC::get_VSPLI_elt(Op.Val, 1, DAG).Val ||// vspltisb
 PPC::get_VSPLI_elt(Op.Val, 2, DAG).Val ||// vspltish


Index: llvm/lib/Target/PowerPC/PPCInstrAltivec.td
diff -u llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.47 
llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.48
--- llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.47 Sat Apr  8 01:46:53 2006
+++ llvm/lib/Target/PowerPC/PPCInstrAltivec.td  Wed Apr 12 11:53:28 2006
@@ -521,7 +521,7 @@
   
 def V_SET0 : VXForm_setzero1220, (ops VRRC:$vD),
   vxor $vD, $vD, $vD, VecFP,
-  [(set VRRC:$vD, (v4f32 immAllZerosV))];
+  [(set VRRC:$vD, (v4i32 immAllZerosV))];
 }
 
 
//===--===//
@@ -544,9 +544,6 @@
 def : Pat(v16i8 (undef)), (v16i8 (IMPLICIT_DEF_VRRC));
 def : Pat(v8i16 (undef)), (v8i16 (IMPLICIT_DEF_VRRC));
 def : Pat(v4i32 (undef)), (v4i32 (IMPLICIT_DEF_VRRC));
-def : Pat(v16i8 immAllZerosV), (v16i8 (V_SET0));
-def : Pat(v8i16 immAllZerosV), (v8i16 (V_SET0));
-def : Pat(v4i32 immAllZerosV), (v4i32 (V_SET0));
 
 // Loads.
 def : Pat(v16i8 (load xoaddr:$src)), (v16i8 (LVX xoaddr:$src));
@@ -637,7 +634,7 @@
   (v8i16 (VANDC VRRC:$A, VRRC:$B));
 
 def : Pat(fmul VRRC:$vA, VRRC:$vB),
-  (VMADDFP VRRC:$vA, VRRC:$vB, (V_SET0)); 
+  (VMADDFP VRRC:$vA, VRRC:$vB, (v4i32 (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



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/CodeGen/PowerPC:

vxor-canonicalize.ll updated: 1.1 - 1.2
---
Log message:

Make this test more interesting by checking that the 0.0 used to implement 
vector fmul gets cse'd also.


---
Diffs of the changes:  (+7 -3)

 vxor-canonicalize.ll |   10 +++---
 1 files changed, 7 insertions(+), 3 deletions(-)


Index: llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll
diff -u llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll:1.1 
llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll:1.2
--- llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll:1.1   Wed Apr 
12 11:49:16 2006
+++ llvm/test/Regression/CodeGen/PowerPC/vxor-canonicalize.ll   Wed Apr 12 
11:57:39 2006
@@ -1,7 +1,11 @@
-; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 | grep vxor | wc -l | grep 1
-; There should be exactly one vxor here, not two.
+; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 --enable-unsafe-fp-math | grep 
vxor | wc -l | grep 1
+; There should be exactly one vxor here.
 
-void %test(4 x float* %P1, 4 x int* %P2) {
+void %test(4 x float* %P1, 4 x int* %P2, 4 x float* %P3) {
+%tmp = load 4 x float* %P3
+%tmp3 = load 4 x float* %P1
+%tmp4 = mul 4 x float %tmp, %tmp3
+store 4 x float %tmp4, 4 x float* %P3
 store 4 x float zeroinitializer, 4 x float* %P1
 store 4 x int zeroinitializer, 4 x int* %P2
 ret void



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll vxor-canonicalize.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/CodeGen/PowerPC:

buildvec_canonicalize.ll added (r1.1)
vxor-canonicalize.ll (r1.2) removed
---
Log message:

Rename this file


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

 buildvec_canonicalize.ll |   13 +
 1 files changed, 13 insertions(+)


Index: llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll
diff -c /dev/null 
llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll:1.1
*** /dev/null   Wed Apr 12 12:01:21 2006
--- llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll   Wed Apr 
12 12:01:11 2006
***
*** 0 
--- 1,13 
+ ; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 --enable-unsafe-fp-math | 
grep vxor | wc -l | grep 1
+ ; There should be exactly one vxor here.
+ 
+ void %test(4 x float* %P1, 4 x int* %P2, 4 x float* %P3) {
+ %tmp = load 4 x float* %P3
+ %tmp3 = load 4 x float* %P1
+ %tmp4 = mul 4 x float %tmp, %tmp3
+ store 4 x float %tmp4, 4 x float* %P3
+ store 4 x float zeroinitializer, 4 x float* %P1
+ store 4 x int zeroinitializer, 4 x int* %P2
+ ret void
+ }
+ 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp X86InstrSSE.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

X86ISelLowering.cpp updated: 1.162 - 1.163
X86InstrSSE.td updated: 1.78 - 1.79
---
Log message:

Promote v4i32, v8i16, v16i8 load to v2i64 load.


---
Diffs of the changes:  (+41 -57)

 X86ISelLowering.cpp |7 +---
 X86InstrSSE.td  |   91 +---
 2 files changed, 41 insertions(+), 57 deletions(-)


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.162 
llvm/lib/Target/X86/X86ISelLowering.cpp:1.163
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.162   Mon Apr 10 19:19:04 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp Wed Apr 12 12:12:36 2006
@@ -302,10 +302,6 @@
 setOperationAction(ISD::SUB,MVT::v4i32, Legal);
 setOperationAction(ISD::MUL,MVT::v2f64, Legal);
 setOperationAction(ISD::LOAD,   MVT::v2f64, Legal);
-setOperationAction(ISD::LOAD,   MVT::v16i8, Legal);
-setOperationAction(ISD::LOAD,   MVT::v8i16, Legal);
-setOperationAction(ISD::LOAD,   MVT::v4i32, Legal);
-setOperationAction(ISD::LOAD,   MVT::v2i64, Legal);
 setOperationAction(ISD::SCALAR_TO_VECTOR,   MVT::v16i8, Custom);
 setOperationAction(ISD::SCALAR_TO_VECTOR,   MVT::v8i16, Custom);
 setOperationAction(ISD::BUILD_VECTOR,   MVT::v2f64, Custom);
@@ -329,7 +325,10 @@
  VT != (unsigned)MVT::v2i64; VT++) {
   setOperationAction(ISD::SELECT, (MVT::ValueType)VT, Promote);
   AddPromotedToType (ISD::SELECT, (MVT::ValueType)VT, MVT::v2i64);
+  setOperationAction(ISD::LOAD,   (MVT::ValueType)VT, Promote);
+  AddPromotedToType (ISD::LOAD,   (MVT::ValueType)VT, MVT::v2i64);
 }
+setOperationAction(ISD::LOAD,   MVT::v2i64, Legal);
 setOperationAction(ISD::SELECT, MVT::v2i64, Custom);
 setOperationAction(ISD::SELECT, MVT::v2f64, Custom);
   }


Index: llvm/lib/Target/X86/X86InstrSSE.td
diff -u llvm/lib/Target/X86/X86InstrSSE.td:1.78 
llvm/lib/Target/X86/X86InstrSSE.td:1.79
--- llvm/lib/Target/X86/X86InstrSSE.td:1.78 Wed Apr 12 00:20:24 2006
+++ llvm/lib/Target/X86/X86InstrSSE.td  Wed Apr 12 12:12:36 2006
@@ -531,7 +531,7 @@
 def Int_CVTTSD2SIrm: SDI0x2C, MRMSrcMem, (ops R32:$dst, f128mem:$src),
  cvttsd2si {$src, $dst|$dst, $src},
  [(set R32:$dst, (int_x86_sse2_cvttsd2si
-  (load addr:$src)))];
+  (loadv2f64 addr:$src)))];
 
 def CVTSD2SIrr: SDI0x2D, MRMSrcReg, (ops R32:$dst, VR128:$src),
 cvtsd2si {$src, $dst|$dst, $src},
@@ -539,7 +539,7 @@
 def CVTSD2SIrm: SDI0x2D, MRMSrcMem, (ops R32:$dst, f128mem:$src),
 cvtsd2si {$src, $dst|$dst, $src},
 [(set R32:$dst, (int_x86_sse2_cvtsd2si
- (load addr:$src)))];
+ (loadv2f64 addr:$src)))];
 
 // Comparison instructions
 let isTwoAddress = 1 in {
@@ -834,7 +834,7 @@
 def CVTDQ2PSrm : I0x5B, MRMSrcMem, (ops VR128:$dst, i128mem:$src),
   cvtdq2ps {$src, $dst|$dst, $src},
   [(set VR128:$dst, (int_x86_sse2_cvtdq2ps
- (load addr:$src)))],
+ (bc_v4i32 (loadv2i64 addr:$src],
  TB, Requires[HasSSE2];
 
 // SSE2 instructions with XS prefix
@@ -845,7 +845,7 @@
 def CVTDQ2PDrm : I0xE6, MRMSrcMem, (ops VR128:$dst, i64mem:$src),
cvtdq2pd {$src, $dst|$dst, $src},
[(set VR128:$dst, (int_x86_sse2_cvtdq2pd
-  (load addr:$src)))],
+  (bc_v4i32 (loadv2i64 addr:$src],
  XS, Requires[HasSSE2];
 
 def CVTPS2PIrr : PSI0x2D, MRMSrcReg, (ops VR64:$dst, VR128:$src),
@@ -863,7 +863,7 @@
 def CVTPS2DQrm : PDI0x5B, MRMSrcMem, (ops VR128:$dst, f128mem:$src),
  cvtps2dq {$src, $dst|$dst, $src},
  [(set VR128:$dst, (int_x86_sse2_cvtps2dq
-(load addr:$src)))];
+(loadv4f32 addr:$src)))];
 // SSE2 packed instructions with XS prefix
 def CVTTPS2DQrr : I0x5B, MRMSrcReg, (ops VR128:$dst, VR128:$src),
 cvttps2dq {$src, $dst|$dst, $src},
@@ -872,7 +872,7 @@
 def CVTTPS2DQrm : I0x5B, MRMSrcMem, (ops VR128:$dst, f128mem:$src),
 cvttps2dq {$src, $dst|$dst, $src},
 [(set VR128:$dst, (int_x86_sse2_cvttps2dq
-   (load addr:$src)))],
+   (loadv4f32 addr:$src)))],
   XS, Requires[HasSSE2];
 
 // SSE2 packed instructions with XD prefix
@@ -883,7 +883,7 @@
 def CVTPD2DQrm : I0xE6, MRMSrcMem, (ops VR128:$dst, f128mem:$src),
 

[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/CodeGen/PowerPC:

buildvec_canonicalize.ll updated: 1.1 - 1.2
---
Log message:

two equivalent vsplti*s in different types should be CSEd.


---
Diffs of the changes:  (+12 -2)

 buildvec_canonicalize.ll |   14 --
 1 files changed, 12 insertions(+), 2 deletions(-)


Index: llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll
diff -u llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll:1.1 
llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll:1.2
--- llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll:1.1   Wed Apr 
12 12:01:11 2006
+++ llvm/test/Regression/CodeGen/PowerPC/buildvec_canonicalize.ll   Wed Apr 
12 12:36:04 2006
@@ -1,7 +1,11 @@
-; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 --enable-unsafe-fp-math | grep 
vxor | wc -l | grep 1
 ; There should be exactly one vxor here.
+; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 --enable-unsafe-fp-math | grep 
vxor | wc -l | grep 1 
 
-void %test(4 x float* %P1, 4 x int* %P2, 4 x float* %P3) {
+; There should be exactly one vsplti here.
+; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 --enable-unsafe-fp-math | grep 
vsplti | wc -l | grep 1
+
+
+void %VXOR(4 x float* %P1, 4 x int* %P2, 4 x float* %P3) {
 %tmp = load 4 x float* %P3
 %tmp3 = load 4 x float* %P1
 %tmp4 = mul 4 x float %tmp, %tmp3
@@ -11,3 +15,9 @@
 ret void
 }
 
+void %VSPLTI(4 x int* %P2, 8 x short* %P3) {
+store 4 x int cast (16 x sbyte  sbyte -1, sbyte -1, sbyte -1, 
sbyte -1, sbyte -1, sbyte -1, sbyte -1, sbyte -1, sbyte -1, sbyte -1, sbyte -1, 
sbyte -1, sbyte -1, sbyte -1, sbyte -1, sbyte -1  to 4 x int), 4 x int* %P2
+store 8 x short  short -1, short -1, short -1, short -1, short -1, 
short -1, short -1, short -1 , 8 x short* %P3
+ret void
+}
+



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


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

2006-04-12 Thread Chris Lattner


Changes in directory llvm/lib/Target/PowerPC:

PPCISelLowering.cpp updated: 1.145 - 1.146
PPCISelLowering.h updated: 1.45 - 1.46
PPCInstrAltivec.td updated: 1.48 - 1.49
---
Log message:

Rename get_VSPLI_elt - get_VSPLTI_elt

Canonicalize BUILD_VECTOR's that match VSPLTI's into a single type for each
form, eliminating a bunch of Pat patterns in the .td file and allowing us to
CSE stuff more aggressively.  This implements 
PowerPC/buildvec_canonicalize.ll:VSPLTI



---
Diffs of the changes:  (+40 -32)

 PPCISelLowering.cpp |   35 ---
 PPCISelLowering.h   |4 ++--
 PPCInstrAltivec.td  |   33 ++---
 3 files changed, 40 insertions(+), 32 deletions(-)


Index: llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.145 
llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.146
--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.145   Wed Apr 12 11:53:28 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp Wed Apr 12 12:37:20 2006
@@ -429,11 +429,11 @@
   return castConstantSDNode(N-getOperand(0))-getValue() / EltSize;
 }
 
-/// get_VSPLI_elt - If this is a build_vector of constants which can be formed
+/// get_VSPLTI_elt - If this is a build_vector of constants which can be formed
 /// by using a vspltis[bhw] instruction of the specified element size, return
 /// the constant being splatted.  The ByteSize field indicates the number of
 /// bytes of each element [124] - [bhw].
-SDOperand PPC::get_VSPLI_elt(SDNode *N, unsigned ByteSize, SelectionDAG DAG) {
+SDOperand PPC::get_VSPLTI_elt(SDNode *N, unsigned ByteSize, SelectionDAG DAG) 
{
   SDOperand OpVal(0, 0);
 
   // If ByteSize of the splat is bigger than the element size of the
@@ -920,7 +920,7 @@
 // Load it out.
 return DAG.getLoad(Op.getValueType(), Store, FIdx, DAG.getSrcValue(NULL));
   }
-  case ISD::BUILD_VECTOR:
+  case ISD::BUILD_VECTOR: {
 // If this is a case we can't handle, return null and let the default
 // expansion code take care of it.  If we CAN select this case, return Op.
 
@@ -937,13 +937,34 @@
   return Op;
 }
 
-if (PPC::get_VSPLI_elt(Op.Val, 1, DAG).Val ||// vspltisb
-PPC::get_VSPLI_elt(Op.Val, 2, DAG).Val ||// vspltish
-PPC::get_VSPLI_elt(Op.Val, 4, DAG).Val)  // vspltisw
+// Check to see if this is something we can use VSPLTI* to form.
+MVT::ValueType CanonicalVT = MVT::Other;
+SDNode *CST = 0;
+
+if ((CST = PPC::get_VSPLTI_elt(Op.Val, 4, DAG).Val))   // vspltisw
+  CanonicalVT = MVT::v4i32;
+else if ((CST = PPC::get_VSPLTI_elt(Op.Val, 2, DAG).Val))  // vspltish
+  CanonicalVT = MVT::v8i16;
+else if ((CST = PPC::get_VSPLTI_elt(Op.Val, 1, DAG).Val))  // vspltisb
+  CanonicalVT = MVT::v16i8;
+
+// If this matches one of the vsplti* patterns, force it to the canonical
+// type for the pattern.
+if (CST) {
+  if (Op.getValueType() != CanonicalVT) {
+// Convert the splatted element to the right element type.
+SDOperand Elt = DAG.getNode(ISD::TRUNCATE, 
+MVT::getVectorBaseType(CanonicalVT), 
+SDOperand(CST, 0));
+std::vectorSDOperand Ops(MVT::getVectorNumElements(CanonicalVT), 
Elt);
+SDOperand Res = DAG.getNode(ISD::BUILD_VECTOR, CanonicalVT, Ops);
+Op = DAG.getNode(ISD::BIT_CONVERT, Op.getValueType(), Res);
+  }
   return Op;
+}
   
 return SDOperand();
-
+  }
   case ISD::VECTOR_SHUFFLE: {
 SDOperand V1 = Op.getOperand(0);
 SDOperand V2 = Op.getOperand(1);


Index: llvm/lib/Target/PowerPC/PPCISelLowering.h
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.h:1.45 
llvm/lib/Target/PowerPC/PPCISelLowering.h:1.46
--- llvm/lib/Target/PowerPC/PPCISelLowering.h:1.45  Sat Apr  8 01:46:53 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.h   Wed Apr 12 12:37:20 2006
@@ -131,11 +131,11 @@
 /// specified isSplatShuffleMask VECTOR_SHUFFLE mask.
 unsigned getVSPLTImmediate(SDNode *N, unsigned EltSize);
 
-/// get_VSPLI_elt - If this is a build_vector of constants which can be
+/// get_VSPLTI_elt - If this is a build_vector of constants which can be
 /// formed by using a vspltis[bhw] instruction of the specified element
 /// size, return the constant being splatted.  The ByteSize field indicates
 /// the number of bytes of each element [124] - [bhw].
-SDOperand get_VSPLI_elt(SDNode *N, unsigned ByteSize, SelectionDAG DAG);
+SDOperand get_VSPLTI_elt(SDNode *N, unsigned ByteSize, SelectionDAG DAG);
   }
   
   class PPCTargetLowering : public TargetLowering {


Index: llvm/lib/Target/PowerPC/PPCInstrAltivec.td
diff -u llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.48 
llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.49
--- llvm/lib/Target/PowerPC/PPCInstrAltivec.td:1.48 Wed Apr 12 11:53:28 2006
+++ llvm/lib/Target/PowerPC/PPCInstrAltivec.td  Wed Apr 12 

[llvm-commits] CVS: llvm/docs/ExtendingLLVM.html

2006-04-12 Thread Chris Lattner


Changes in directory llvm/docs:

ExtendingLLVM.html updated: 1.26 - 1.27
---
Log message:

Update adding an intrinsic to describe that you can now just plop it into the
target .td file instead of adding SDNodes etc.


---
Diffs of the changes:  (+13 -21)

 ExtendingLLVM.html |   34 +-
 1 files changed, 13 insertions(+), 21 deletions(-)


Index: llvm/docs/ExtendingLLVM.html
diff -u llvm/docs/ExtendingLLVM.html:1.26 llvm/docs/ExtendingLLVM.html:1.27
--- llvm/docs/ExtendingLLVM.html:1.26   Mon Mar 13 23:39:39 2006
+++ llvm/docs/ExtendingLLVM.htmlWed Apr 12 12:42:39 2006
@@ -53,9 +53,9 @@
 emmany/em LLVM analyses and transformations, so it may be quite a bit of
 work./p
 
-pAdding an a href=#intrinsicintrinsic function/a is easier than adding
-an instruction, and is transparent to optimization passes which treat it as an
-unanalyzable function.  If your added functionality can be expressed as a
+pAdding an a href=#intrinsicintrinsic function/a is far easier than
+adding an instruction, and is transparent to optimization passes.  If your 
added
+functionality can be expressed as a
 function call, an intrinsic function is the method of choice for LLVM
 extension./p
 
@@ -85,8 +85,9 @@
 what the restrictions are.  Talk to other people about it so that you are
 sure it's a good idea./li
 
-littllvm/include/llvm/Intrinsics.td/tt:
-Add an entry for your intrinsic./li
+littllvm/include/llvm/Intrinsics*.td/tt:
+Add an entry for your intrinsic.  Describe its memory access 
characteristics
+for optimization (this controls whether it will be DCE'd, CSE'd, etc)./li
 
 littllvm/lib/Analysis/ConstantFolding.cpp/tt: If it is possible to 
 constant fold your intrinsic, add support to it in the 
@@ -116,22 +117,13 @@
 /dd
 
 dl
-dtAdd support to the SelectionDAG Instruction Selector in 
-ttlib/CodeGen/SelectionDAG//tt/dt
+dtAdd support to the .td file for the target(s) of your choice in 
+   ttlib/Target/*/*.td/tt./dt
 
-ddSince most targets in LLVM use the SelectionDAG framework for generating
-code, you will likely need to add support for your intrinsic there as well.
-This is usually accomplished by adding a new node, and then teaching the
-SelectionDAG code how to handle that node.  To do this, follow the steps in
-the a href=#sdnodeAdding a new SelectionDAG node/a section./dd
-
-dl
-dtOnce you have added the new node, add code to 
-ttSelectionDAG/SelectionDAGISel.cpp/tt to recognize the intrinsic.  In most
-cases, the intrinsic will just be turned into the node you just added.  For an
-example of this, see how ttvisitIntrinsicCall/tt handles 
-ttIntrinsic::ctpop_*/tt.
-/dt
+ddThis is usually a matter of adding a pattern to the .td file that matches
+the intrinsic, though it may obviously require adding the instructions you
+want to generate as well.  There are lots of examples in the PowerPC and 
X86
+backend to follow./dd
 
 /div
 
@@ -390,7 +382,7 @@
 
   a href=http://llvm.org;The LLVM Compiler Infrastructure/a
   br
-  Last modified: $Date: 2006/03/14 05:39:39 $
+  Last modified: $Date: 2006/04/12 17:42:39 $
 /address
 
 /body



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/utils/OldenDataRecover.pl

2006-04-12 Thread Andrew Lenharth


Changes in directory llvm/utils:

OldenDataRecover.pl added (r1.1)
---
Log message:

make recovering running_Olden data easier when the nightly tester eats the 
graphs

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

 OldenDataRecover.pl |   37 +
 1 files changed, 37 insertions(+)


Index: llvm/utils/OldenDataRecover.pl
diff -c /dev/null llvm/utils/OldenDataRecover.pl:1.1
*** /dev/null   Wed Apr 12 12:41:29 2006
--- llvm/utils/OldenDataRecover.pl  Wed Apr 12 12:41:19 2006
***
*** 0 
--- 1,37 
+ #this script is intended to help recover the running graphs when
+ #the nightly tester decides to eat them.
+ 
+ #zgrep -E (=)|(TEST-RESULT-llc-time) *-Olden-tests.txt* |perl this 
 file
+ #zgrep -E (=)|(TEST-RESULT-compile.*bc) *-Olden-tests.tx* |perl 
this file
+ 
+ while () {
+   if (/(\d*-\d*-\d*)-.*=.*\/(.*)\' Program/) {
+ #print $1 $2\n;
+ $curP = $2;
+ $curD = $1;
+ $dates{$1} = 1;
+   } elsif (/(\d*-\d*-\d*)-.*TEST-RESULT-.*: program (\d*\.\d*)/) {
+ #print $1 $2\n;
+ if ($curD eq $1) {
+   $$data{$curD}{$curP} = $2;
+ }
+   } elsif (/(\d*-\d*-\d*)-.*TEST-RESULT-.*: (\d*)/) {
+ #print $1 $2\n;
+ if ($curD eq $1) {
+   $$data{$curD}{$curP} = $2;
+ }
+   }
+ }
+ @progs = (bh, em3d, mst, power, tsp, bisort, health, 
perimeter, treeadd, voronoi);
+ 
+ foreach $date (sort keys %dates) {
+   print $date: ;
+   foreach $prog (@progs) {
+ if ($$data{$date}{$prog}) {
+   print  $$data{$date}{$prog};
+ } else {
+   print  0;
+ }
+   }
+   print \n;
+ }



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/VMCore/AutoUpgrade.cpp

2006-04-12 Thread Reid Spencer


Changes in directory llvm/lib/VMCore:

AutoUpgrade.cpp updated: 1.17 - 1.18
---
Log message:

Don't emit useless warning messages.


---
Diffs of the changes:  (+3 -2)

 AutoUpgrade.cpp |5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)


Index: llvm/lib/VMCore/AutoUpgrade.cpp
diff -u llvm/lib/VMCore/AutoUpgrade.cpp:1.17 
llvm/lib/VMCore/AutoUpgrade.cpp:1.18
--- llvm/lib/VMCore/AutoUpgrade.cpp:1.17Sat Mar 25 12:40:47 2006
+++ llvm/lib/VMCore/AutoUpgrade.cpp Wed Apr 12 12:56:16 2006
@@ -192,8 +192,9 @@
 Function *llvm::UpgradeIntrinsicFunction(Function* F) {
   // See if its one of the name's we're interested in.
   if (Function *R = getUpgradedIntrinsic(F)) {
-std::cerr  WARNING: change   F-getName()   to 
-   R-getName()  \n;
+if (R-getName() != F-getName())
+  std::cerr  WARNING: change   F-getName()   to 
+ R-getName()  \n;
 return R;
   }
   return 0;



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/InstCombine/cast.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/Transforms/InstCombine:

cast.ll updated: 1.26 - 1.27
---
Log message:

These casts should turn into gep instructions


---
Diffs of the changes:  (+12 -1)

 cast.ll |   13 -
 1 files changed, 12 insertions(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/InstCombine/cast.ll
diff -u llvm/test/Regression/Transforms/InstCombine/cast.ll:1.26 
llvm/test/Regression/Transforms/InstCombine/cast.ll:1.27
--- llvm/test/Regression/Transforms/InstCombine/cast.ll:1.26Thu Jan 19 
01:39:20 2006
+++ llvm/test/Regression/Transforms/InstCombine/cast.ll Wed Apr 12 13:07:41 2006
@@ -1,5 +1,5 @@
 ; Tests to make sure elimination of casts is working correctly
-
+; RUN: llvm-as  %s | opt -instcombine -disable-output 
 ; RUN: llvm-as  %s | opt -instcombine | llvm-dis | grep '%c' | not grep cast
 
 %inbuf = external global [32832 x ubyte]
@@ -166,3 +166,14 @@
%D = cast double %c to int
ret int %D
 }
+
+[4 x float]* %test27([9 x [4 x float]]* %A) {
+%c = cast [9 x [4 x float]]* %A to [4 x float]*
+   ret [4 x float]* %c
+}
+
+float* %test28([4 x float]* %A) {
+%c = cast [4 x float]* %A to float*
+   ret float* %c
+}
+



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Makefile

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test:

Makefile updated: 1.85 - 1.86
---
Log message:

Added llvmgcc version to allow tests to be xfailed by frontend version.


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

 Makefile |1 +
 1 files changed, 1 insertion(+)


Index: llvm/test/Makefile
diff -u llvm/test/Makefile:1.85 llvm/test/Makefile:1.86
--- llvm/test/Makefile:1.85 Thu Apr  6 17:22:08 2006
+++ llvm/test/Makefile  Wed Apr 12 13:08:25 2006
@@ -41,6 +41,7 @@
@echo '# Do not edit here.  If you wish to override these values' 
site.tmp
@echo '# edit the last section' site.tmp
@echo set target_triplet $(TARGET_TRIPLE)  site.tmp
+   @echo set llvmgcc_version $(LLVMGCC_VERSION)  site.tmp
@echo 'set prcontext $(TCLSH) 
$(LLVM_SRC_ROOT)/test/Scripts/prcontext.tcl'  site.tmp
@echo 'set srcdir $(LLVM_SRC_ROOT)/test' site.tmp
@echo set objdir $(LLVM_OBJ_ROOT)/test site.tmp



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Transforms/Scalar/InstructionCombining.cpp

2006-04-12 Thread Chris Lattner


Changes in directory llvm/lib/Transforms/Scalar:

InstructionCombining.cpp updated: 1.464 - 1.465
---
Log message:

Turn casts into getelementptr's when possible.  This enables SROA to be more
aggressive in some cases where LLVMGCC 4 is inserting casts for no reason.

This implements InstCombine/cast.ll:test27/28.



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

 InstructionCombining.cpp |   23 +++
 1 files changed, 23 insertions(+)


Index: llvm/lib/Transforms/Scalar/InstructionCombining.cpp
diff -u llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.464 
llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.465
--- llvm/lib/Transforms/Scalar/InstructionCombining.cpp:1.464   Mon Apr 10 
18:06:36 2006
+++ llvm/lib/Transforms/Scalar/InstructionCombining.cpp Wed Apr 12 13:09:35 2006
@@ -4813,7 +4813,30 @@
   if (isaPHINode(Src))
 if (Instruction *NV = FoldOpIntoPhi(CI))
   return NV;
+  
+  // If the source and destination are pointers, and this cast is equivalent to
+  // a getelementptr X, 0, 0, 0...  turn it into the appropriate getelementptr.
+  // This can enhance SROA and other transforms that want type-safe pointers.
+  if (const PointerType *DstPTy = dyn_castPointerType(CI.getType()))
+if (const PointerType *SrcPTy = dyn_castPointerType(Src-getType())) {
+  const Type *DstTy = DstPTy-getElementType();
+  const Type *SrcTy = SrcPTy-getElementType();
+  
+  Constant *ZeroUInt = Constant::getNullValue(Type::UIntTy);
+  unsigned NumZeros = 0;
+  while (SrcTy != DstTy  
+ isaCompositeType(SrcTy)  !isaPointerType(SrcTy)) {
+SrcTy = castCompositeType(SrcTy)-getTypeAtIndex(ZeroUInt);
+++NumZeros;
+  }
 
+  // If we found a path from the src to dest, create the getelementptr now.
+  if (SrcTy == DstTy) {
+std::vectorValue* Idxs(NumZeros+1, ZeroUInt);
+return new GetElementPtrInst(Src, Idxs);
+  }
+}
+  
   // If the source value is an instruction with only this use, we can attempt 
to
   // propagate the cast into the instruction.  Also, only handle integral types
   // for now.



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/PowerPC/vec_constants.ll

2006-04-12 Thread Chris Lattner


Changes in directory llvm/test/Regression/CodeGen/PowerPC:

vec_constants.ll added (r1.1)
---
Log message:

new testcase


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

 vec_constants.ll |   20 
 1 files changed, 20 insertions(+)


Index: llvm/test/Regression/CodeGen/PowerPC/vec_constants.ll
diff -c /dev/null llvm/test/Regression/CodeGen/PowerPC/vec_constants.ll:1.1
*** /dev/null   Wed Apr 12 14:04:37 2006
--- llvm/test/Regression/CodeGen/PowerPC/vec_constants.ll   Wed Apr 12 
14:04:27 2006
***
*** 0 
--- 1,20 
+ ; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 
+ ; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 | not grep CPI
+ 
+ 
+ ; Tests spltw(0x8000) and spltw(0x7FFF).
+ void %test1(4 x int* %P1, 4 x int* %P2, 4 x float* %P3) {
+ %tmp = load 4 x int* %P1  
+ %tmp4 = and 4 x int %tmp,  int -2147483648, int -2147483648, int 
-2147483648, int -2147483648 
+ store 4 x int %tmp4, 4 x int* %P1
+ %tmp7 = load 4 x int* %P2 
+ %tmp9 = and 4 x int %tmp7,  int 2147483647, int 2147483647, int 
2147483647, int 2147483647
+ store 4 x int %tmp9, 4 x int* %P2
+ %tmp = load 4 x float* %P3
+ %tmp11 = cast 4 x float %tmp to 4 x int 
+ %tmp12 = and 4 x int %tmp11,  int 2147483647, int 2147483647, int 
2147483647, int 2147483647 
+ %tmp13 = cast 4 x int %tmp12 to 4 x float
+ store 4 x float %tmp13, 4 x float* %P3
+ ret void
+ }
+ 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/utils/Makefile

2006-04-12 Thread Reid Spencer


Changes in directory llvm/utils:

Makefile updated: 1.8 - 1.9
---
Log message:

Add the llvm-config directory to the EXTRA_DIST line so it gets distributed
even though its not being built currently. This prevents dist-check from
failing because configure can't find llvm-config.in.in


---
Diffs of the changes:  (+2 -1)

 Makefile |3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)


Index: llvm/utils/Makefile
diff -u llvm/utils/Makefile:1.8 llvm/utils/Makefile:1.9
--- llvm/utils/Makefile:1.8 Thu Mar 23 17:21:29 2006
+++ llvm/utils/Makefile Wed Apr 12 14:06:14 2006
@@ -13,7 +13,8 @@
 EXTRA_DIST = check-each-file codegen-diff countloc.sh cvsupdate emacs \
 getsrcs.sh llvmdo llvmgrep llvm-native-gcc llvm-native-gxx \
  makellvm NightlyTest.gnuplot NightlyTest.pl \
-NightlyTestTemplate.html profile.pl RegressionFinder.pl vim
+NightlyTestTemplate.html profile.pl RegressionFinder.pl vim \
+llvm-config
 
 include $(LEVEL)/Makefile.common
 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/PowerPC/PPCISelLowering.cpp README_ALTIVEC.txt

2006-04-12 Thread Chris Lattner


Changes in directory llvm/lib/Target/PowerPC:

PPCISelLowering.cpp updated: 1.146 - 1.147
README_ALTIVEC.txt updated: 1.20 - 1.21
---
Log message:

Add a new way to match vector constants, which make it easier to bang bits of
different types.

Codegen spltw(0x7FFF) and spltw(0x8000) without a constant pool load,
implementing PowerPC/vec_constants.ll:test1.  This compiles:

typedef float vf __attribute__ ((vector_size (16)));
typedef int vi __attribute__ ((vector_size (16)));
void test(vi *P1, vi *P2, vf *P3) {
  *P1 = (vi){0x8000,0x8000,0x8000,0x8000};
  *P2 = (vi){0x7FFF,0x7FFF,0x7FFF,0x7FFF};
  *P3 = vec_abs((vector float)*P3);
}

to:

_test:
mfspr r2, 256
oris r6, r2, 49152
mtspr 256: http://llvm.cs.uiuc.edu/PR256 , r6
vspltisw v0, -1
vslw v0, v0, v0
lvx v1, 0, r3
vand v1, v1, v0
stvx v1, 0, r3
lvx v1, 0, r4
vandc v1, v1, v0
stvx v1, 0, r4
lvx v1, 0, r5
vandc v0, v1, v0
stvx v0, 0, r5
mtspr 256: http://llvm.cs.uiuc.edu/PR256 , r2
blr

instead of (with two constant pool entries):

_test:
mfspr r2, 256
oris r6, r2, 49152
mtspr 256: http://llvm.cs.uiuc.edu/PR256 , r6
li r6, lo16(LCPI1_0)
lis r7, ha16(LCPI1_0)
li r8, lo16(LCPI1_1)
lis r9, ha16(LCPI1_1)
lvx v0, r7, r6
lvx v1, 0, r3
vand v0, v1, v0
stvx v0, 0, r3
lvx v0, r9, r8
lvx v1, 0, r4
vand v1, v1, v0
stvx v1, 0, r4
lvx v1, 0, r5
vand v0, v1, v0
stvx v0, 0, r5
mtspr 256: http://llvm.cs.uiuc.edu/PR256 , r2
blr

GCC produces (with 2 cp entries):

_test:
mfspr r0,256
stw r0,-4(r1)
oris r0,r0,0xc00c
mtspr 256: http://llvm.cs.uiuc.edu/PR256 ,r0
lis r2,ha16(LC0)
lis r9,ha16(LC1)
la r2,lo16(LC0)(r2)
lvx v0,0,r3
lvx v1,0,r5
la r9,lo16(LC1)(r9)
lwz r12,-4(r1)
lvx v12,0,r2
lvx v13,0,r9
vand v0,v0,v12
stvx v0,0,r3
vspltisw v0,-1
vslw v12,v0,v0
vandc v1,v1,v12
stvx v1,0,r5
lvx v0,0,r4
vand v0,v0,v13
stvx v0,0,r4
mtspr 256: http://llvm.cs.uiuc.edu/PR256 ,r12
blr



---
Diffs of the changes:  (+91 -7)

 PPCISelLowering.cpp |   89 +---
 README_ALTIVEC.txt  |9 +++--
 2 files changed, 91 insertions(+), 7 deletions(-)


Index: llvm/lib/Target/PowerPC/PPCISelLowering.cpp
diff -u llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.146 
llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.147
--- llvm/lib/Target/PowerPC/PPCISelLowering.cpp:1.146   Wed Apr 12 12:37:20 2006
+++ llvm/lib/Target/PowerPC/PPCISelLowering.cpp Wed Apr 12 14:07:14 2006
@@ -544,6 +544,48 @@
   return SDOperand();
 }
 
+// If this is a vector of constants or undefs, get the bits.  A bit in
+// UndefBits is set if the corresponding element of the vector is an 
+// ISD::UNDEF value.  For undefs, the corresponding VectorBits values are
+// zero.   Return true if this is not an array of constants, false if it is.
+//
+// Note that VectorBits/UndefBits are returned in 'little endian' form, so
+// elements 0,1 go in VectorBits[0] and 2,3 go in VectorBits[1] for a v4i32.
+static bool GetConstantBuildVectorBits(SDNode *BV, uint64_t VectorBits[2],
+   uint64_t UndefBits[2]) {
+  // Start with zero'd results.
+  VectorBits[0] = VectorBits[1] = UndefBits[0] = UndefBits[1] = 0;
+  
+  unsigned EltBitSize = MVT::getSizeInBits(BV-getOperand(0).getValueType());
+  for (unsigned i = 0, e = BV-getNumOperands(); i != e; ++i) {
+SDOperand OpVal = BV-getOperand(i);
+
+unsigned PartNo = i = e/2; // In the upper 128 bits?
+unsigned SlotNo = i  (e/2-1);  // Which subpiece of the uint64_t it is.
+
+uint64_t EltBits = 0;
+if (OpVal.getOpcode() == ISD::UNDEF) {
+  uint64_t EltUndefBits = ~0U  (32-EltBitSize);
+  UndefBits[PartNo] |= EltUndefBits  (SlotNo*EltBitSize);
+  continue;
+} else if (ConstantSDNode *CN = dyn_castConstantSDNode(OpVal)) {
+  EltBits = CN-getValue()  (~0U  (32-EltBitSize));
+} else if (ConstantFPSDNode *CN = dyn_castConstantFPSDNode(OpVal)) {
+  assert(CN-getValueType(0) == MVT::f32 
+ Only one legal FP vector type!);
+  EltBits = FloatToBits(CN-getValue());
+} else {
+  // Nonconstant element.
+  return true;
+}
+
+VectorBits[PartNo] |= EltBits  (SlotNo*EltBitSize);
+  }
+  
+  //printf(%llx %llx  %llx %llx\n, 
+  //   VectorBits[0], VectorBits[1], UndefBits[0], UndefBits[1]);
+  return false;
+}
 
 /// LowerOperation - Provide custom lowering hooks for some operations.
 ///
@@ -922,12 +964,20 @@
   }
   case ISD::BUILD_VECTOR: {
 // If this is a case we can't handle, return null and let the default
-// 

[llvm-commits] CVS: llvm/Makefile

2006-04-12 Thread Reid Spencer


Changes in directory llvm:

Makefile updated: 1.57 - 1.58
---
Log message:

Include the win32 and Xcode directories in the distribution.


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

 Makefile |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/Makefile
diff -u llvm/Makefile:1.57 llvm/Makefile:1.58
--- llvm/Makefile:1.57  Fri Apr  7 21:14:37 2006
+++ llvm/Makefile   Wed Apr 12 15:53:14 2006
@@ -25,7 +25,7 @@
 DIRS += docs
   endif
 endif
-EXTRA_DIST := test llvm.spec include
+EXTRA_DIST := test llvm.spec include win32 Xcode
 
 include $(LLVM_SRC_ROOT)/Makefile.rules
 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/utils/Makefile

2006-04-12 Thread Reid Spencer


Changes in directory llvm/utils:

Makefile updated: 1.9 - 1.10
---
Log message:

Additional files to distribute.


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

 Makefile |   12 +++-
 1 files changed, 7 insertions(+), 5 deletions(-)


Index: llvm/utils/Makefile
diff -u llvm/utils/Makefile:1.9 llvm/utils/Makefile:1.10
--- llvm/utils/Makefile:1.9 Wed Apr 12 14:06:14 2006
+++ llvm/utils/Makefile Wed Apr 12 15:54:01 2006
@@ -10,11 +10,13 @@
 LEVEL = ..
 DIRS = Burg TableGen fpcmp
 
-EXTRA_DIST = check-each-file codegen-diff countloc.sh cvsupdate emacs \
-getsrcs.sh llvmdo llvmgrep llvm-native-gcc llvm-native-gxx \
- makellvm NightlyTest.gnuplot NightlyTest.pl \
-NightlyTestTemplate.html profile.pl RegressionFinder.pl vim \
-llvm-config
+EXTRA_DIST := cgiplotNLT.pl check-each-file codegen-diff countloc.sh cvsupdate 
\
+  DSAclean.py DSAextract.py emacs findsym.pl GenLibDeps.pl \
+ getsrcs.sh importNLT.pl llvmdo llvmgrep llvm-native-gcc \
+ llvm-native-gxx makellvm NightlyTest.gnuplot NightlyTest.pl \
+ NightlyTestTemplate.html NLT.schema parseNTL.pl plotNLT.pl \
+ profile.pl RegressionFinder.pl userloc.pl webNLT.pl \
+ vim llvm-config
 
 include $(LEVEL)/Makefile.common
 



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/Generic/vector.ll

2006-04-12 Thread Reid Spencer


Changes in directory llvm/test/Regression/CodeGen/Generic:

vector.ll updated: 1.8 - 1.9
---
Log message:

Don't dump the llc assembly output to stdout.


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

 vector.ll |   10 +-
 1 files changed, 5 insertions(+), 5 deletions(-)


Index: llvm/test/Regression/CodeGen/Generic/vector.ll
diff -u llvm/test/Regression/CodeGen/Generic/vector.ll:1.8 
llvm/test/Regression/CodeGen/Generic/vector.ll:1.9
--- llvm/test/Regression/CodeGen/Generic/vector.ll:1.8  Fri Mar 31 11:59:16 2006
+++ llvm/test/Regression/CodeGen/Generic/vector.ll  Wed Apr 12 16:03:04 2006
@@ -1,9 +1,9 @@
 ; Test that vectors are scalarized/lowered correctly.
-; RUN: llvm-as  %s | llc  
-; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5 
-; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g3 
-; RUN: llvm-as  %s | llc -march=x86 -mcpu=i386 
-; RUN: llvm-as  %s | llc -march=x86 -mcpu=yonah
+; RUN: llvm-as  %s | llc  /dev/null  
+; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g5  /dev/null 
+; RUN: llvm-as  %s | llc -march=ppc32 -mcpu=g3  /dev/null 
+; RUN: llvm-as  %s | llc -march=x86 -mcpu=i386  /dev/null 
+; RUN: llvm-as  %s | llc -march=x86 -mcpu=yonah -o /dev/null
 
 %f1 = type 1 x float
 %f2 = type 2 x float



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/CodeGen/SelectionDAG:

LegalizeDAG.cpp updated: 1.363 - 1.364
---
Log message:

Promote vector AND, OR, and XOR

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

 LegalizeDAG.cpp |   27 +++
 1 files changed, 27 insertions(+)


Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.363 
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.364
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.363 Wed Apr 12 11:33:18 2006
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp   Wed Apr 12 16:20:24 2006
@@ -2076,6 +2076,25 @@
   Result = DAG.getNode(ISD::BUILD_VECTOR, Node-getValueType(0), Ops);
   break;
 }
+case TargetLowering::Promote: {
+  switch (Node-getOpcode()) {
+  default:  assert(0  Do not know how to promote this BinOp!);
+  case ISD::AND:
+  case ISD::OR:
+  case ISD::XOR: {
+MVT::ValueType OVT = Node-getValueType(0);
+MVT::ValueType NVT = TLI.getTypeToPromoteTo(Node-getOpcode(), OVT);
+assert(MVT::isVector(OVT)  Cannot promote this BinOp!);
+// Bit convert each of the values to the new type.
+Tmp1 = DAG.getNode(ISD::BIT_CONVERT, NVT, Tmp1);
+Tmp2 = DAG.getNode(ISD::BIT_CONVERT, NVT, Tmp2);
+Result = DAG.getNode(Node-getOpcode(), NVT, Tmp1, Tmp2);
+// Bit convert the result back the original type.
+Result = DAG.getNode(ISD::BIT_CONVERT, OVT, Result);
+break;
+  }
+  }
+}
 }
 break;
 
@@ -2953,6 +2972,14 @@
   case ISD::AND:
   case ISD::OR:
   case ISD::XOR:
+// The input may have strange things in the top bits of the registers, but
+// these operations don't care.  They may have weird bits going out, but
+// that too is okay if they are integer operations.
+Tmp1 = PromoteOp(Node-getOperand(0));
+Tmp2 = PromoteOp(Node-getOperand(1));
+assert(Tmp1.getValueType() == NVT  Tmp2.getValueType() == NVT);
+Result = DAG.getNode(Node-getOpcode(), NVT, Tmp1, Tmp2);
+break;
   case ISD::ADD:
   case ISD::SUB:
   case ISD::MUL:



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/README.txt X86ISelLowering.cpp X86InstrSSE.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

README.txt updated: 1.85 - 1.86
X86ISelLowering.cpp updated: 1.163 - 1.164
X86InstrSSE.td updated: 1.79 - 1.80
---
Log message:

All integer logical ops (pand, por, pxor) are now promoted to v2i64.
Clean up and fix various logical ops issues.


---
Diffs of the changes:  (+71 -146)

 README.txt  |4 +
 X86ISelLowering.cpp |   45 -
 X86InstrSSE.td  |  168 
 3 files changed, 71 insertions(+), 146 deletions(-)


Index: llvm/lib/Target/X86/README.txt
diff -u llvm/lib/Target/X86/README.txt:1.85 llvm/lib/Target/X86/README.txt:1.86
--- llvm/lib/Target/X86/README.txt:1.85 Mon Apr 10 16:51:03 2006
+++ llvm/lib/Target/X86/README.txt  Wed Apr 12 16:21:57 2006
@@ -794,3 +794,7 @@
 X86RegisterInfo::copyRegToReg() returns X86::MOVAPSrr for VR128. Is it possible
 to choose between movaps, movapd, and movdqa based on types of source and
 destination?
+
+How about andps, andpd, and pand? Do we really care about the type of the 
packed
+elements? If not, why not always use the ps variants which are likely to be
+shorter.


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.163 
llvm/lib/Target/X86/X86ISelLowering.cpp:1.164
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.163   Wed Apr 12 12:12:36 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp Wed Apr 12 16:21:57 2006
@@ -275,6 +275,9 @@
   if (Subtarget-hasSSE1()) {
 addRegisterClass(MVT::v4f32, X86::VR128RegisterClass);
 
+setOperationAction(ISD::AND,MVT::v4f32, Legal);
+setOperationAction(ISD::OR, MVT::v4f32, Legal);
+setOperationAction(ISD::XOR,MVT::v4f32, Legal);
 setOperationAction(ISD::ADD,MVT::v4f32, Legal);
 setOperationAction(ISD::SUB,MVT::v4f32, Legal);
 setOperationAction(ISD::MUL,MVT::v4f32, Legal);
@@ -301,36 +304,43 @@
 setOperationAction(ISD::SUB,MVT::v8i16, Legal);
 setOperationAction(ISD::SUB,MVT::v4i32, Legal);
 setOperationAction(ISD::MUL,MVT::v2f64, Legal);
-setOperationAction(ISD::LOAD,   MVT::v2f64, Legal);
+
 setOperationAction(ISD::SCALAR_TO_VECTOR,   MVT::v16i8, Custom);
 setOperationAction(ISD::SCALAR_TO_VECTOR,   MVT::v8i16, Custom);
+setOperationAction(ISD::INSERT_VECTOR_ELT,  MVT::v8i16, Custom);
+
+// Custom lower build_vector, vector_shuffle, and extract_vector_elt.
+for (unsigned VT = (unsigned)MVT::v16i8; VT != (unsigned)MVT::v2i64; VT++) 
{
+  setOperationAction(ISD::BUILD_VECTOR,(MVT::ValueType)VT, Custom);
+  setOperationAction(ISD::VECTOR_SHUFFLE,  (MVT::ValueType)VT, Custom);
+  setOperationAction(ISD::EXTRACT_VECTOR_ELT,  (MVT::ValueType)VT, Custom);
+}
 setOperationAction(ISD::BUILD_VECTOR,   MVT::v2f64, Custom);
-setOperationAction(ISD::BUILD_VECTOR,   MVT::v16i8, Custom);
-setOperationAction(ISD::BUILD_VECTOR,   MVT::v8i16, Custom);
-setOperationAction(ISD::BUILD_VECTOR,   MVT::v4i32, Custom);
 setOperationAction(ISD::BUILD_VECTOR,   MVT::v2i64, Custom);
 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2f64, Custom);
-setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v16i8, Custom);
-setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v8i16, Custom);
-setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v4i32, Custom);
 setOperationAction(ISD::VECTOR_SHUFFLE, MVT::v2i64, Custom);
 setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2f64, Custom);
-setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v8i16, Custom);
-setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v4i32, Custom);
-setOperationAction(ISD::INSERT_VECTOR_ELT,  MVT::v8i16, Custom);
+setOperationAction(ISD::EXTRACT_VECTOR_ELT, MVT::v2i64, Custom);
 
-// Promote v16i8, v8i16, v4i32 selects to v2i64. Custom lower v2i64, v2f64,
-// and v4f32 selects.
-for (unsigned VT = (unsigned)MVT::v16i8;
- VT != (unsigned)MVT::v2i64; VT++) {
-  setOperationAction(ISD::SELECT, (MVT::ValueType)VT, Promote);
-  AddPromotedToType (ISD::SELECT, (MVT::ValueType)VT, MVT::v2i64);
+// Promote v16i8, v8i16, v4i32 load, select, and, or, xor to v2i64. 
+for (unsigned VT = (unsigned)MVT::v16i8; VT != (unsigned)MVT::v2i64; VT++) 
{
+  setOperationAction(ISD::AND,(MVT::ValueType)VT, Promote);
+  AddPromotedToType (ISD::AND,(MVT::ValueType)VT, MVT::v2i64);
+  setOperationAction(ISD::OR, (MVT::ValueType)VT, Promote);
+  AddPromotedToType (ISD::OR, (MVT::ValueType)VT, MVT::v2i64);
+  setOperationAction(ISD::XOR,(MVT::ValueType)VT, Promote);
+  AddPromotedToType (ISD::XOR,(MVT::ValueType)VT, MVT::v2i64);
   setOperationAction(ISD::LOAD,   (MVT::ValueType)VT, Promote);
   AddPromotedToType (ISD::LOAD,   (MVT::ValueType)VT, 

[llvm-commits] CVS: llvm/test/Regression/Linker/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Linker:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Linker/dg.exp
diff -u llvm/test/Regression/Linker/dg.exp:1.2 
llvm/test/Regression/Linker/dg.exp:1.3
--- llvm/test/Regression/Linker/dg.exp:1.2  Fri Nov 19 16:43:50 2004
+++ llvm/test/Regression/Linker/dg.exp  Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Other/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Other:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Other/dg.exp
diff -u llvm/test/Regression/Other/dg.exp:1.2 
llvm/test/Regression/Other/dg.exp:1.3
--- llvm/test/Regression/Other/dg.exp:1.2   Fri Nov 19 16:43:52 2004
+++ llvm/test/Regression/Other/dg.exp   Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/SCCP/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/SCCP:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/SCCP/dg.exp
diff -u llvm/test/Regression/Transforms/SCCP/dg.exp:1.2 
llvm/test/Regression/Transforms/SCCP/dg.exp:1.3
--- llvm/test/Regression/Transforms/SCCP/dg.exp:1.2 Fri Nov 19 16:45:12 2004
+++ llvm/test/Regression/Transforms/SCCP/dg.exp Wed Apr 12 16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/ADCE/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/ADCE:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/ADCE/dg.exp
diff -u llvm/test/Regression/Transforms/ADCE/dg.exp:1.2 
llvm/test/Regression/Transforms/ADCE/dg.exp:1.3
--- llvm/test/Regression/Transforms/ADCE/dg.exp:1.2 Fri Nov 19 16:43:56 2004
+++ llvm/test/Regression/Transforms/ADCE/dg.exp Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/ExecutionEngine/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/ExecutionEngine:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/ExecutionEngine/dg.exp
diff -u llvm/test/Regression/ExecutionEngine/dg.exp:1.2 
llvm/test/Regression/ExecutionEngine/dg.exp:1.3
--- llvm/test/Regression/ExecutionEngine/dg.exp:1.2 Fri Nov 19 16:43:48 2004
+++ llvm/test/Regression/ExecutionEngine/dg.exp Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/Inline/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/Inline:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/Inline/dg.exp
diff -u llvm/test/Regression/Transforms/Inline/dg.exp:1.2 
llvm/test/Regression/Transforms/Inline/dg.exp:1.3
--- llvm/test/Regression/Transforms/Inline/dg.exp:1.2   Fri Nov 19 16:44:29 2004
+++ llvm/test/Regression/Transforms/Inline/dg.exp   Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Bytecode/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Bytecode:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Bytecode/dg.exp
diff -u llvm/test/Regression/Bytecode/dg.exp:1.2 
llvm/test/Regression/Bytecode/dg.exp:1.3
--- llvm/test/Regression/Bytecode/dg.exp:1.2Fri Nov 19 16:43:20 2004
+++ llvm/test/Regression/Bytecode/dg.expWed Apr 12 16:57:33 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LoopUnroll/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LoopUnroll:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LoopUnroll/dg.exp
diff -u llvm/test/Regression/Transforms/LoopUnroll/dg.exp:1.2 
llvm/test/Regression/Transforms/LoopUnroll/dg.exp:1.3
--- llvm/test/Regression/Transforms/LoopUnroll/dg.exp:1.2   Fri Nov 19 
16:44:39 2004
+++ llvm/test/Regression/Transforms/LoopUnroll/dg.exp   Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Analysis/Dominators/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Analysis/Dominators:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Analysis/Dominators/dg.exp
diff -u llvm/test/Regression/Analysis/Dominators/dg.exp:1.2 
llvm/test/Regression/Analysis/Dominators/dg.exp:1.3
--- llvm/test/Regression/Analysis/Dominators/dg.exp:1.2 Fri Nov 19 16:42:59 2004
+++ llvm/test/Regression/Analysis/Dominators/dg.exp Wed Apr 12 16:57:33 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LICM/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LICM:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LICM/dg.exp
diff -u llvm/test/Regression/Transforms/LICM/dg.exp:1.2 
llvm/test/Regression/Transforms/LICM/dg.exp:1.3
--- llvm/test/Regression/Transforms/LICM/dg.exp:1.2 Fri Nov 19 16:44:34 2004
+++ llvm/test/Regression/Transforms/LICM/dg.exp Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/SparcV9/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/CodeGen/SparcV9:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/CodeGen/SparcV9/dg.exp
diff -u llvm/test/Regression/CodeGen/SparcV9/dg.exp:1.2 
llvm/test/Regression/CodeGen/SparcV9/dg.exp:1.3
--- llvm/test/Regression/CodeGen/SparcV9/dg.exp:1.2 Fri Nov 19 16:43:40 2004
+++ llvm/test/Regression/CodeGen/SparcV9/dg.exp Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Archive/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Archive:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Archive/dg.exp
diff -u llvm/test/Regression/Archive/dg.exp:1.2 
llvm/test/Regression/Archive/dg.exp:1.3
--- llvm/test/Regression/Archive/dg.exp:1.2 Sat Nov 20 01:25:10 2004
+++ llvm/test/Regression/Archive/dg.exp Wed Apr 12 16:57:33 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/ConstProp/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/ConstProp:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/ConstProp/dg.exp
diff -u llvm/test/Regression/Transforms/ConstProp/dg.exp:1.2 
llvm/test/Regression/Transforms/ConstProp/dg.exp:1.3
--- llvm/test/Regression/Transforms/ConstProp/dg.exp:1.2Fri Nov 19 
16:44:05 2004
+++ llvm/test/Regression/Transforms/ConstProp/dg.expWed Apr 12 16:57:36 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/IA64/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/CodeGen/IA64:

dg.exp updated: 1.1 - 1.2
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/CodeGen/IA64/dg.exp
diff -u llvm/test/Regression/CodeGen/IA64/dg.exp:1.1 
llvm/test/Regression/CodeGen/IA64/dg.exp:1.2
--- llvm/test/Regression/CodeGen/IA64/dg.exp:1.1Mon Aug 22 12:15:41 2005
+++ llvm/test/Regression/CodeGen/IA64/dg.expWed Apr 12 16:57:34 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LowerSetJmp/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LowerSetJmp:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LowerSetJmp/dg.exp
diff -u llvm/test/Regression/Transforms/LowerSetJmp/dg.exp:1.2 
llvm/test/Regression/Transforms/LowerSetJmp/dg.exp:1.3
--- llvm/test/Regression/Transforms/LowerSetJmp/dg.exp:1.2  Fri Nov 19 
16:44:43 2004
+++ llvm/test/Regression/Transforms/LowerSetJmp/dg.exp  Wed Apr 12 16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Analysis/Andersens/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Analysis/Andersens:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


---
Diffs of the changes:  (+2 -1)

 dg.exp |3 ++-
 1 files changed, 2 insertions(+), 1 deletion(-)


Index: llvm/test/Regression/Analysis/Andersens/dg.exp
diff -u llvm/test/Regression/Analysis/Andersens/dg.exp:1.2 
llvm/test/Regression/Analysis/Andersens/dg.exp:1.3
--- llvm/test/Regression/Analysis/Andersens/dg.exp:1.2  Fri Nov 19 16:42:49 2004
+++ llvm/test/Regression/Analysis/Andersens/dg.exp  Wed Apr 12 16:57:32 2006
@@ -1,3 +1,4 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version
+



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/InstCombine/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/InstCombine:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/InstCombine/dg.exp
diff -u llvm/test/Regression/Transforms/InstCombine/dg.exp:1.2 
llvm/test/Regression/Transforms/InstCombine/dg.exp:1.3
--- llvm/test/Regression/Transforms/InstCombine/dg.exp:1.2  Fri Nov 19 
16:44:30 2004
+++ llvm/test/Regression/Transforms/InstCombine/dg.exp  Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/GlobalOpt/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/GlobalOpt:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/GlobalOpt/dg.exp
diff -u llvm/test/Regression/Transforms/GlobalOpt/dg.exp:1.2 
llvm/test/Regression/Transforms/GlobalOpt/dg.exp:1.3
--- llvm/test/Regression/Transforms/GlobalOpt/dg.exp:1.2Fri Nov 19 
16:44:23 2004
+++ llvm/test/Regression/Transforms/GlobalOpt/dg.expWed Apr 12 16:57:37 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/PruneEH/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/PruneEH:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/PruneEH/dg.exp
diff -u llvm/test/Regression/Transforms/PruneEH/dg.exp:1.2 
llvm/test/Regression/Transforms/PruneEH/dg.exp:1.3
--- llvm/test/Regression/Transforms/PruneEH/dg.exp:1.2  Fri Nov 19 16:45:01 2004
+++ llvm/test/Regression/Transforms/PruneEH/dg.exp  Wed Apr 12 16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/Generic/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/CodeGen/Generic:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/CodeGen/Generic/dg.exp
diff -u llvm/test/Regression/CodeGen/Generic/dg.exp:1.2 
llvm/test/Regression/CodeGen/Generic/dg.exp:1.3
--- llvm/test/Regression/CodeGen/Generic/dg.exp:1.2 Fri Nov 19 16:43:33 2004
+++ llvm/test/Regression/CodeGen/Generic/dg.exp Wed Apr 12 16:57:34 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/DSAnalysis/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/DSAnalysis:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/DSAnalysis/dg.exp
diff -u llvm/test/Regression/Transforms/DSAnalysis/dg.exp:1.2 
llvm/test/Regression/Transforms/DSAnalysis/dg.exp:1.3
--- llvm/test/Regression/Transforms/DSAnalysis/dg.exp:1.2   Fri Nov 19 
16:44:10 2004
+++ llvm/test/Regression/Transforms/DSAnalysis/dg.exp   Wed Apr 12 16:57:36 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/Reassociate/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/Reassociate:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/Reassociate/dg.exp
diff -u llvm/test/Regression/Transforms/Reassociate/dg.exp:1.2 
llvm/test/Regression/Transforms/Reassociate/dg.exp:1.3
--- llvm/test/Regression/Transforms/Reassociate/dg.exp:1.2  Fri Nov 19 
16:45:09 2004
+++ llvm/test/Regression/Transforms/Reassociate/dg.exp  Wed Apr 12 16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/X86/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/CodeGen/X86:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/CodeGen/X86/dg.exp
diff -u llvm/test/Regression/CodeGen/X86/dg.exp:1.2 
llvm/test/Regression/CodeGen/X86/dg.exp:1.3
--- llvm/test/Regression/CodeGen/X86/dg.exp:1.2 Fri Nov 19 16:43:43 2004
+++ llvm/test/Regression/CodeGen/X86/dg.exp Wed Apr 12 16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LowerSwitch/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LowerSwitch:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LowerSwitch/dg.exp
diff -u llvm/test/Regression/Transforms/LowerSwitch/dg.exp:1.2 
llvm/test/Regression/Transforms/LowerSwitch/dg.exp:1.3
--- llvm/test/Regression/Transforms/LowerSwitch/dg.exp:1.2  Fri Nov 19 
16:44:45 2004
+++ llvm/test/Regression/Transforms/LowerSwitch/dg.exp  Wed Apr 12 16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Analysis/GlobalsModRef/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Analysis/GlobalsModRef:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Analysis/GlobalsModRef/dg.exp
diff -u llvm/test/Regression/Analysis/GlobalsModRef/dg.exp:1.2 
llvm/test/Regression/Analysis/GlobalsModRef/dg.exp:1.3
--- llvm/test/Regression/Analysis/GlobalsModRef/dg.exp:1.2  Fri Nov 19 
16:43:02 2004
+++ llvm/test/Regression/Analysis/GlobalsModRef/dg.exp  Wed Apr 12 16:57:33 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/BlockPlacement/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/BlockPlacement:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/BlockPlacement/dg.exp
diff -u llvm/test/Regression/Transforms/BlockPlacement/dg.exp:1.2 
llvm/test/Regression/Transforms/BlockPlacement/dg.exp:1.3
--- llvm/test/Regression/Transforms/BlockPlacement/dg.exp:1.2   Fri Nov 19 
16:44:00 2004
+++ llvm/test/Regression/Transforms/BlockPlacement/dg.exp   Wed Apr 12 
16:57:35 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LoopSimplify/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LoopSimplify:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LoopSimplify/dg.exp
diff -u llvm/test/Regression/Transforms/LoopSimplify/dg.exp:1.2 
llvm/test/Regression/Transforms/LoopSimplify/dg.exp:1.3
--- llvm/test/Regression/Transforms/LoopSimplify/dg.exp:1.2 Fri Nov 19 
16:44:37 2004
+++ llvm/test/Regression/Transforms/LoopSimplify/dg.exp Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Analysis/BasicAA/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Analysis/BasicAA:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Analysis/BasicAA/dg.exp
diff -u llvm/test/Regression/Analysis/BasicAA/dg.exp:1.2 
llvm/test/Regression/Analysis/BasicAA/dg.exp:1.3
--- llvm/test/Regression/Analysis/BasicAA/dg.exp:1.2Fri Nov 19 16:42:53 2004
+++ llvm/test/Regression/Analysis/BasicAA/dg.expWed Apr 12 16:57:32 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/SimplifyLibCalls:

dg.exp updated: 1.1 - 1.2
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp
diff -u llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp:1.1 
llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp:1.2
--- llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp:1.1 Sun Apr 24 
21:50:08 2005
+++ llvm/test/Regression/Transforms/SimplifyLibCalls/dg.exp Wed Apr 12 
16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/TailCallElim/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/TailCallElim:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/TailCallElim/dg.exp
diff -u llvm/test/Regression/Transforms/TailCallElim/dg.exp:1.2 
llvm/test/Regression/Transforms/TailCallElim/dg.exp:1.3
--- llvm/test/Regression/Transforms/TailCallElim/dg.exp:1.2 Fri Nov 19 
16:45:18 2004
+++ llvm/test/Regression/Transforms/TailCallElim/dg.exp Wed Apr 12 16:57:40 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/lib/llvm-dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/lib:

llvm-dg.exp updated: 1.12 - 1.13
---
Log message:

Added the ability to xfail based on llvmgcc version


---
Diffs of the changes:  (+6 -2)

 llvm-dg.exp |8 ++--
 1 files changed, 6 insertions(+), 2 deletions(-)


Index: llvm/test/lib/llvm-dg.exp
diff -u llvm/test/lib/llvm-dg.exp:1.12 llvm/test/lib/llvm-dg.exp:1.13
--- llvm/test/lib/llvm-dg.exp:1.12  Wed Mar  8 16:32:20 2006
+++ llvm/test/lib/llvm-dg.exp   Wed Apr 12 16:57:40 2006
@@ -1,4 +1,5 @@
-proc llvm-runtest { programs objdir srcdir subdir target_triplet llvmgcc 
llvmgxx prcontext} {
+proc llvm-runtest { programs objdir srcdir subdir target_triplet llvmgcc 
llvmgxx prcontext llvmgcc_version} {
+
 
 set timeout 60
 
@@ -65,7 +66,6 @@
puts $scriptFileId $new_runline
} elseif {[regexp {XFAIL:[ *](.+)} $line match targets]} {
set targets
-   
 
#split up target if more then 1 specified
foreach target [split $targets ,] {
@@ -73,6 +73,10 @@
set outcome XFAIL
} elseif { [regexp $target $target_triplet match] } {
set outcome XFAIL
+   } elseif { [regexp {llvmgcc(([0-9]+)|([0-9]+[.][0-9]+))} 
$target match submatch submatch2]  } {
+   if { [regexp ^($submatch)$|^(($submatch)(\.)) $llvmgcc_version 
match] } {
+ set outcome XFAIL
+   }
}

}



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/CorrelatedExprs:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp
diff -u llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp:1.2 
llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp:1.3
--- llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp:1.2  Fri Nov 19 
16:44:09 2004
+++ llvm/test/Regression/Transforms/CorrelatedExprs/dg.exp  Wed Apr 12 
16:57:36 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll 2005-03-21-UndefinedTypeReference.ll dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Verifier:

2004-01-22-FloatNormalization.ll updated: 1.2 - 1.3
2005-03-21-UndefinedTypeReference.ll updated: 1.1 - 1.2
dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


---
Diffs of the changes:  (+2 -3)

 2004-01-22-FloatNormalization.ll |2 +-
 2005-03-21-UndefinedTypeReference.ll |1 -
 dg.exp   |2 +-
 3 files changed, 2 insertions(+), 3 deletions(-)


Index: llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll
diff -u llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll:1.2 
llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll:1.3
--- llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll:1.2  Fri Dec 
23 10:13:52 2005
+++ llvm/test/Regression/Verifier/2004-01-22-FloatNormalization.ll  Wed Apr 
12 16:57:40 2006
@@ -1,5 +1,5 @@
 ; RUN: not llvm-as  %s -o /dev/null -f
-; XFAIL: *
+; XFAIL: 3.4 
 
 ; make sure that invalid 'float' values are caught.
 


Index: llvm/test/Regression/Verifier/2005-03-21-UndefinedTypeReference.ll
diff -u llvm/test/Regression/Verifier/2005-03-21-UndefinedTypeReference.ll:1.1 
llvm/test/Regression/Verifier/2005-03-21-UndefinedTypeReference.ll:1.2
--- llvm/test/Regression/Verifier/2005-03-21-UndefinedTypeReference.ll:1.1  
Mon Mar 21 00:24:53 2005
+++ llvm/test/Regression/Verifier/2005-03-21-UndefinedTypeReference.ll  Wed Apr 
12 16:57:40 2006
@@ -1,5 +1,4 @@
 ; RUN: not llvm-as -f %s -o /dev/null
-
 void %test() {
 malloc %InvalidType
 ret void


Index: llvm/test/Regression/Verifier/dg.exp
diff -u llvm/test/Regression/Verifier/dg.exp:1.2 
llvm/test/Regression/Verifier/dg.exp:1.3
--- llvm/test/Regression/Verifier/dg.exp:1.2Fri Nov 19 16:45:25 2004
+++ llvm/test/Regression/Verifier/dg.expWed Apr 12 16:57:40 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/DeadArgElim/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/DeadArgElim:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/DeadArgElim/dg.exp
diff -u llvm/test/Regression/Transforms/DeadArgElim/dg.exp:1.2 
llvm/test/Regression/Transforms/DeadArgElim/dg.exp:1.3
--- llvm/test/Regression/Transforms/DeadArgElim/dg.exp:1.2  Fri Nov 19 
16:44:12 2004
+++ llvm/test/Regression/Transforms/DeadArgElim/dg.exp  Wed Apr 12 16:57:36 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/CodeGen/CBackend/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/CodeGen/CBackend:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/CodeGen/CBackend/dg.exp
diff -u llvm/test/Regression/CodeGen/CBackend/dg.exp:1.2 
llvm/test/Regression/CodeGen/CBackend/dg.exp:1.3
--- llvm/test/Regression/CodeGen/CBackend/dg.exp:1.2Fri Nov 19 16:43:28 2004
+++ llvm/test/Regression/CodeGen/CBackend/dg.expWed Apr 12 16:57:34 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/IndVarsSimplify:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp
diff -u llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp:1.2 
llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp:1.3
--- llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp:1.2  Fri Nov 19 
16:44:27 2004
+++ llvm/test/Regression/Transforms/IndVarsSimplify/dg.exp  Wed Apr 12 
16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/RaiseAllocations/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/RaiseAllocations:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/RaiseAllocations/dg.exp
diff -u llvm/test/Regression/Transforms/RaiseAllocations/dg.exp:1.2 
llvm/test/Regression/Transforms/RaiseAllocations/dg.exp:1.3
--- llvm/test/Regression/Transforms/RaiseAllocations/dg.exp:1.2 Fri Nov 19 
16:45:05 2004
+++ llvm/test/Regression/Transforms/RaiseAllocations/dg.exp Wed Apr 12 
16:57:39 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/LoopUnswitch/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/LoopUnswitch:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/LoopUnswitch/dg.exp
diff -u llvm/test/Regression/Transforms/LoopUnswitch/dg.exp:1.2 
llvm/test/Regression/Transforms/LoopUnswitch/dg.exp:1.3
--- llvm/test/Regression/Transforms/LoopUnswitch/dg.exp:1.2 Fri Nov 19 
16:44:40 2004
+++ llvm/test/Regression/Transforms/LoopUnswitch/dg.exp Wed Apr 12 16:57:38 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/test/Regression/Transforms/IPConstantProp/dg.exp

2006-04-12 Thread Tanya Brethour


Changes in directory llvm/test/Regression/Transforms/IPConstantProp:

dg.exp updated: 1.2 - 1.3
---
Log message:

Added the ability to xfail based on llvmgcc version


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

 dg.exp |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/test/Regression/Transforms/IPConstantProp/dg.exp
diff -u llvm/test/Regression/Transforms/IPConstantProp/dg.exp:1.2 
llvm/test/Regression/Transforms/IPConstantProp/dg.exp:1.3
--- llvm/test/Regression/Transforms/IPConstantProp/dg.exp:1.2   Fri Nov 19 
16:44:25 2004
+++ llvm/test/Regression/Transforms/IPConstantProp/dg.exp   Wed Apr 12 
16:57:37 2006
@@ -1,3 +1,3 @@
 load_lib llvm-dg.exp
 
-llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext
+llvm-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.{ll,llx,c,cpp,tr}]] 
$objdir $srcdir $subdir $target_triplet $llvmgcc $llvmgxx $prcontext 
$llvmgcc_version



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/include/llvm/IntrinsicsX86.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/include/llvm:

IntrinsicsX86.td updated: 1.20 - 1.21
---
Log message:

SSE / SSE2 conversion intrinsics.


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

 IntrinsicsX86.td |   18 +++---
 1 files changed, 11 insertions(+), 7 deletions(-)


Index: llvm/include/llvm/IntrinsicsX86.td
diff -u llvm/include/llvm/IntrinsicsX86.td:1.20 
llvm/include/llvm/IntrinsicsX86.td:1.21
--- llvm/include/llvm/IntrinsicsX86.td:1.20 Wed Apr 12 00:20:24 2006
+++ llvm/include/llvm/IntrinsicsX86.td  Wed Apr 12 18:42:44 2006
@@ -112,16 +112,11 @@
 let TargetPrefix = x86 in {  // All intrinsics start with llvm.x86..
   def int_x86_sse_cvtss2si : GCCBuiltin__builtin_ia32_cvtss2si,
   Intrinsic[llvm_int_ty, llvm_v4f32_ty], [IntrNoMem];
-  def int_x86_sse_cvtps2pi : GCCBuiltin__builtin_ia32_cvtps2pi,
-  Intrinsic[llvm_v2i32_ty, llvm_v4i32_ty], [IntrNoMem];
   def int_x86_sse_cvttss2si : GCCBuiltin__builtin_ia32_cvttss2si,
   Intrinsic[llvm_int_ty, llvm_v4f32_ty], [IntrNoMem];
-  def int_x86_sse_cvttps2pi : GCCBuiltin__builtin_ia32_cvttps2pi,
-  Intrinsic[llvm_v2i32_ty, llvm_v4i32_ty], [IntrNoMem];
   def int_x86_sse_cvtsi2ss : GCCBuiltin__builtin_ia32_cvtsi2ss,
-  Intrinsic[llvm_v4f32_ty, llvm_int_ty], [IntrNoMem];
-  def int_x86_sse_cvtpi2ps : GCCBuiltin__builtin_ia32_cvtpi2ps,
-  Intrinsic[llvm_v4f32_ty, llvm_v2i32_ty], [IntrNoMem];
+  Intrinsic[llvm_v4f32_ty, llvm_v4f32_ty,
+ llvm_int_ty], [IntrNoMem];
 }
 
 // SIMD load ops
@@ -287,6 +282,15 @@
   Intrinsic[llvm_int_ty, llvm_v2f64_ty], [IntrNoMem];
   def int_x86_sse2_cvttsd2si : GCCBuiltin__builtin_ia32_cvttsd2si,
   Intrinsic[llvm_int_ty, llvm_v2f64_ty], [IntrNoMem];
+  def int_x86_sse2_cvtsi2sd : GCCBuiltin__builtin_ia32_cvtsi2sd,
+  Intrinsic[llvm_v2f64_ty, llvm_v2f64_ty,
+ llvm_int_ty], [IntrNoMem];
+  def int_x86_sse2_cvtsd2ss : GCCBuiltin__builtin_ia32_cvtsd2ss,
+  Intrinsic[llvm_v4f32_ty, llvm_v4f32_ty,
+ llvm_v2f64_ty], [IntrNoMem];
+  def int_x86_sse2_cvtss2sd : GCCBuiltin__builtin_ia32_cvtss2sd,
+  Intrinsic[llvm_v2f64_ty, llvm_v2f64_ty,
+ llvm_v4f32_ty], [IntrNoMem];
 }
 
 // SIMD load ops



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/X86InstrSSE.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

X86InstrSSE.td updated: 1.81 - 1.82
---
Log message:

Naming inconsistency.


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

 X86InstrSSE.td |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/lib/Target/X86/X86InstrSSE.td
diff -u llvm/lib/Target/X86/X86InstrSSE.td:1.81 
llvm/lib/Target/X86/X86InstrSSE.td:1.82
--- llvm/lib/Target/X86/X86InstrSSE.td:1.81 Wed Apr 12 18:42:44 2006
+++ llvm/lib/Target/X86/X86InstrSSE.td  Wed Apr 12 19:00:23 2006
@@ -1613,7 +1613,7 @@
  [(set R32:$dst, (int_x86_sse_movmsk_ps VR128:$src))];
 def MOVMSKPDrr : PSI0x50, MRMSrcReg, (ops R32:$dst, VR128:$src),
  movmskpd {$src, $dst|$dst, $src},
- [(set R32:$dst, (int_x86_sse2_movmskpd VR128:$src))];
+ [(set R32:$dst, (int_x86_sse2_movmsk_pd VR128:$src))];
 
 def PMOVMSKBrr : PDI0xD7, MRMSrcReg, (ops R32:$dst, VR128:$src),
  pmovmskb {$src, $dst|$dst, $src},



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/include/llvm/IntrinsicsX86.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/include/llvm:

IntrinsicsX86.td updated: 1.21 - 1.22
---
Log message:

Naming inconsistency.


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

 IntrinsicsX86.td |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/include/llvm/IntrinsicsX86.td
diff -u llvm/include/llvm/IntrinsicsX86.td:1.21 
llvm/include/llvm/IntrinsicsX86.td:1.22
--- llvm/include/llvm/IntrinsicsX86.td:1.21 Wed Apr 12 18:42:44 2006
+++ llvm/include/llvm/IntrinsicsX86.td  Wed Apr 12 19:00:23 2006
@@ -341,7 +341,7 @@
   // FIXME: Temporary workaround since 2-wide shuffle is broken.
   def int_x86_sse2_movl_dq : GCCBuiltin__builtin_ia32_movqv4si,
   Intrinsic[llvm_v4i32_ty, llvm_v4i32_ty], [IntrNoMem];
-  def int_x86_sse2_movmskpd : GCCBuiltin__builtin_ia32_movmskpd,
+  def int_x86_sse2_movmsk_pd : GCCBuiltin__builtin_ia32_movmskpd,
   Intrinsic[llvm_int_ty, llvm_v2f64_ty], [IntrNoMem];
   def int_x86_sse2_pmovmskb_128 : GCCBuiltin__builtin_ia32_pmovmskb128,
   Intrinsic[llvm_int_ty, llvm_v16i8_ty], [IntrNoMem];



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/X86InstrSSE.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

X86InstrSSE.td updated: 1.82 - 1.83
---
Log message:

padds{b|w}, paddus{b|w}, psubs{b|w}, psubus{b|w} intrinsics.


---
Diffs of the changes:  (+78 -8)

 X86InstrSSE.td |   86 +++--
 1 files changed, 78 insertions(+), 8 deletions(-)


Index: llvm/lib/Target/X86/X86InstrSSE.td
diff -u llvm/lib/Target/X86/X86InstrSSE.td:1.82 
llvm/lib/Target/X86/X86InstrSSE.td:1.83
--- llvm/lib/Target/X86/X86InstrSSE.td:1.82 Wed Apr 12 19:00:23 2006
+++ llvm/lib/Target/X86/X86InstrSSE.td  Wed Apr 12 19:43:35 2006
@@ -1283,23 +1283,59 @@
   paddq {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v2i64 (add VR128:$src1, VR128:$src2)))];
 }
-def PADDBrm : PDI0xFC, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
f128mem:$src2),
+def PADDBrm : PDI0xFC, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
   paddb {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v16i8 (add VR128:$src1,
 (load addr:$src2];
-def PADDWrm : PDI0xFD, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
f128mem:$src2),
+def PADDWrm : PDI0xFD, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
   paddw {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v8i16 (add VR128:$src1,
 (load addr:$src2];
-def PADDDrm : PDI0xFE, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
f128mem:$src2),
+def PADDDrm : PDI0xFE, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
   paddd {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v4i32 (add VR128:$src1,
 (load addr:$src2];
-def PADDQrm : PDI0xD4, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
f128mem:$src2),
+def PADDQrm : PDI0xD4, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
   paddd {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v2i64 (add VR128:$src1,
 (load addr:$src2];
 
+let isCommutable = 1 in {
+def PADDSBrr : PDI0xEC, MRMSrcReg, (ops VR128:$dst, VR128:$src1, VR128:$src2),
+   paddsb {$src2, $dst|$dst, $src2},
+   [(set VR128:$dst, (int_x86_sse2_padds_b VR128:$src1,
+  VR128:$src2))];
+def PADDSWrr : PDI0xED, MRMSrcReg, (ops VR128:$dst, VR128:$src1, VR128:$src2),
+   paddsw {$src2, $dst|$dst, $src2},
+   [(set VR128:$dst, (int_x86_sse2_padds_w VR128:$src1,
+  VR128:$src2))];
+def PADDUSBrr : PDI0xDC, MRMSrcReg, (ops VR128:$dst, VR128:$src1, 
VR128:$src2),
+paddusb {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_paddus_b VR128:$src1,
+   VR128:$src2))];
+def PADDUSWrr : PDI0xDD, MRMSrcReg, (ops VR128:$dst, VR128:$src1, 
VR128:$src2),
+   paddusw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_paddus_w VR128:$src1,
+   VR128:$src2))];
+}
+def PADDSBrm : PDI0xEC, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+   paddsb {$src2, $dst|$dst, $src2},
+   [(set VR128:$dst, (int_x86_sse2_padds_b VR128:$src1,
+  (bc_v16i8 (loadv2i64 addr:$src2];
+def PADDSWrm : PDI0xED, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+   paddsw {$src2, $dst|$dst, $src2},
+   [(set VR128:$dst, (int_x86_sse2_padds_w VR128:$src1,
+  (bc_v8i16 (loadv2i64 addr:$src2];
+def PADDUSBrm : PDI0xDC, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+paddusb {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_paddus_b VR128:$src1,
+   (bc_v16i8 (loadv2i64 addr:$src2];
+def PADDUSWrm : PDI0xDD, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+   paddusw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_paddus_w VR128:$src1,
+   (bc_v8i16 (loadv2i64 addr:$src2];
+
+
 def PSUBBrr : PDI0xF8, MRMSrcReg, (ops VR128:$dst, VR128:$src1, VR128:$src2),
   psubb {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v16i8 (sub VR128:$src1, VR128:$src2)))];
@@ -1313,22 +1349,56 @@
   psubq {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v2i64 (sub VR128:$src1, VR128:$src2)))];
 
-def PSUBBrm : PDI0xF8, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
f128mem:$src2),
+def PSUBBrm : PDI0xF8, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
   psubb {$src2, $dst|$dst, $src2},
   [(set VR128:$dst, (v16i8 (sub VR128:$src1,
  

[llvm-commits] CVS: llvm/CREDITS.TXT

2006-04-12 Thread Andrew Lenharth


Changes in directory llvm:

CREDITS.TXT updated: 1.50 - 1.51
---
Log message:

quick update



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

 CREDITS.TXT |1 +
 1 files changed, 1 insertion(+)


Index: llvm/CREDITS.TXT
diff -u llvm/CREDITS.TXT:1.50 llvm/CREDITS.TXT:1.51
--- llvm/CREDITS.TXT:1.50   Wed Apr 12 16:28:14 2006
+++ llvm/CREDITS.TXTWed Apr 12 21:05:30 2006
@@ -109,6 +109,7 @@
 E: [EMAIL PROTECTED]
 W: http://www.lenharth.org/~andrewl/
 D: Alpha backend
+D: Sampling based profiling
 
 N: Duraid Madina
 E: [EMAIL PROTECTED]



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/utils/llvm-config/llvm-config.in.in

2006-04-12 Thread Chris Lattner


Changes in directory llvm/utils/llvm-config:

llvm-config.in.in updated: 1.3 - 1.4
---
Log message:

one too many l's


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

 llvm-config.in.in |2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)


Index: llvm/utils/llvm-config/llvm-config.in.in
diff -u llvm/utils/llvm-config/llvm-config.in.in:1.3 
llvm/utils/llvm-config/llvm-config.in.in:1.4
--- llvm/utils/llvm-config/llvm-config.in.in:1.3Thu Mar 23 19:10:39 2006
+++ llvm/utils/llvm-config/llvm-config.in.inWed Apr 12 23:21:31 2006
@@ -5,7 +5,7 @@
 # Synopsis: Prints out compiler options needed to build against an installed
 #   copy of LLVM.
 #
-# Syntax:   lllvm-config OPTIONS... [COMPONENTS...]
+# Syntax:   llvm-config OPTIONS... [COMPONENTS...]
 #
 # This file was written by Eric Kidd, and is placed into the public domain.
 #



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/include/llvm/IntrinsicsX86.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/include/llvm:

IntrinsicsX86.td updated: 1.23 - 1.24
---
Log message:

pmul*, pmadd*, and pavg* intrinsics.


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

 IntrinsicsX86.td |   18 ++
 1 files changed, 18 insertions(+)


Index: llvm/include/llvm/IntrinsicsX86.td
diff -u llvm/include/llvm/IntrinsicsX86.td:1.23 
llvm/include/llvm/IntrinsicsX86.td:1.24
--- llvm/include/llvm/IntrinsicsX86.td:1.23 Wed Apr 12 19:43:35 2006
+++ llvm/include/llvm/IntrinsicsX86.td  Thu Apr 13 00:09:06 2006
@@ -276,6 +276,24 @@
   def int_x86_sse2_psubus_w : GCCBuiltin__builtin_ia32_psubusw128,
   Intrinsic[llvm_v8i16_ty, llvm_v8i16_ty,
  llvm_v8i16_ty], [IntrNoMem];
+  def int_x86_sse2_pmulhu_w : GCCBuiltin__builtin_ia32_pmulhuw128,
+  Intrinsic[llvm_v8i16_ty, llvm_v8i16_ty,
+ llvm_v8i16_ty], [IntrNoMem];
+  def int_x86_sse2_pmulh_w : GCCBuiltin__builtin_ia32_pmulhw128,
+  Intrinsic[llvm_v8i16_ty, llvm_v8i16_ty,
+ llvm_v8i16_ty], [IntrNoMem];
+  def int_x86_sse2_pmulu_dq : GCCBuiltin__builtin_ia32_pmuludq128,
+  Intrinsic[llvm_v2i64_ty, llvm_v4i32_ty,
+ llvm_v4i32_ty], [IntrNoMem];
+  def int_x86_sse2_pmadd_wd : GCCBuiltin__builtin_ia32_pmaddwd128,
+  Intrinsic[llvm_v4i32_ty, llvm_v8i16_ty,
+ llvm_v8i16_ty], [IntrNoMem];
+  def int_x86_sse2_pavg_b : GCCBuiltin__builtin_ia32_pavgb128,
+  Intrinsic[llvm_v16i8_ty, llvm_v16i8_ty,
+ llvm_v16i8_ty], [IntrNoMem];
+  def int_x86_sse2_pavg_w : GCCBuiltin__builtin_ia32_pavgw128,
+  Intrinsic[llvm_v8i16_ty, llvm_v8i16_ty,
+ llvm_v8i16_ty], [IntrNoMem];
 }
 
 // Integer shift ops.



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/README.txt

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

README.txt updated: 1.86 - 1.87
---
Log message:

Update

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

 README.txt |   12 
 1 files changed, 12 insertions(+)


Index: llvm/lib/Target/X86/README.txt
diff -u llvm/lib/Target/X86/README.txt:1.86 llvm/lib/Target/X86/README.txt:1.87
--- llvm/lib/Target/X86/README.txt:1.86 Wed Apr 12 16:21:57 2006
+++ llvm/lib/Target/X86/README.txt  Thu Apr 13 00:09:45 2006
@@ -191,6 +191,18 @@
 should be made smart enough to cannonicalize the load into the RHS of a compare
 when it can invert the result of the compare for free.
 
+How about intrinsics? An example is:
+  *res = _mm_mulhi_epu16(*A, _mm_mul_epu32(*B, *C));
+
+compiles to
+   pmuludq (%eax), %xmm0
+   movl 8(%esp), %eax
+   movdqa (%eax), %xmm1
+   pmulhuw %xmm0, %xmm1
+
+The transformation probably requires a X86 specific pass or a DAG combiner
+target specific hook.
+
 //===-===//
 
 LSR should be turned on for the X86 backend and tuned to take advantage of its



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

X86ISelLowering.cpp updated: 1.164 - 1.165
---
Log message:

X86 SSE2 supports v8i16 multiplication

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

 X86ISelLowering.cpp |1 +
 1 files changed, 1 insertion(+)


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.164 
llvm/lib/Target/X86/X86ISelLowering.cpp:1.165
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.164   Wed Apr 12 16:21:57 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp Thu Apr 13 00:10:25 2006
@@ -303,6 +303,7 @@
 setOperationAction(ISD::SUB,MVT::v16i8, Legal);
 setOperationAction(ISD::SUB,MVT::v8i16, Legal);
 setOperationAction(ISD::SUB,MVT::v4i32, Legal);
+setOperationAction(ISD::MUL,MVT::v8i16, Legal);
 setOperationAction(ISD::MUL,MVT::v2f64, Legal);
 
 setOperationAction(ISD::SCALAR_TO_VECTOR,   MVT::v16i8, Custom);



___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits


[llvm-commits] CVS: llvm/lib/Target/X86/X86InstrSSE.td

2006-04-12 Thread Evan Cheng


Changes in directory llvm/lib/Target/X86:

X86InstrSSE.td updated: 1.83 - 1.84
---
Log message:

Various SSE2 packed integer intrinsics: pmulhuw, pavgw, etc.


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

 X86InstrSSE.td |   75 +
 1 files changed, 71 insertions(+), 4 deletions(-)


Index: llvm/lib/Target/X86/X86InstrSSE.td
diff -u llvm/lib/Target/X86/X86InstrSSE.td:1.83 
llvm/lib/Target/X86/X86InstrSSE.td:1.84
--- llvm/lib/Target/X86/X86InstrSSE.td:1.83 Wed Apr 12 19:43:35 2006
+++ llvm/lib/Target/X86/X86InstrSSE.td  Thu Apr 13 00:24:54 2006
@@ -1383,22 +1383,89 @@
 [(set VR128:$dst, (int_x86_sse2_psubus_w VR128:$src1,
VR128:$src2))];
 
-def PSUBSBrm : PDI0xE8, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+def PSUBSBrm : PDI0xE8, MRMSrcMem,
+   (ops VR128:$dst, VR128:$src1, i128mem:$src2),
psubsb {$src2, $dst|$dst, $src2},
[(set VR128:$dst, (int_x86_sse2_psubs_b VR128:$src1,
   (bc_v16i8 (loadv2i64 addr:$src2];
-def PSUBSWrm : PDI0xE9, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+def PSUBSWrm : PDI0xE9, MRMSrcMem,
+   (ops VR128:$dst, VR128:$src1, i128mem:$src2),
psubsw {$src2, $dst|$dst, $src2},
[(set VR128:$dst, (int_x86_sse2_psubs_w VR128:$src1,
   (bc_v8i16 (loadv2i64 addr:$src2];
-def PSUBUSBrm : PDI0xD8, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+def PSUBUSBrm : PDI0xD8, MRMSrcMem,
+(ops VR128:$dst, VR128:$src1, i128mem:$src2),
 psubusb {$src2, $dst|$dst, $src2},
 [(set VR128:$dst, (int_x86_sse2_psubus_b VR128:$src1,
(bc_v16i8 (loadv2i64 addr:$src2];
-def PSUBUSWrm : PDI0xD9, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+def PSUBUSWrm : PDI0xD9, MRMSrcMem,
+(ops VR128:$dst, VR128:$src1, i128mem:$src2),
psubusw {$src2, $dst|$dst, $src2},
 [(set VR128:$dst, (int_x86_sse2_psubus_w VR128:$src1,
(bc_v8i16 (loadv2i64 addr:$src2];
+
+let isCommutable = 1 in {
+def PMULHUWrr : PDI0xE4, MRMSrcReg, (ops VR128:$dst, VR128:$src1, 
VR128:$src2),
+pmulhuw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulhu_w VR128:$src1,
+   VR128:$src2))];
+def PMULHWrr : PDI0xE5, MRMSrcReg, (ops VR128:$dst, VR128:$src1, VR128:$src2),
+pmulhw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulh_w VR128:$src1,
+   VR128:$src2))];
+def PMULLWrr : PDI0xD5, MRMSrcReg, (ops VR128:$dst, VR128:$src1, VR128:$src2),
+  pmullw {$src2, $dst|$dst, $src2},
+  [(set VR128:$dst, (v8i16 (mul VR128:$src1, VR128:$src2)))];
+def PMULUDQrr : PDI0xF4, MRMSrcReg, (ops VR128:$dst, VR128:$src1, 
VR128:$src2),
+pmuludq {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulu_dq VR128:$src1,
+   VR128:$src2))];
+}
+
+def PMULHUWrm : PDI0xE4, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+pmulhuw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulhu_w VR128:$src1,
+   (bc_v8i16 (loadv2i64 addr:$src2];
+def PMULHWrm : PDI0xE5, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+pmulhw {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulh_w VR128:$src1,
+   (bc_v8i16 (loadv2i64 addr:$src2];
+def PMULLWrm : PDI0xD5, MRMSrcMem,
+   (ops VR128:$dst, VR128:$src1, i128mem:$src2),
+   pmullw {$src2, $dst|$dst, $src2},
+   [(set VR128:$dst, (v8i16 (mul VR128:$src1,
+ (bc_v8i16 (loadv2i64 
addr:$src2)];
+def PMULUDQrm : PDI0xF4, MRMSrcMem, (ops VR128:$dst, VR128:$src1, 
i128mem:$src2),
+pmuludq {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmulu_dq VR128:$src1,
+  (bc_v4i32 (loadv2i64 
addr:$src2];
+
+def PMADDWDrr : PDI0xF5, MRMSrcReg, (ops VR128:$dst, VR128:$src1, 
VR128:$src2),
+pmaddwd {$src2, $dst|$dst, $src2},
+[(set VR128:$dst, (int_x86_sse2_pmadd_wd VR128:$src1,
+   VR128:$src2))];
+def PMADDWDrm : PDI0xF5, MRMSrcMem,
+(ops VR128:$dst, VR128:$src1, i128mem:$src2),
+pmaddwd {$src2, $dst|$dst, $src2},
+