On Jun 25, 2007, at 11:02 PM, Chris Lattner wrote:
+ /// MVT::isExtendedValueType - Test if the given ValueType is
extended
+ /// (as opposed to being simple).
+ static inline bool isExtendedValueType(ValueType VT) {
+return VT ~SimpleTypeMask;
}
Oh, one other thing.
@@ -129,7 +130,9 @@
/// specified value type. This means that it has a register
that directly
/// holds it without promotions or expansions.
bool isTypeLegal(MVT::ValueType VT) const {
-return RegClassForVT[VT] != 0;
+return !MVT::isExtendedValueType(VT) ?
+
@@ -14,13 +14,21 @@
#include llvm/CodeGen/ValueTypes.h
#include llvm/Type.h
#include llvm/DerivedTypes.h
+#include sstream
using namespace llvm;
Please use utostr() in llvm/ADT/StringExtras.h instead of sstream.
-Chris
___
llvm-commits
dag combiner part
Another great change.
@@ -856,6 +844,10 @@
ConstantSDNode *N0C = dyn_castConstantSDNode(N0);
ConstantSDNode *N1C = dyn_castConstantSDNode(N1);
MVT::ValueType VT = N0.getValueType();
+
+ // fold vector ops
+ SDOperand FoldedVOp = SimplifyVBinOp(N);
+ if
Changes in directory llvm/include/llvm/CodeGen:
ValueTypes.h updated: 1.36 - 1.37
ValueTypes.td updated: 1.4 - 1.5
---
Log message:
Renumber the SimpleValueType values to fill in the hole left by
removing MVT::Vector.
---
Diffs of the changes: (+24 -25)
ValueTypes.h | 26
Hi Chris,
Thanks for all the review comments! I've addressed a few comments
below; I'll get to the others soon.
@@ -1162,6 +1179,11 @@
SDOperand Op = BuildSDIV(N);
if (Op.Val) return Op;
}
+
+ // If either operand is undef, the result is undef
+ if (N0.getOpcode() ==
Changes in directory llvm/lib/VMCore:
ValueTypes.cpp updated: 1.19 - 1.20
---
Log message:
Use utostr from StringExtras.h instead of ostringstream from sstream.
---
Diffs of the changes: (+4 -7)
ValueTypes.cpp | 11 ---
1 files changed, 4 insertions(+), 7 deletions(-)
Index:
Changes in directory llvm/include/llvm/Target:
TargetLowering.h updated: 1.130 - 1.131
---
Log message:
Simplify the expression for TargetLowering::isTypeLegal.
---
Diffs of the changes: (+1 -3)
TargetLowering.h |4 +---
1 files changed, 1 insertion(+), 3 deletions(-)
Index:
Changes in directory llvm/include/llvm/CodeGen:
ValueTypes.h updated: 1.37 - 1.38
---
Log message:
Simplify the expression for MVT::isExtendedValueType.
---
Diffs of the changes: (+1 -1)
ValueTypes.h |2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
Index:
Changes in directory llvm/include/llvm/Target:
TargetLowering.h updated: 1.131 - 1.132
---
Log message:
Replace ?: with if statements, for clarity.
---
Diffs of the changes: (+12 -18)
TargetLowering.h | 30 --
1 files changed, 12 insertions(+), 18
Revision: 128839
Author: johannes
Date: 2007-06-26 09:46:15 -0700 (Tue, 26 Jun 2007)
Log Message:
---
Fix a couple of objC-specific name encodings for LLVM.
Modified Paths:
--
apple-local/branches/llvm/gcc/objc/objc-act.c
Modified:
Thanks for all the review comments! I've addressed a few comments
below; I'll get to the others soon.
Thanks! I also filed pr1529, which is the only failure that showed
on the ppc nightly tester.
@@ -1162,6 +1179,11 @@
SDOperand Op = BuildSDIV(N);
if (Op.Val) return Op;
}
Changes in directory llvm/utils:
NewNightlyTest.pl updated: 1.73 - 1.74
---
Log message:
Update for Subversion conversion:
1. Fix comments for -usesvn and -svnurl options.
2. Fix default URL for SVN access.
3. Fix paths to accommodate trunk when checking out from SVN.
---
Diffs of the
Changes in directory llvm/lib/Target/ARM:
ARMISelLowering.cpp updated: 1.59 - 1.60
---
Log message:
Silence a warning.
---
Diffs of the changes: (+2 -1)
ARMISelLowering.cpp |3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)
Index: llvm/lib/Target/ARM/ARMISelLowering.cpp
diff -u
Changes in directory llvm/utils/TableGen:
RegisterInfoEmitter.cpp updated: 1.57 - 1.58
---
Log message:
Add immediate sub-registers.
---
Diffs of the changes: (+21 -0)
RegisterInfoEmitter.cpp | 21 +
1 files changed, 21 insertions(+)
Index:
Changes in directory llvm/include/llvm/Target:
MRegisterInfo.h updated: 1.111 - 1.112
---
Log message:
Add immediate sub-registers.
---
Diffs of the changes: (+9 -0)
MRegisterInfo.h |9 +
1 files changed, 9 insertions(+)
Index: llvm/include/llvm/Target/MRegisterInfo.h
diff -u
Changes in directory llvm-www:
SVNMigration.html updated: 1.16 - 1.17
---
Log message:
Add doxygen to the to-do list.
---
Diffs of the changes: (+5 -1)
SVNMigration.html |6 +-
1 files changed, 5 insertions(+), 1 deletion(-)
Index: llvm-www/SVNMigration.html
diff -u
Changes in directory llvm/include/llvm/CodeGen:
LiveVariables.h updated: 1.46 - 1.47
---
Log message:
Properly handle kills of a physical register which has sub-registers that are
read by later instructions.
---
Diffs of the changes: (+10 -0)
LiveVariables.h | 10 ++
1 files
Changes in directory llvm/lib/CodeGen:
RegAllocLocal.cpp updated: 1.106 - 1.107
---
Log message:
Correctly handle implcit def / use operands.
---
Diffs of the changes: (+64 -52)
RegAllocLocal.cpp | 116 +-
1 files changed, 64
Changes in directory llvm/include/llvm/Target:
MRegisterInfo.h updated: 1.112 - 1.113
---
Log message:
Add comment.
---
Diffs of the changes: (+5 -3)
MRegisterInfo.h |8 +---
1 files changed, 5 insertions(+), 3 deletions(-)
Index: llvm/include/llvm/Target/MRegisterInfo.h
diff -u
Changes in directory llvm-www:
SVNMigration.html updated: 1.17 - 1.18
---
Log message:
Add a step to update GettingStarted.html directions for checkout from SVN.
---
Diffs of the changes: (+3 -1)
SVNMigration.html |4 +++-
1 files changed, 3 insertions(+), 1 deletion(-)
Index:
Changes in directory llvm-www:
SVNMigration.html updated: 1.18 - 1.19
---
Log message:
Add notes about migration of llvm-gcc4 and HLVM to the Subversion repo.
---
Diffs of the changes: (+7 -1)
SVNMigration.html |8 +++-
1 files changed, 7 insertions(+), 1 deletion(-)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.58 - 1.59
---
Log message:
1. Correct some comments and clean up some dead code.
2. When calculating ANTIC_IN, only iterate the changed blocks. For most average
inputs this is a small speedup, but for cases with unusual
--- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.500 Fri Jun 22
09:59:07 2007
+++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp Mon Jun 25
11:23:39 2007
@@ -173,15 +173,13 @@
+ /// ScalarizeVectorOp - Given an operand of vector type, convert
it into the
+ ///
On Jun 25, 2007, at 5:48 PM, Dan Gohman wrote:
Revert the earlier change that removed the M_REMATERIALIZABLE machine
instruction flag, and use the flag along with a virtual member
function
hook for targets to override if there are instructions that are only
trivially rematerializable with
Revision: 128845
Author: johannes
Date: 2007-06-26 17:16:19 -0700 (Tue, 26 Jun 2007)
Log Message:
---
Make weak_import work for LLVM.
Modified Paths:
--
apple-local/branches/llvm/gcc/config/darwin.h
Modified: apple-local/branches/llvm/gcc/config/darwin.h
Changes in directory llvm/lib/CodeGen:
LiveIntervalAnalysis.cpp updated: 1.248 - 1.249
---
Log message:
Fix an obvious bug. Old code only worked for the entry block.
---
Diffs of the changes: (+4 -3)
LiveIntervalAnalysis.cpp |7 ---
1 files changed, 4 insertions(+), 3 deletions(-)
Changes in directory llvm/test/Transforms/GVNPRE:
extractelement.ll added (r1.1)
insertelement.ll added (r1.1)
shufflevector.ll added (r1.1)
---
Log message:
Add tests for performing GVNPRE on the three vector-specific instructions.
---
Diffs of the changes: (+54 -0)
extractelement.ll |
Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.59 - 1.60
---
Log message:
Add support for performing GVNPRE on the three vector-specific operations.
---
Diffs of the changes: (+436 -20)
GVNPRE.cpp | 456 ++---
Changes in directory llvm/lib/CodeGen:
LiveVariables.cpp updated: 1.85 - 1.86
---
Log message:
Replace std::set with SmallPtrSet.
---
Diffs of the changes: (+5 -3)
LiveVariables.cpp |8 +---
1 files changed, 5 insertions(+), 3 deletions(-)
Index:
30 matches
Mail list logo