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

2007-05-15 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.43 -> 1.44 --- Log message: Fix comment. --- Diffs of the changes: (+1 -1) ARMConstantIslandPass.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Target/ARM/ARMConstantIslandPass.cp

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMLoadStoreOptimizer.cpp

2007-05-02 Thread Devang Patel
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.41 -> 1.42 ARMLoadStoreOptimizer.cpp updated: 1.10 -> 1.11 --- Log message: Drop 'const' --- Diffs of the changes: (+4 -4) ARMConstantIslandPass.cpp |4 ++-- ARMLoadStoreOptimizer.cpp |4 ++-- 2 files ch

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMLoadStoreOptimizer.cpp

2007-05-02 Thread Devang Patel
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.40 -> 1.41 ARMLoadStoreOptimizer.cpp updated: 1.9 -> 1.10 --- Log message: Use 'static const char' instead of 'static const int'. Due to darwin gcc bug, one version of darwin linker coalesces static const int, which

Re: [llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMLoadStoreOptimizer.cpp

2007-05-01 Thread Chris Lattner
> +static const int ID; > +ARMConstantIslands() : MachineFunctionPass((intptr_t)&ID) {} Why the cast to intptr_t? Why not just make the ctors take void* ? -Chris ___ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMLoadStoreOptimizer.cpp

2007-05-01 Thread Devang Patel
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.39 -> 1.40 ARMLoadStoreOptimizer.cpp updated: 1.8 -> 1.9 --- Log message: Do not use typeinfo to identify pass in pass manager. --- Diffs of the changes: (+8 -0) ARMConstantIslandPass.cpp |4 ARMLoadSto

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

2007-04-27 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.37 -> 1.38 --- Log message: Doh. ARM::LEApcrel is a single instruction MI. --- Diffs of the changes: (+3 -5) ARMConstantIslandPass.cpp |8 +++- 1 files changed, 3 insertions(+), 5 deletions(-) Index: ll

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

2007-04-27 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.36 -> 1.37 --- Log message: Special handling of LEApcrel and tLEApcrel. --- Diffs of the changes: (+11 -0) ARMConstantIslandPass.cpp | 11 +++ 1 files changed, 11 insertions(+) Index: llvm/lib/Target/

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

2007-04-23 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.35 -> 1.36 --- Log message: Make Thumb funcs containing islands 4-byte aligned. Fix bugs maintaining BBOffsets and BBSizes when adjusting conditional branches. --- Diffs of the changes: (+19 -6) ARMConstantIsla

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

2007-04-03 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.34 -> 1.35 --- Log message: Remove unused constant pool entries. --- Diffs of the changes: (+60 -32) ARMConstantIslandPass.cpp | 92 ++ 1 files changed, 60 insertions

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

2007-04-02 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.33 -> 1.34 --- Log message: fix off by 1 error in displacement computation --- Diffs of the changes: (+5 -0) ARMConstantIslandPass.cpp |5 + 1 files changed, 5 insertions(+) Index: llvm/lib/Target/ARM/

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMMachineFunctionInfo.h ARMRegisterInfo.cpp

2007-03-01 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.32 -> 1.33 ARMMachineFunctionInfo.h updated: 1.7 -> 1.8 ARMRegisterInfo.cpp updated: 1.76 -> 1.77 --- Log message: - Track which callee-saved registers are spilled. - Some code clean up. --- Diffs of the changes: (

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

2007-02-28 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.31 -> 1.32 --- Log message: Changes requested in review of last pass. Also pulled isThumb into a member, instead of resetting in every function that uses it. --- Diffs of the changes: (+142 -113) ARMConstantIsl

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp README.txt

2007-02-28 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.30 -> 1.31 README.txt updated: 1.14 -> 1.15 --- Log message: Add intelligence about where to break large blocks. --- Diffs of the changes: (+80 -35) ARMConstantIslandPass.cpp | 96 +

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp README.txt

2007-02-25 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.29 -> 1.30 README.txt updated: 1.13 -> 1.14 --- Log message: cosmetic changes from review of last patch. obvious --- Diffs of the changes: (+5 -4) ARMConstantIslandPass.cpp |4 ++-- README.txt

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

2007-02-24 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.28 -> 1.29 --- Log message: remove crediting of Evan Cheng and me. --- Diffs of the changes: (+0 -1) ARMConstantIslandPass.cpp |1 - 1 files changed, 1 deletion(-) Index: llvm/lib/Target/ARM/ARMConstantIsl

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp README.txt

2007-02-24 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.27 -> 1.28 README.txt updated: 1.12 -> 1.13 --- Log message: Removed WaterListOffset, inserted BBOffsets. Remove TODO item about this from README. When no water available, use end of block if in range. (More to d

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp README.txt

2007-02-22 Thread Dale Johannesen
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.26 -> 1.27 README.txt updated: 1.11 -> 1.12 --- Log message: rewrite of constant islands --- Diffs of the changes: (+275 -86) ARMConstantIslandPass.cpp | 335 +++--- READ

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

2007-02-09 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.25 -> 1.26 --- Log message: These vectors are frequently large. Use std::vector instead. --- Diffs of the changes: (+10 -10) ARMConstantIslandPass.cpp | 20 ++-- 1 files changed, 10 insertions(+

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

2007-02-09 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.24 -> 1.25 --- Log message: Add reference counting to constantpool entries. Delete the unused ones. --- Diffs of the changes: (+113 -36) ARMConstantIslandPass.cpp | 149 ++

Re: [llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp

2007-02-02 Thread Bill Wendling
Hi Evan, >DEBUG(std::cerr << "User of CPE#" << CPEMI->getOperand(0).getImm() ><< " max delta=" << MaxDisp > - << " at offset " << int(UserOffset-CPEOffset) << "\t" > + << " at offset " << int(CPEOffset-UserOffset) << "\t" >

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

2007-02-02 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.23 -> 1.24 --- Log message: - Branch max. displacement calculation bug. - Add debugging info. --- Diffs of the changes: (+20 -9) ARMConstantIslandPass.cpp | 29 - 1 files changed, 2

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

2007-02-02 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.22 -> 1.23 --- Log message: Use MBB.empty() instead of MBB.size() for speed. --- Diffs of the changes: (+1 -1) ARMConstantIslandPass.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib

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

2007-02-02 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.21 -> 1.22 --- Log message: Watch out for empty BB. --- Diffs of the changes: (+1 -0) ARMConstantIslandPass.cpp |1 + 1 files changed, 1 insertion(+) Index: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp dif

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

2007-02-01 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.20 -> 1.21 --- Log message: Pasto. Lots of it. --- Diffs of the changes: (+3 -5) ARMConstantIslandPass.cpp |8 +++- 1 files changed, 3 insertions(+), 5 deletions(-) Index: llvm/lib/Target/ARM/ARMConstan

Re: [llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp

2007-02-01 Thread Evan Cheng
Yep. I shouldn't have checked in stuff just before I went to bed. :-) You can tell there is a definite mismatch between comments and code. Lots of copy and paste bugs. Thanks, Evan On Feb 1, 2007, at 9:34 AM, Lauro Ramos Venancio wrote: > Hi Evan, > > Does this patch is correct? According to

Re: [llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp

2007-02-01 Thread Lauro Ramos Venancio
Hi Evan, Does this patch is correct? According to ARM manual, AddrMode2 and AddrMode3 don't have scale (scale=1). I think MaxOffs should be ((1 << Bits) - 1) * Scale. Lauro > @@ -304,34 +307,42 @@ >continue; > assert(0 && "Unknown addressing mode for CP reference!");

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

2007-02-01 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.19 -> 1.20 --- Log message: - Off by one bugs in maximum displacement calculation / testing. - In thumb mode, a new constpool island BB size should be 4 + 2 to compensate for the potential padding due to alignment

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

2007-01-31 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.18 -> 1.19 --- Log message: Pessmistically assume the .align 2 before the first constpool entry adds two bytes padding. --- Diffs of the changes: (+12 -2) ARMConstantIslandPass.cpp | 14 -- 1 files

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

2007-01-31 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.17 -> 1.18 --- Log message: Handle an interesting corner case: the constpool_entry being reference is two instructions away, i.e. its address is equal to PC. %r0 = tLDRpci bx CONSTPOOL_ENTRY

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

2007-01-31 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.16 -> 1.17 --- Log message: When determining whether a pc relative branch / load displacement fits in the instruction field, adjust it for PC value (4 for thumb, 8 for arm). --- Diffs of the changes: (+42 -27) A

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

2007-01-31 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.15 -> 1.16 --- Log message: Some comments. --- Diffs of the changes: (+6 -2) ARMConstantIslandPass.cpp |8 ++-- 1 files changed, 6 insertions(+), 2 deletions(-) Index: llvm/lib/Target/ARM/ARMConstantIsl

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

2007-01-31 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.14 -> 1.15 --- Log message: ConstPool island bug: watch out for cases where UserMI is the last MI of the BB. --- Diffs of the changes: (+16 -4) ARMConstantIslandPass.cpp | 20 1 files chang

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

2007-01-30 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.13 -> 1.14 --- Log message: - Added Thumb constpool island support. - Islands are inserted right after the user MI since thumb LDR cannot encode negative offset. --- Diffs of the changes: (+17 -24) ARMConstant

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMMachineFunctionInfo.h ARMRegisterInfo.cpp

2007-01-29 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.12 -> 1.13 ARMMachineFunctionInfo.h updated: 1.4 -> 1.5 ARMRegisterInfo.cpp updated: 1.43 -> 1.44 --- Log message: - In thumb mode, if size of MachineFunction is >= 2048, force LR to be spilled (if it is not alread

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMInstrInfo.h ARMInstrInfo.cpp

2007-01-29 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.11 -> 1.12 ARMInstrInfo.h updated: 1.6 -> 1.7 ARMInstrInfo.cpp updated: 1.12 -> 1.13 --- Log message: Factor GetInstSize() out of constpool island pass. --- Diffs of the changes: (+84 -70) ARMConstantIslandPass.c

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

2007-01-26 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.9 -> 1.10 --- Log message: Conditional branch being fixed up is not the last MI in the BB, there is a unconditional branch following it. Simply invert the condition and swap destinations if the conditional branch can

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMISelLowering.cpp ARMInstrInfo.cpp ARMInstrInfo.h ARMInstrInfo.td

2007-01-26 Thread Jim Laskey
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.8 -> 1.9 ARMISelLowering.cpp updated: 1.3 -> 1.4 ARMInstrInfo.cpp updated: 1.11 -> 1.12 ARMInstrInfo.h updated: 1.5 -> 1.6 ARMInstrInfo.td updated: 1.85 -> 1.86 --- Log message: Make LABEL a builtin opcode. --- Diff

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

2007-01-25 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.7 -> 1.8 --- Log message: SplitBlockBeforeInstr() insert a unconditional branch to the next BB. This is unnecessary when we are fixing up a conditional branch since we will be adding a unconditional branch to the des

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

2007-01-25 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.6 -> 1.7 --- Log message: Need to scan the function for branches even if there aren't any constants. --- Diffs of the changes: (+2 -3) ARMConstantIslandPass.cpp |5 ++--- 1 files changed, 2 insertions(+), 3 d

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

2007-01-25 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.5 -> 1.6 --- Log message: Forgot to update this. --- Diffs of the changes: (+1 -1) ARMConstantIslandPass.cpp |2 +- 1 files changed, 1 insertion(+), 1 deletion(-) Index: llvm/lib/Target/ARM/ARMConstantIslan

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

2007-01-25 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.4 -> 1.5 --- Log message: Add comment, fix typo, reduce memory usage, etc. --- Diffs of the changes: (+14 -9) ARMConstantIslandPass.cpp | 23 ++- 1 files changed, 14 insertions(+), 9 deletio

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

2007-01-25 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.3 -> 1.4 --- Log message: Doh. Skip JT branches. --- Diffs of the changes: (+2 -1) ARMConstantIslandPass.cpp |3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) Index: llvm/lib/Target/ARM/ARMConstantIsl

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

2007-01-24 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.2 -> 1.3 --- Log message: Added (preliminary) branch shortening capability to constantpool island pass. --- Diffs of the changes: (+130 -7) ARMConstantIslandPass.cpp | 137 +++

[llvm-commits] CVS: llvm/lib/Target/ARM/ARMConstantIslandPass.cpp ARMISelDAGToDAG.cpp ARMInstrThumb.td

2007-01-24 Thread Evan Cheng
Changes in directory llvm/lib/Target/ARM: ARMConstantIslandPass.cpp updated: 1.1 -> 1.2 ARMISelDAGToDAG.cpp updated: 1.102 -> 1.103 ARMInstrThumb.td updated: 1.2 -> 1.3 --- Log message: Use PC relative ldr to load from a constantpool in Thumb mode. --- Diffs of the changes: (+25 -9) ARMCons