Changes in directory llvm/lib/CodeGen:
VirtRegMap.cpp updated: 1.102 -> 1.103
---
Log message:
- Keep track all def and uses of stack slot available in register.
- Available value use may be deleted (e.g. noop move).
---
Diffs of the changes: (+51 -28)
VirtRegMap.cpp | 79
Chris Lattner wrote:
>
> Why can't you just mark the frame address callee save? Why isn't it
> getting saved automatically for you?
>
Because R31 is not used as a callee saved register when
llvm::NoFramePointerElim is set to 1. The algorithm
that calculates the callee saved registers' addresses
Changes in directory llvm/test/CodeGen/X86:
2007-03-01-SpillerCrash.ll added (r1.1)
---
Log message:
Add a new test case.
---
Diffs of the changes: (+85 -0)
2007-03-01-SpillerCrash.ll | 85 +
1 files changed, 85 insertions(+)
Index: llvm/test/
Changes in directory llvm/lib/CodeGen:
LiveIntervalAnalysis.cpp updated: 1.218 -> 1.219
---
Log message:
Dead live-in detection bug.
---
Diffs of the changes: (+2 -2)
LiveIntervalAnalysis.cpp |4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
Index: llvm/lib/CodeGen/LiveInterva
Changes in directory llvm/lib/CodeGen:
RegisterScavenging.cpp updated: 1.9 -> 1.10
---
Log message:
Mark dead def as unused.
---
Diffs of the changes: (+6 -2)
RegisterScavenging.cpp |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
Index: llvm/lib/CodeGen/RegisterScavengin
Testcase triggering this.
Index: llvm/test/AdaFrontend/fat_fields.adb
===
--- /dev/null 1970-01-01 00:00:00.0 +
+++ llvm/test/AdaFrontend/fat_fields.adb 2007-03-02 12:50:25.0 +0100
@@ -0,0 +1,10 @@
+-- RUN: %llvmgcc
Ada testcase triggering this.
Index: llvm/test/AdaFrontend/emit_var.ads
===
--- /dev/null 1970-01-01 00:00:00.0 +
+++ llvm/test/AdaFrontend/emit_var.ads 2007-03-02 12:50:25.0 +0100
@@ -0,0 +1,5 @@
+-- RUN: %llvmgcc
Ada testcase triggering this.
Index: llvm/test/AdaFrontend/non_lvalue.adb
===
--- /dev/null 1970-01-01 00:00:00.0 +
+++ llvm/test/AdaFrontend/non_lvalue.adb 2007-03-02 12:50:25.0 +0100
@@ -0,0 +1,7 @@
+-- RUN: %llvm
Additional Ada testcase.
Index: llvm/test/AdaFrontend/array_size.adb
===
--- /dev/null 1970-01-01 00:00:00.0 +
+++ llvm/test/AdaFrontend/array_size.adb 2007-03-02 12:50:25.0 +0100
@@ -0,0 +1,10 @@
+-- RUN: %llvmgcc
> Testcase triggering this.
An Ada testcase, so currently unusable except by me,
since I'm the only person on the planet who has a
working llvm-gcc Ada compiler. Hopefully this will
not be the case for much longer.
___
llvm-commits mailing list
llvm-com
Refreshed patch after Chris's array indexing changes.
Both Ada testcases attached.
Index: gcc.llvm/gcc/llvm-abi.h
===
--- gcc.llvm.orig/gcc/llvm-abi.h 2007-02-18 19:21:10.0 +0100
+++ gcc.llvm/gcc/llvm-abi.h 2007-03-02 15:17:52.
The third operand of a COMPONENT_REF represents the byte offset of
the field; it is accessed using component_ref_field_offset. Most of
the time you can get away with extracting the offset from the type,
using DECL_FIELD_OFFSET, which is what is done currently, but this
can fail if DECL_FIELD_OFFSE
Changes in directory llvm/include/llvm/ADT:
SmallPtrSet.h updated: 1.7 -> 1.8
---
Log message:
Fix PR1234: http://llvm.org/PR1234 by working around a compiler bug.
---
Diffs of the changes: (+1 -2)
SmallPtrSet.h |3 +--
1 files changed, 1 insertion(+), 2 deletions(-)
Index: llvm/inc
Changes in directory llvm/lib/Transforms/Scalar:
InstructionCombining.cpp updated: 1.638 -> 1.639
---
Log message:
minor cleanup
---
Diffs of the changes: (+2 -6)
InstructionCombining.cpp |8 ++--
1 files changed, 2 insertions(+), 6 deletions(-)
Index: llvm/lib/Transforms/Scalar/
Changes in directory llvm-test/SingleSource/UnitTests/Integer/APInt:
gptest.cpp updated: 1.9 -> 1.10
---
Log message:
Hack around pari/gp's inability to do an arithmetic shift right.
---
Diffs of the changes: (+11 -13)
gptest.cpp | 24 +++-
1 files changed, 11 inserti
Changes in directory llvm/lib/Transforms/Scalar:
InstructionCombining.cpp updated: 1.639 -> 1.640
---
Log message:
Fix a significant algorithm problem with the instcombine worklist. removing
a value from the worklist required scanning the entire worklist to remove all
entries. We now use a co
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.358 -> 1.359
---
Log message:
Simplify things
---
Diffs of the changes: (+2 -8)
X86ISelLowering.cpp | 10 ++
1 files changed, 2 insertions(+), 8 deletions(-)
Index: llvm/lib/Target/X86/X86ISelLowering.cpp
Changes in directory llvm/include/llvm/Support:
MathExtras.h updated: 1.40 -> 1.41
---
Log message:
Fix uninitialized use of variable. Remove tabs and fix identation.
---
Diffs of the changes: (+19 -19)
MathExtras.h | 38 +++---
1 files changed, 19 inserti
Changes in directory llvm-test/SingleSource/UnitTests/Integer/APInt:
gptest.cpp updated: 1.10 -> 1.11
---
Log message:
Create an error function so that the command sent to pari/gp can be printed
out whenver and error occurs. Also, don't attempt sqrt validation after
192 bits because pari/gp los
Changes in directory llvm/lib/Support:
APInt.cpp updated: 1.67 -> 1.68
---
Log message:
Fix ashr for bitwidths > 64. This is now validated up to 1024 bits.
---
Diffs of the changes: (+49 -33)
APInt.cpp | 82 +-
1 files changed,
Changes in directory llvm/lib/Transforms/Utils:
SimplifyCFG.cpp updated: 1.117 -> 1.118
---
Log message:
Make sorting of ConstantInt be APInt clean through use of ult function.
---
Diffs of the changes: (+1 -1)
SimplifyCFG.cpp |2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
Ind
Changes in directory llvm/lib/Transforms/Utils:
LowerAllocations.cpp updated: 1.71 -> 1.72
---
Log message:
Use APInt safe isOne() method on ConstantInt instead of getZExtValue()==1
---
Diffs of the changes: (+1 -1)
LowerAllocations.cpp |2 +-
1 files changed, 1 insertion(+), 1 deletio
Changes in directory llvm/lib/Transforms/Utils:
LowerSwitch.cpp updated: 1.32 -> 1.33
---
Log message:
1. Sort switch cases using APInt safe comparison.
2. Make sure debug output of APInt values is safe for all bit widths.
---
Diffs of the changes: (+2 -2)
LowerSwitch.cpp |4 ++--
1 fi
> 1. Sort switch cases using APInt safe comparison.
Cool,
> @@ -128,7 +128,7 @@
>
>Case& Pivot = *(Begin + Mid);
>DOUT << "Pivot ==> "
> - << cast(Pivot.first)->getSExtValue() << "\n";
> + << cast(Pivot.first)->getValue().toStringSigned
> (10) << "\n";
Please wrap this in a D
Changes in directory llvm/lib/Transforms/Utils:
LowerSwitch.cpp updated: 1.33 -> 1.34
---
Log message:
Make sure debug code is not evaluated in non-debug case.
---
Diffs of the changes: (+3 -2)
LowerSwitch.cpp |5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
Index: llvm/lib
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.359 -> 1.360
X86ISelLowering.h updated: 1.90 -> 1.91
---
Log message:
X86-64 VACOPY needs custom expansion. va_list is a struct { i32, i32, i8*, i8*
}.
---
Diffs of the changes: (+34 -3)
X86ISelLowering.cpp | 36 +++
Changes in directory llvm/lib/Transforms/Scalar:
LoopUnroll.cpp updated: 1.36 -> 1.37
---
Log message:
Guard against huge loop trip counts in an APInt safe way.
---
Diffs of the changes: (+7 -2)
LoopUnroll.cpp |9 +++--
1 files changed, 7 insertions(+), 2 deletions(-)
Index: llvm
On Mar 2, 2007, at 3:31 PM, Reid Spencer wrote:
> + // Guard against huge trip counts. This also guards against
> assertions in
> + // APInt from the use of getZExtValue, below.
> + if (TripCountC->getValue().getActiveBits() > 32)
> return Changed; // More than 2^32 iterations???
>
> +
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.111 -> 1.112
LoopUnswitch.cpp updated: 1.63 -> 1.64
---
Log message:
Use more efficient test for one value in a ConstantInt.
---
Diffs of the changes: (+14 -13)
LoopStrengthReduce.cpp | 23
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.112 -> 1.113
---
Log message:
Dang, I've done that twice now! Undo previous commit.
---
Diffs of the changes: (+11 -12)
LoopStrengthReduce.cpp | 23 +++
1 files changed, 11 insertions(+
Revision: 124488
Author: clattner
Date: 2007-03-02 15:36:33 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Fix another VLA array indexing bug. PR1233.
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.cpp
Modified: apple-local/branches/llvm/gcc/llvm-convert.
On Fri, 2007-03-02 at 15:35 -0800, Chris Lattner wrote:
> On Mar 2, 2007, at 3:31 PM, Reid Spencer wrote:
>
>
> > + // Guard against huge trip counts. This also guards against
> > assertions in
> > + // APInt from the use of getZExtValue, below.
> > + if (TripCountC->getValue().getActiveBits
Changes in directory llvm/lib/Transforms/Scalar:
LoopStrengthReduce.cpp updated: 1.113 -> 1.114
---
Log message:
Finally get this patch right :)
Replace expensive getZExtValue() == 0 calls with isZero() calls.
---
Diffs of the changes: (+5 -5)
LoopStrengthReduce.cpp | 10 +-
1 fi
On Mar 2, 2007, at 3:40 PM, Reid Spencer wrote:
> On Fri, 2007-03-02 at 15:35 -0800, Chris Lattner wrote:
>> On Mar 2, 2007, at 3:31 PM, Reid Spencer wrote:
>>
>>
>>> + // Guard against huge trip counts. This also guards against
>>> assertions in
>>> + // APInt from the use of getZExtValue, bel
Changes in directory llvm/include/llvm/ADT:
APInt.h updated: 1.35 -> 1.36
---
Log message:
Add isPositive for symmetry with isNegative.
---
Diffs of the changes: (+8 -1)
APInt.h |9 -
1 files changed, 8 insertions(+), 1 deletion(-)
Index: llvm/include/llvm/ADT/APInt.h
diff -u
Changes in directory llvm/lib/Transforms/Scalar:
PredicateSimplifier.cpp updated: 1.52 -> 1.53
---
Log message:
APIntify this pass.
---
Diffs of the changes: (+36 -28)
PredicateSimplifier.cpp | 64 +++-
1 files changed, 36 insertions(+), 28 del
Changes in directory llvm-test/SingleSource/UnitTests:
2007-03-02-VaCopy.c added (r1.1)
---
Log message:
New test.
---
Diffs of the changes: (+17 -0)
2007-03-02-VaCopy.c | 17 +
1 files changed, 17 insertions(+)
Index: llvm-test/SingleSource/UnitTests/2007-03-02-VaCopy.c
Changes in directory llvm/lib/Transforms/Scalar:
InstructionCombining.cpp updated: 1.640 -> 1.641
---
Log message:
add a top-level iteration loop to instcombine. This means that it will never
finish without combining something it is capable of.
---
Diffs of the changes: (+21 -4)
Instructi
Revision: 124490
Author: echeng
Date: 2007-03-02 18:10:50 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Workaround to fix functionarguments aligment on arm-linux-gnueabi.
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-abi.h
Modified: apple-local/branches/llvm/gcc
Revision: 124491
Author: clattner
Date: 2007-03-02 18:11:25 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Add support for NON_LVALUE_EXPR, patch by Duncan Sands.
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.cpp
Modified: apple-local/branches/llvm/gcc/ll
Committed with one minor change:
bool UseInt64 = (Align >= Int64Align);
Thanks,
Evan
On Mar 1, 2007, at 1:03 PM, Lauro Ramos Venancio wrote:
> This patch fixes SingleSource/UnitTests/2003-05-07-VarArgs.c test on
> arm-linux-gnueabi.
>
> Lauro
>
> ___
On Feb 28, 2007, at 10:17 AM, Duncan Sands wrote:
> According to the docs:
>
> "NON_LVALUE_EXPR
> These nodes indicate that their one and only operand is not an lvalue.
> A back end can treat these identically to the single operand."
>
> And that is what this patch does.
Applied, thanks. Please
Revision: 124492
Author: clattner
Date: 2007-03-02 18:13:46 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Add an assert, patch by Duncan Sands.
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.cpp
Modified: apple-local/branches/llvm/gcc/llvm-convert.cpp
===
On Feb 28, 2007, at 2:16 AM, Duncan Sands wrote:
> Die obviously, rather than obscurely deep down in make_decl_llvm.
> I hit this with the Ada f-e: it was replacing fields in a record type
> without updating constructors, with the result that the constructor
> element fields did not belong to the
Revision: 124493
Author: clattner
Date: 2007-03-02 18:15:45 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Fix a bug that triggers with Ada, patch by Duncan Sands!
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.cpp
Modified: apple-local/branches/llvm/gcc/l
On Feb 28, 2007, at 3:09 AM, Duncan Sands wrote:
> The variable expansion part of EmitBIND_EXPR is clearly based on
> expand_var in expr.c, however unlike expand_var it doesn't check
> for VAR_DECL before calling rest_of_decl_compilation. This patch
> adds the check. Without it, the Ada run-time
Changes in directory llvm/lib/CodeGen:
LiveIntervalAnalysis.cpp updated: 1.219 -> 1.220
---
Log message:
Watch out for cases like this:
entry (0x8b056f0, LLVM BB @0x8b01b30, ID#0):
Live Ins: %r0 %r1 %r2 %r3
%reg1032 = tMOVrr %r3
%reg1033 = tMOVri8 1
%reg1034 = tMOVri8 0
Changes in directory llvm/test/Transforms/InstCombine:
bswap.ll updated: 1.4 -> 1.5
---
Log message:
instcombine doesn't do CSE, simplify unrelated detail
---
Diffs of the changes: (+1 -2)
bswap.ll |3 +--
1 files changed, 1 insertion(+), 2 deletions(-)
Index: llvm/test/Transforms/In
Changes in directory llvm/lib/Transforms/Scalar:
PredicateSimplifier.cpp updated: 1.53 -> 1.54
---
Log message:
Translate bit operations to English.
---
Diffs of the changes: (+2 -1)
PredicateSimplifier.cpp |3 ++-
1 files changed, 2 insertions(+), 1 deletion(-)
Index: llvm/lib/Trans
Revision: 124494
Author: clattner
Date: 2007-03-02 21:17:25 -0800 (Fri, 02 Mar 2007)
Log Message:
---
Fix compilation of Benchmarks/Prolangs-C++/garage.
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.cpp
Modified: apple-local/branches/llvm/gcc/llvm-co
Changes in directory llvm/test/Transforms/InstCombine:
cast2.ll added (r1.1)
---
Log message:
new testcase: instcombine should remove all the casts.
---
Diffs of the changes: (+24 -0)
cast2.ll | 24
1 files changed, 24 insertions(+)
Index: llvm/test/Transforms/
Changes in directory llvm/lib/Transforms/Scalar:
InstructionCombining.cpp updated: 1.641 -> 1.642
---
Log message:
my recent change caused a failure in a bswap testcase, because it changed
the order that instcombine processed instructions in the testcase. The end
result is that instcombine fin
Changes in directory llvm/lib/Target/PowerPC:
PPCAsmPrinter.cpp updated: 1.234 -> 1.235
---
Log message:
Emit low/high immediate loads properly for Linux/PPC.
---
Diffs of the changes: (+10 -6)
PPCAsmPrinter.cpp | 16 ++--
1 files changed, 10 insertions(+), 6 deletions(-)
I
Revision: 124495
Author: clattner
Date: 2007-03-02 21:32:18 -0800 (Fri, 02 Mar 2007)
Log Message:
---
disable EH support until someone has a chance to finish it. This fixes
Benchmarks/Prolangs-C++/deriv1
Modified Paths:
--
apple-local/branches/llvm/gcc/llvm-convert.
Changes in directory llvm/include/llvm/ADT:
APInt.h updated: 1.36 -> 1.37
---
Log message:
Add names for some of the operators. This is needed for the macros in
the Interpreter.
---
Diffs of the changes: (+9 -0)
APInt.h |9 +
1 files changed, 9 insertions(+)
Index: llvm/inclu
Changes in directory llvm/include/llvm/ADT:
APInt.h updated: 1.37 -> 1.38
---
Log message:
Make getNumWords public so that those using getRawData stand a chance of
not reading beyond the end of the buffer returned.
---
Diffs of the changes: (+7 -7)
APInt.h | 14 +++---
1 files ch
Changes in directory llvm/lib/ExecutionEngine:
ExecutionEngine.cpp updated: 1.107 -> 1.108
---
Log message:
Implement loading and storing of APInt values from memory.
---
Diffs of the changes: (+16 -8)
ExecutionEngine.cpp | 24
1 files changed, 16 insertions(+),
Changes in directory llvm/lib/CodeGen:
MachOWriter.cpp updated: 1.30 -> 1.31
---
Log message:
http://llvm.org/bugs/show_bug.cgi?id=1237
---
Diffs of the changes: (+10 -5)
MachOWriter.cpp | 15 ++-
1 files changed, 10 insertions(+), 5 deletions(-)
Index: llvm/lib/CodeGen/Mac
Changes in directory llvm/lib/ExecutionEngine/Interpreter:
Interpreter.h updated: 1.83 -> 1.84
---
Log message:
1. Have the ExecutionContext keep track of the APInt's allocated and
ensure they are cleaned up when the stack frame exits.
2. Move a function to the Execution.cpp file where it b
Changes in directory llvm/lib/ExecutionEngine/Interpreter:
Execution.cpp updated: 1.170 -> 1.171
---
Log message:
Implement APInt support for the binary operators.
Move the getConstantExpr function towards the end of the file so we don't
need a dozen forward declarations.
---
Diffs of the c
Changes in directory llvm/lib/CodeGen:
VirtRegMap.cpp updated: 1.103 -> 1.104
---
Log message:
Only propagate IsKill if the last use is a kill.
---
Diffs of the changes: (+22 -8)
VirtRegMap.cpp | 30 ++
1 files changed, 22 insertions(+), 8 deletions(-)
Index:
Changes in directory llvm/include/llvm/ExecutionEngine:
GenericValue.h updated: 1.9 -> 1.10
---
Log message:
Add APIntVal as a possible GenericeValue.
---
Diffs of the changes: (+3 -0)
GenericValue.h |3 +++
1 files changed, 3 insertions(+)
Index: llvm/include/llvm/ExecutionEngine/Ge
62 matches
Mail list logo