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

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/VMCore: ConstantFold.cpp updated: 1.146 -> 1.147 --- Log message: Fix constant folding of fp->int bitcast for vectors. --- Diffs of the changes: (+2 -2) ConstantFold.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/lib/VMCore/Con

[llvm-commits] CVS: llvm/include/llvm/ADT/APInt.h

2007-03-03 Thread Reid Spencer
Changes in directory llvm/include/llvm/ADT: APInt.h updated: 1.38 -> 1.39 --- Log message: Regularize the interface for conversion functions to/from float/double. --- Diffs of the changes: (+9 -3) APInt.h | 12 +--- 1 files changed, 9 insertions(+), 3 deletions(-) Index: llvm/i

[llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/ExecutionEngine.h

2007-03-03 Thread Reid Spencer
Changes in directory llvm/include/llvm/ExecutionEngine: ExecutionEngine.h updated: 1.41 -> 1.42 --- Log message: Require the destination GlobalValue for LoadValueFromMemory to be passed in as a parameter instead of returned. --- Diffs of the changes: (+2 -1) ExecutionEngine.h |3 ++- 1

[llvm-commits] CVS: llvm/lib/ExecutionEngine/ExecutionEngine.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine: ExecutionEngine.cpp updated: 1.108 -> 1.109 --- Log message: Avoid memory leakage by having caller construct the APInt for the destination value of LoadValueFromMemory. --- Diffs of the changes: (+4 -5) ExecutionEngine.cpp |9 - 1

[llvm-commits] CVS: llvm/lib/ExecutionEngine/Interpreter/Execution.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine/Interpreter: Execution.cpp updated: 1.171 -> 1.172 --- Log message: Complete the APIntification of the interpreter. All asserts for > 64 bits have been removed and dealt with. The interpreter should now be able to execute any LLVM program using any

Re: [llvm-commits] llvm-gcc: support arrays with non-zero lower bound

2007-03-03 Thread Duncan Sands
> ...(3) having gcc add one. For C, (3) involves adding one to a > constant, which does not involve any heavy operations like memory > allocation, just a two word integer plus operation. This is wrong: adding one of course requires allocating a tree node in general (i.e. unless a previously const

Re: [llvm-commits] llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp

2007-03-03 Thread Nicolas Geoffray
Chris Lattner wrote: > >> Because R31 is not used as a callee saved register when >> llvm::NoFramePointerElim is set to 1. > > NoFramePointerElim doesn't change the ABI, only the codegen model. Yes it doesn't change the ABI, but R31's offset in Linux/ELF is in the callee saved area. In Macho it

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

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/Target/CBackend: CBackend.cpp updated: 1.328 -> 1.329 --- Log message: Make sure that when we store a value it is masked to its correct bit width. This helps CBE work with non-standard integer bit widths. --- Diffs of the changes: (+15 -1) CBackend.cpp | 16

[llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/ExecutionEngine.h

2007-03-03 Thread Reid Spencer
Changes in directory llvm/include/llvm/ExecutionEngine: ExecutionEngine.h updated: 1.42 -> 1.43 --- Log message: Make the creation functions take an error string. This will help the ExecutionEngine report errors on creation (like bytecode stuff) and also help to get rid of exception handling.

[llvm-commits] CVS: llvm/lib/ExecutionEngine/ExecutionEngine.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine: ExecutionEngine.cpp updated: 1.109 -> 1.110 --- Log message: Deal with error handling better. --- Diffs of the changes: (+5 -3) ExecutionEngine.cpp |8 +--- 1 files changed, 5 insertions(+), 3 deletions(-) Index: llvm/lib/ExecutionEn

[llvm-commits] CVS: llvm/lib/ExecutionEngine/JIT/JIT.h TargetSelect.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine/JIT: JIT.h updated: 1.30 -> 1.31 TargetSelect.cpp updated: 1.13 -> 1.14 --- Log message: Deal with error handling better. --- Diffs of the changes: (+10 -3) JIT.h|2 +- TargetSelect.cpp | 11 +-- 2 files changed, 10 in

[llvm-commits] CVS: llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp Interpreter.h

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine/Interpreter: Interpreter.cpp updated: 1.36 -> 1.37 Interpreter.h updated: 1.84 -> 1.85 --- Log message: Deal with error handling better. --- Diffs of the changes: (+16 -8) Interpreter.cpp | 22 +++--- Interpreter.h |2 +-

[llvm-commits] CVS: llvm/tools/lli/lli.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/tools/lli: lli.cpp updated: 1.67 -> 1.68 --- Log message: 1. Handle errors around the ModuleProvider. This is necessary since it is reading bytecode. 2. The interpreter can delete the ModuleProvider and replace it with another so don't depend on it being around

[llvm-commits] CVS: llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/ExecutionEngine/Interpreter: Interpreter.cpp updated: 1.37 -> 1.38 --- Log message: Remove unnecessary #include. --- Diffs of the changes: (+0 -1) Interpreter.cpp |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/ExecutionEngine/Interpreter/Interprete

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen/SelectionDAG: LegalizeDAG.cpp updated: 1.480 -> 1.481 --- Log message: Add an expand action for ISD label which just deletes the label. This "fixes" PR1238: http://llvm.org/PR1238 . --- Diffs of the changes: (+3 -0) LegalizeDAG.cpp |3 +++ 1 files

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Chris Lattner
On Mar 2, 2007, at 11:37 PM, Reid Spencer wrote: > Changes in directory llvm/include/llvm/ExecutionEngine: > GenericValue.h updated: 1.9 -> 1.10 > --- > Log message: > > Add APIntVal as a possible GenericeValue. Shouldn't APInt eliminate all of the other, smaller, integers? -Chris > --- > Diffs

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: IndVarSimplify.cpp updated: 1.111 -> 1.112 --- Log message: Make RewriteLoopExitValues far less nested by using continue in the loop --- Diffs of the changes: (+94 -91) IndVarSimplify.cpp | 185 ++

[llvm-commits] [124528] Fix an assertion I recently added, POINTER_TYPE and REFERENCE_TYPE

2007-03-03 Thread clattner
Revision: 124528 Author: clattner Date: 2007-03-03 15:08:02 -0800 (Sat, 03 Mar 2007) Log Message: --- Fix an assertion I recently added, POINTER_TYPE and REFERENCE_TYPE are the same at the treetollvm level. This fixes an ICE on 447.dealII. Modified Paths: -- apple-l

[llvm-commits] CVS: llvm/test/CodeGen/Generic/fpowi-promote.ll

2007-03-03 Thread Chris Lattner
Changes in directory llvm/test/CodeGen/Generic: fpowi-promote.ll added (r1.1) --- Log message: New testcase for PR1239: http://llvm.org/PR1239 --- Diffs of the changes: (+12 -0) fpowi-promote.ll | 12 1 files changed, 12 insertions(+) Index: llvm/test/CodeGen/Generic/fpow

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/CodeGen/SelectionDAG: LegalizeDAG.cpp updated: 1.481 -> 1.482 --- Log message: Fix CodeGen/Generic/fpowi-promote.ll and PR1239: http://llvm.org/PR1239 --- Diffs of the changes: (+12 -0) LegalizeDAG.cpp | 12 1 files changed, 12 insertions(+)

[llvm-commits] Updated LowerSwitch patch

2007-03-03 Thread Anton Korobeynikov
Hello, Everyone. Please find updated LowerSwitch patch (synced with latest APInt-related changes). -- With best regards, Anton Korobeynikov. Faculty of Mathematics & Mechanics, Saint Petersburg State University. diff -r 1f58690658d2 lib/Transforms/Utils/LowerSwitch.cpp --- a/lib/Transforms/Uti

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

2007-03-03 Thread Reid Spencer
Changes in directory llvm/docs: Makefile updated: 1.12 -> 1.13 --- Log message: Get the version number for the LLVM from the autoconf/configure.ac file when building the documentation for the web site. --- Diffs of the changes: (+9 -2) Makefile | 11 +-- 1 files changed, 9 insert

[llvm-commits] CVS: llvm/test/Transforms/IndVarsSimplify/loop_evaluate_2.ll loop_evaluate_3.ll loop_evaluate_4.ll

2007-03-03 Thread Chris Lattner
Changes in directory llvm/test/Transforms/IndVarsSimplify: loop_evaluate_2.ll added (r1.1) loop_evaluate_3.ll added (r1.1) loop_evaluate_4.ll added (r1.1) --- Log message: New testcases for PR1179: http://llvm.org/PR1179 /PR1232: http://llvm.org/PR1232 . --- Diffs of the changes: (+67 -0)

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Reid Spencer
On Sat, 2007-03-03 at 13:07 -0800, Chris Lattner wrote: > On Mar 2, 2007, at 11:37 PM, Reid Spencer wrote: > > Changes in directory llvm/include/llvm/ExecutionEngine: > > GenericValue.h updated: 1.9 -> 1.10 > > --- > > Log message: > > > > Add APIntVal as a possible GenericeValue. > > Shouldn't AP

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Reid Spencer
On Sat, 2007-03-03 at 16:22 -0800, Chris Lattner wrote: > On Mar 3, 2007, at 4:16 PM, Reid Spencer wrote: > > On Sat, 2007-03-03 at 13:07 -0800, Chris Lattner wrote: > >> On Mar 2, 2007, at 11:37 PM, Reid Spencer wrote: > >>> Changes in directory llvm/include/llvm/ExecutionEngine: > >>> GenericValu

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: IndVarSimplify.cpp updated: 1.112 -> 1.113 --- Log message: Implement PR1179: http://llvm.org/PR1179 /PR1232: http://llvm.org/PR1232 and test/Transforms/IndVarsSimplify/loop_evaluate_[234].ll This makes -indvars require and use LCSSA, updating

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Chris Lattner
On Mar 3, 2007, at 4:16 PM, Reid Spencer wrote: > On Sat, 2007-03-03 at 13:07 -0800, Chris Lattner wrote: >> On Mar 2, 2007, at 11:37 PM, Reid Spencer wrote: >>> Changes in directory llvm/include/llvm/ExecutionEngine: >>> GenericValue.h updated: 1.9 -> 1.10 >>> --- >>> Log message: >>> >>> Add APIn

[llvm-commits] CVS: llvm/lib/Analysis/ScalarEvolution.cpp

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/Analysis: ScalarEvolution.cpp updated: 1.104 -> 1.105 --- Log message: Guard further against APInt operations with operands of unequal bit width. --- Diffs of the changes: (+11 -4) ScalarEvolution.cpp | 15 +++ 1 files changed, 11 insertions(+),

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: IndVarSimplify.cpp updated: 1.113 -> 1.114 --- Log message: make better use of LCSSA information in RewriteLoopExitValues. Before, we would scan the entire loop body, then scan all users of instructions in the loop, looking for users outside the

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Chris Lattner
>> Ok, could we make GV not be a union? Or a struct with an APInt and >> union of other things? > > I thought about that, and started to implement it. That involves a 50% > increase in memory consumption. Its already a big enough hog. It would increase the memory use of the *interpreter*, but not

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Reid Spencer
On Sat, 2007-03-03 at 19:45 -0800, Chris Lattner wrote: > >> Ok, could we make GV not be a union? Or a struct with an APInt and > >> union of other things? > > > > I thought about that, and started to implement it. That involves a 50% > > increase in memory consumption. Its already a big enough ho

[llvm-commits] CVS: llvm/include/llvm/ADT/SmallPtrSet.h

2007-03-03 Thread Chris Lattner
Changes in directory llvm/include/llvm/ADT: SmallPtrSet.h updated: 1.8 -> 1.9 --- Log message: add iterator range version of ctor. --- Diffs of the changes: (+7 -0) SmallPtrSet.h |7 +++ 1 files changed, 7 insertions(+) Index: llvm/include/llvm/ADT/SmallPtrSet.h diff -u llvm/incl

[llvm-commits] CVS: llvm/lib/Analysis/LoopInfo.cpp

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Analysis: LoopInfo.cpp updated: 1.82 -> 1.83 --- Log message: Speed up Loop::isLCSSAForm by using a hash table instead of a sorted vector. --- Diffs of the changes: (+7 -9) LoopInfo.cpp | 16 +++- 1 files changed, 7 insertions(+), 9 deletions(-)

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Chris Lattner
On Mar 3, 2007, at 7:50 PM, Reid Spencer wrote: > On Sat, 2007-03-03 at 19:45 -0800, Chris Lattner wrote: Ok, could we make GV not be a union? Or a struct with an APInt and union of other things? >>> >>> I thought about that, and started to implement it. That involves >>> a 50% >>> inc

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: SimplifyCFG.cpp updated: 1.19 -> 1.20 --- Log message: switch MarkAliveBlocks over to using SmallPtrSet instead of std::set, speeding up simplifycfg by 20% --- Diffs of the changes: (+5 -5) SimplifyCFG.cpp | 10 +- 1 files changed

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Reid Spencer
On Sat, 2007-03-03 at 20:11 -0800, Chris Lattner wrote: > On Mar 3, 2007, at 7:50 PM, Reid Spencer wrote: > > On Sat, 2007-03-03 at 19:45 -0800, Chris Lattner wrote: > Ok, could we make GV not be a union? Or a struct with an APInt and > union of other things? > >>> > >>> I thought about

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: InstructionCombining.cpp updated: 1.642 -> 1.643 --- Log message: Speed up -instcombine by 20% by avoiding a particularly expensive passmgr call. --- Diffs of the changes: (+4 -1) InstructionCombining.cpp |5 - 1 files changed, 4 ins

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

2007-03-03 Thread Reid Spencer
Changes in directory llvm/lib/CodeGen: MachOWriter.cpp updated: 1.31 -> 1.32 --- Log message: Remove unneeded header file. --- Diffs of the changes: (+0 -1) MachOWriter.cpp |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/CodeGen/MachOWriter.cpp diff -u llvm/lib/CodeGen/MachOWrit

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Transforms/Scalar: SCCP.cpp updated: 1.163 -> 1.164 --- Log message: minor cleanups --- Diffs of the changes: (+8 -7) SCCP.cpp | 15 --- 1 files changed, 8 insertions(+), 7 deletions(-) Index: llvm/lib/Transforms/Scalar/SCCP.cpp diff -u llvm/li

Re: [llvm-commits] CVS: llvm/include/llvm/ExecutionEngine/GenericValue.h

2007-03-03 Thread Chris Lattner
It would increase the memory use of the *interpreter*, but nothing else. The interpreter is already slow. >>> >>> The JIT makes use of the fields you're intending to delete as >>> well. SO >>> does ExecutionEngine (on each load and store). Sure you want to >>> sacrifice JIT speed too?

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

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/Target/X86: X86InstrSSE.td updated: 1.177 -> 1.178 --- Log message: add missing braces --- Diffs of the changes: (+25 -25) X86InstrSSE.td | 50 +- 1 files changed, 25 insertions(+), 25 deletions(-) Index: llv

[llvm-commits] CVS: llvm/lib/System/Disassembler.cpp

2007-03-03 Thread Chris Lattner
Changes in directory llvm/lib/System: Disassembler.cpp updated: 1.1 -> 1.2 --- Log message: fix typo --- Diffs of the changes: (+2 -2) Disassembler.cpp |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) Index: llvm/lib/System/Disassembler.cpp diff -u llvm/lib/System/Disassembl

[llvm-commits] [PATCH] PR746: Make Function not annotatable and get rid of Annotations

2007-03-03 Thread Gordon Henriksen
This patch eliminates Annotations by using an "analysis" pass as a bucket to hold onto the MachineFunction generated by instruction selection. PassManager then releases the memory at the appropriate time. I find this approach is rather fragile (the caveats are noted in the header file), but it's mu

Re: [llvm-commits] Updated LowerSwitch patch

2007-03-03 Thread Chris Lattner
On Mar 3, 2007, at 4:11 PM, Anton Korobeynikov wrote: Hello, Everyone. Please find updated LowerSwitch patch (synced with latest APInt- related changes). Very interesting! Can you give an example with before/after code? Please add this as a testcase as well. Some code comments: Meta-c