- Dec 30, 2007
-
-
Bill Wendling authored
function, then go ahead and hoist it out of the loop. This is the result: $ cat a.c volatile int G; int A(int N) { for (; N > 0; --N) G++; } $ llc -o - -relocation-model=pic _A: ... LBB1_2: # bb movl L_G$non_lazy_ptr-"L1$pb"(%eax), %esi incl (%esi) incl %edx cmpl %ecx, %edx jne LBB1_2 # bb ... $ llc -o - -relocation-model=pic -machine-licm _A: ... movl L_G$non_lazy_ptr-"L1$pb"(%eax), %eax LBB1_2: # bb incl (%eax) incl %edx cmpl %ecx, %edx jne LBB1_2 # bb ... I'm limiting this to the MOV32rm x86 instruction for now. llvm-svn: 45444
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Dec 18, 2007
-
-
Bill Wendling authored
based what flag to set on whether it was already marked as "isRematerializable". If there was a further check to determine if it's "really" rematerializable, then I marked it as "mayHaveSideEffects" and created a check in the X86 back-end similar to the remat one. llvm-svn: 45132
-
- Dec 09, 2007
-
-
Bill Wendling authored
llvm-svn: 44727
-
- Dec 08, 2007
-
-
Bill Wendling authored
isTriviallyReMaterializable -> hasNoSideEffects isReallyTriviallyReMaterializable -> isTriviallyReMaterializable llvm-svn: 44702
-
- Oct 11, 2007
-
-
Arnold Schwaighofer authored
enabled by passing -tailcallopt to llc. The optimization is performed if the following conditions are satisfied: * caller/callee are fastcc * elf/pic is disabled OR elf/pic enabled + callee is in module + callee has visibility protected or hidden llvm-svn: 42870
-
- Oct 09, 2007
-
-
Evan Cheng authored
llvm-svn: 42783
-
- Oct 08, 2007
-
-
Evan Cheng authored
llvm-svn: 42761
-
- Oct 06, 2007
-
-
Evan Cheng authored
to its inverse. Testing this as llcbeta llvm-svn: 42661
-
Evan Cheng authored
llvm-svn: 42655
-
- Oct 05, 2007
-
-
Evan Cheng authored
cause performance degradation. llvm-svn: 42653
-
Evan Cheng authored
leal 1(%ecx), %edi, which requires 67H prefix. llvm-svn: 42647
-
Evan Cheng authored
llvm-svn: 42642
-
Evan Cheng authored
llvm-svn: 42630
-
- Sep 29, 2007
-
-
Evan Cheng authored
llvm-svn: 42459
-
- Sep 25, 2007
-
-
Evan Cheng authored
Added support for new condition code modeling scheme (i.e. physical register dependency). These are a bunch of instructions that are duplicated so the x86 backend can support both the old and new schemes at the same time. They will be deleted after all the kinks are worked out. llvm-svn: 42285
-
- Sep 17, 2007
-
-
Dan Gohman authored
can terminate a block with no fall-through. llvm-svn: 42029
-
- Sep 15, 2007
-
-
Dan Gohman authored
llvm-svn: 41975
-
- Sep 14, 2007
-
-
Evan Cheng authored
llvm-svn: 41962
-
- Sep 07, 2007
-
-
Owen Anderson authored
Patch by Sterling Stein! llvm-svn: 41758
-
- Sep 06, 2007
-
-
Evan Cheng authored
leal (,%rcx,8), %rcx It should be leal (,%rcx,8), %ecx llvm-svn: 41735
-
- Aug 10, 2007
-
-
Christopher Lamb authored
Add 2-addr to 3-addr promotion code that allows 32-bit LEA to be used via subregisters when 16-bit LEA is disabled. llvm-svn: 41007
-
- Jul 26, 2007
-
-
Evan Cheng authored
llvm-svn: 40537
-
- Jul 07, 2007
-
-
Evan Cheng authored
llvm-svn: 37960
-
- Jul 04, 2007
-
-
Dale Johannesen authored
their names are changed. llvm-svn: 37876
-
- Jul 03, 2007
-
-
Dale Johannesen authored
model to include f32 variants. Some factoring improvments forthcoming. llvm-svn: 37847
-
- Jun 26, 2007
-
-
Dan Gohman authored
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 specific operands (i.e. constant pool loads). llvm-svn: 37728
-
- Jun 19, 2007
-
-
Dan Gohman authored
with a general target hook to identify rematerializable instructions. Some instructions are only rematerializable with specific operands, such as loads from constant pools, while others are always rematerializable. This hook allows both to be identified as being rematerializable with the same mechanism. llvm-svn: 37644
-
- Jun 15, 2007
-
-
Dale Johannesen authored
llvm-svn: 37578
-
- Jun 14, 2007
-
-
Dan Gohman authored
implementation for x86. llvm-svn: 37576
-
- Jun 13, 2007
-
-
Dale Johannesen authored
llvm-svn: 37571
-
- Jun 08, 2007
-
-
Evan Cheng authored
llvm-svn: 37528
-
- May 21, 2007
-
-
Evan Cheng authored
llvm-svn: 37266
-
- May 18, 2007
-
-
Evan Cheng authored
llvm-svn: 37193
-
- Apr 25, 2007
-
-
Evan Cheng authored
llvm-svn: 36430
-
- Apr 24, 2007
-
-
Bill Wendling authored
llvm-svn: 36404
-
- Apr 04, 2007
-
-
Bill Wendling authored
llvm-svn: 35638
-
- Apr 03, 2007
-
-
Bill Wendling authored
llvm-svn: 35616
-
- Mar 28, 2007
-
-
Chris Lattner authored
_test3: leaq (,%rdi,4), %rax orq %rdi, %rax ret instead of: _test2: movq %rdi, %rax shlq $2, %rax orq %rdi, %rax ret llvm-svn: 35434
-
Chris Lattner authored
system assembler not groking legal instructions like "leal (,%esi,8), %ecx". llvm-svn: 35393
-