Hi Evan
If a livein is not used in the block. It's live through.
thanks for doing this. Does this mean that the value in the livein
register is available in all blocks reachable from this one? If so,
why is propagateEHRegister needed? Or does it mean that the value
is available in successor
Hi,
It seems like folding undef/X to undef isn't safe either though, with
the way it sounds like undef is intended to work. This code:
%x = udiv i32 undef, %intmax
%y = udiv i32 %x, 2
will always set %y to 0. Maybe instcombine can fold the second
udiv by looking through its
On Jun 28, 2007, at 3:09 AM, Duncan Sands wrote:
Hi,
It seems like folding undef/X to undef isn't safe either though,
with
the way it sounds like undef is intended to work. This code:
%x = udiv i32 undef, %intmax
%y = udiv i32 %x, 2
will always set %y to 0. Maybe instcombine can
On Jun 27, 2007, at 1:50 PM, Dan Gohman wrote:
I think that undef udiv intmax - 0, no? If not, plz update
instcombine as well.
intmax udiv intmax - 1.
It seems like folding undef/X to undef isn't safe either though,
with
the way it sounds like undef is intended to work. This code:
Hi Dan,
Do you already have the final fix for this problem? It caused a lot of
fails on nightly test
(http://llvm.org/nightlytest/test.php?machine=142night=3088).
Lauro
2007/6/27, Dan Gohman [EMAIL PROTECTED]:
Hi Lauro,
This was caused by my fix for PR1529.
I'm currently considering the
Changes in directory llvm-poolalloc/lib/DSA:
Local.cpp updated: 1.158.2.4.2.11 - 1.158.2.4.2.12
---
Log message:
add hacky debug support for unknowns, and add 1 and -1 as null values (as used
too often in the linux kernel)
---
Diffs of the changes: (+32 -4)
Local.cpp | 36
Changes in directory llvm/lib/Linker:
LinkModules.cpp updated: 1.141 - 1.142
---
Log message:
When linking two modules, we should copy the alias.
---
Diffs of the changes: (+28 -0)
LinkModules.cpp | 28
1 files changed, 28 insertions(+)
Index:
Changes in directory llvm:
configure updated: 1.277 - 1.278
Makefile.rules updated: 1.435 - 1.436
Makefile.config.in updated: 1.76 - 1.77
---
Log message:
Add support for building with _GLIBCXX_DEBUG. New configure option
--enable-expensive-checks allows the developer to enable runtime
Changes in directory llvm/autoconf:
configure.ac updated: 1.271 - 1.272
---
Log message:
Add support for building with _GLIBCXX_DEBUG. New configure option
--enable-expensive-checks allows the developer to enable runtime
checking that can greatly increase compile time. Currently it only
Changes in directory llvm/tools/llvm-config:
llvm-config.in.in updated: 1.27 - 1.28
Makefile updated: 1.23 - 1.24
---
Log message:
Add support for building with _GLIBCXX_DEBUG. New configure option
--enable-expensive-checks allows the developer to enable runtime
checking that can greatly
Attached is my new patch for this bug. It's bigger than I had
originally planned, but it fixes the bug you reported, and it factors
out the copy-to-regs/copy-from-regs logic which was duplicated in
several places so that it's handled the same way in each place.
If this patch is not ok for any
Wow, sorry about the huge patch I just posted.
Here's a version without the patches to the two configure scripts.
Whoever applies it will have to re-run autoconf.
-Dave
Index: gcc/Makefile.in
Changes in directory llvm/lib/Linker:
LinkModules.cpp updated: 1.142 - 1.143
---
Log message:
Fix a bug in my previous patch.
---
Diffs of the changes: (+2 -3)
LinkModules.cpp |5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
Index: llvm/lib/Linker/LinkModules.cpp
diff -u
Changes in directory llvm/include/llvm/ADT:
SmallVector.h updated: 1.30 - 1.31
---
Log message:
Add a default parameter to a SmallVector constructor to allow it to
be called with just an initial length value, just like in std::vector.
---
Diffs of the changes: (+1 -1)
SmallVector.h |2
Hi Raul,
Good first step! Thanks.
+bool ARMTargetMachine::addCodeEmitter(FunctionPassManager PM, bool
Fast,
+ MachineCodeEmitter MCE) {
+ // FIXME: Move this to TargetJITInfo!
+ setRelocationModel(Reloc::Static);
+
+ setCodeModel(CodeModel::Large);
+
On Jun 28, 2007, at 2:02 AM, Duncan Sands wrote:
Hi Evan
If a livein is not used in the block. It's live through.
thanks for doing this. Does this mean that the value in the livein
register is available in all blocks reachable from this one?
No. It just means the value is not clobbered
Changes in directory llvm/tools/opt:
opt.cpp updated: 1.142 - 1.143
---
Log message:
Fix PR 1526: http://llvm.org/PR1526 .
---
Diffs of the changes: (+34 -0)
opt.cpp | 34 ++
1 files changed, 34 insertions(+)
Index: llvm/tools/opt/opt.cpp
diff -u
Changes in directory llvm/test/Other:
2007-06-28-PassManager.ll added (r1.1)
---
Log message:
Fix PR 1526: http://llvm.org/PR1526 .
---
Diffs of the changes: (+5 -0)
2007-06-28-PassManager.ll |5 +
1 files changed, 5 insertions(+)
Index: llvm/test/Other/2007-06-28-PassManager.ll
Changes in directory llvm/include/llvm/Target:
TargetLowering.h updated: 1.133 - 1.134
---
Log message:
Add new TargetLowering code to provide the final register type that an
illegal value type will be transformed to, for code that needs the
register type after all transformations instead of
Changes in directory llvm/include/llvm/CodeGen:
SelectionDAGNodes.h updated: 1.193 - 1.194
---
Log message:
Add new TargetLowering code to provide the final register type that an
illegal value type will be transformed to, for code that needs the
register type after all transformations instead
Changes in directory llvm/lib/CodeGen/SelectionDAG:
SelectionDAGISel.cpp updated: 1.471 - 1.472
TargetLowering.cpp updated: 1.123 - 1.124
---
Log message:
Add new TargetLowering code to provide the final register type that an
illegal value type will be transformed to, for code that needs the
Changes in directory llvm/test/Transforms/GVNPRE:
select.ll added (r1.1)
---
Log message:
Add a test for performing GVNPRE on select instructions.
---
Diffs of the changes: (+17 -0)
select.ll | 17 +
1 files changed, 17 insertions(+)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.63 - 1.64
---
Log message:
Add support for performing GVNPRE on select instructions. This fixes
test/Transforms/GVNPRE/select.ll.
---
Diffs of the changes: (+57 -13)
GVNPRE.cpp | 70
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.415 - 1.416
---
Log message:
Type of vector extract / insert index operand should be iPTR.
---
Diffs of the changes: (+1 -1)
X86ISelLowering.cpp |2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
Index:
Changes in directory llvm/lib/CodeGen/SelectionDAG:
LegalizeDAG.cpp updated: 1.503 - 1.504
---
Log message:
Fix an assertion failure in legalizing bitcast operators on targets where
vectors are split down to single elements as part of legalization.
---
Diffs of the changes: (+15 -23)
Changes in directory llvm/test/CodeGen/ARM:
illegal-vector-bitcast.ll added (r1.1)
---
Log message:
Fix an assertion failure in legalizing bitcast operators on targets where
vectors are split down to single elements as part of legalization.
---
Diffs of the changes: (+13 -0)
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.416 - 1.417
---
Log message:
No vector fneg.
---
Diffs of the changes: (+1 -0)
X86ISelLowering.cpp |1 +
1 files changed, 1 insertion(+)
Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u
Changes in directory llvm/test/CodeGen/X86:
2007-06-28-X86-64-isel.ll added (r1.1)
vec_fneg.ll added (r1.1)
---
Log message:
New tests.
---
Diffs of the changes: (+27 -0)
2007-06-28-X86-64-isel.ll | 16
vec_fneg.ll | 11 +++
2 files changed, 27
Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.64 - 1.65
---
Log message:
Add a type field to expressions in preparation for performing GVNPRE on casts.
---
Diffs of the changes: (+12 -0)
GVNPRE.cpp | 12
1 files changed, 12 insertions(+)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
GVNPRE.cpp updated: 1.65 - 1.66
---
Log message:
Add support for value numbering (but not actually optimizing) cast instructions.
---
Diffs of the changes: (+65 -1)
GVNPRE.cpp | 66
Hi David,
A couple comments ...
On Thu, 2007-06-28 at 14:36 -0500, David Greene wrote:
Changes in directory llvm:
configure updated: 1.277 - 1.278
Makefile.rules updated: 1.435 - 1.436
Makefile.config.in updated: 1.76 - 1.77
---
Log message:
Add support for building with
Changes in directory llvm/lib/Target/PowerPC:
PPCISelDAGToDAG.cpp updated: 1.231 - 1.232
---
Log message:
Prevent PPC::BCC first operand, the PRED number, from being isel'd into a LI
instruction.
---
Diffs of the changes: (+4 -1)
PPCISelDAGToDAG.cpp |5 -
1 files changed, 4
Changes in directory llvm/test/CodeGen/PowerPC:
2007-06-28-BCCISelBug.ll added (r1.1)
---
Log message:
New test.
---
Diffs of the changes: (+85 -0)
2007-06-28-BCCISelBug.ll | 85 +++
1 files changed, 85 insertions(+)
Index:
Changes in directory llvm/lib/Transforms/Scalar:
LoopUnswitch.cpp updated: 1.73 - 1.74
---
Log message:
Do not filter loop if candidate branch is in loop header.
---
Diffs of the changes: (+0 -2)
LoopUnswitch.cpp |2 --
1 files changed, 2 deletions(-)
Index:
Changes in directory llvm/lib/CodeGen:
MachineBasicBlock.cpp updated: 1.47 - 1.48
---
Log message:
Fix misue of iterator pointing to erased object. Uncovered by
_GLIBCXX_DEBUG.
---
Diffs of the changes: (+3 -3)
MachineBasicBlock.cpp |6 +++---
1 files changed, 3 insertions(+), 3
Changes in directory llvm/include/llvm/CodeGen:
MachineBasicBlock.h updated: 1.66 - 1.67
---
Log message:
Fix misue of iterator pointing to erased object. Uncovered by
_GLIBCXX_DEBUG.
---
Diffs of the changes: (+2 -2)
MachineBasicBlock.h |4 ++--
1 files changed, 2 insertions(+), 2
Changes in directory llvm/lib/CodeGen:
BranchFolding.cpp updated: 1.68 - 1.69
---
Log message:
Fix misue of iterator pointing to erased object. Uncovered by
_GLIBCXX_DEBUG.
---
Diffs of the changes: (+5 -4)
BranchFolding.cpp |9 +
1 files changed, 5 insertions(+), 4
Changes in directory llvm/lib/CodeGen/SelectionDAG:
ScheduleDAGRRList.cpp updated: 1.31 - 1.32
---
Log message:
Remove the special tie breaker because it resulted in inconsistent
ordering and thus violated the strict weak ordering requirement of
priority_queue. Uncovered by _GLIBCXX_DEBUG.
Changes in directory llvm/lib/CodeGen/SelectionDAG:
SelectionDAGISel.cpp updated: 1.472 - 1.473
---
Log message:
Fix reference to cached end iterator invalidated by an erase operation.
Uncovered by _GLIBCXX_DEBUG.
---
Diffs of the changes: (+3 -1)
SelectionDAGISel.cpp |4 +++-
1 files
David Greene wrote:
+// Cray [dag]: Must recompute end() each iteration because it may
Please don't mark the comments as being from Cray. Just write the
comment as a standard explanation.
Nick
___
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
Changes in directory llvm/lib/Transforms/Utils:
LoopSimplify.cpp updated: 1.105 - 1.106
---
Log message:
Fix reference to iterator invalidated by an erase operation. Uncovered
by _GLIBCXX_DEBUG.
---
Diffs of the changes: (+4 -3)
LoopSimplify.cpp |7 ---
1 files changed, 4
Changes in directory llvm/utils:
NewNightlyTest.pl updated: 1.74 - 1.75
---
Log message:
Fix problems with the checkout and cd directories for SVN checkout.
---
Diffs of the changes: (+4 -4)
NewNightlyTest.pl |8
1 files changed, 4 insertions(+), 4 deletions(-)
Index:
Awesome, thanks Evan. As an improvement, can't vector fneg be
implemented with a xor of a constant vector?
-Chris
On Jun 28, 2007, at 5:18 PM, Evan Cheng wrote:
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.416 - 1.417
---
Log message:
No vector fneg.
On Thursday 28 June 2007 20:14, Reid Spencer wrote:
Index: llvm/configure
Please don't commit generated files with non-generated files.
Oops, sorry about that.
+# If DISABLE_EXPENSIVE_CHECKS=1 is specified (make command line or
configured), +# then disable expensive checks by defining
On Thursday 28 June 2007 22:32, David A. Greene wrote:
You're introducing CPP.Defines but I don't see it used in this file. Is
this for future use?
Ah, I think that's an artifact of something I was going to do for
llvm-config but decided against. I'll clean it up.
Scratch that. It IS
Changes in directory llvm:
Makefile.rules updated: 1.436 - 1.437
---
Log message:
Clean up comments to be consistent with code.
---
Diffs of the changes: (+3 -2)
Makefile.rules |5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
Index: llvm/Makefile.rules
diff -u
On Thursday 28 June 2007 21:51, Nick Lewycky wrote:
David Greene wrote:
+// Cray [dag]: Must recompute end() each iteration because it may
Please don't mark the comments as being from Cray. Just write the
comment as a standard explanation.
Ok, will fix. Just wanted to take
Changes in directory llvm/lib/CodeGen/SelectionDAG:
SelectionDAGISel.cpp updated: 1.473 - 1.474
ScheduleDAGRRList.cpp updated: 1.32 - 1.33
---
Log message:
Remove unnecessary attributions in comments.
---
Diffs of the changes: (+3 -3)
ScheduleDAGRRList.cpp |2 +-
SelectionDAGISel.cpp
On Thu, 2007-06-28 at 22:35 -0500, David A. Greene wrote:
On Thursday 28 June 2007 22:32, David A. Greene wrote:
You're introducing CPP.Defines but I don't see it used in this file. Is
this for future use?
Ah, I think that's an artifact of something I was going to do for
llvm-config
49 matches
Mail list logo