- Oct 23, 2007
-
-
Evan Cheng authored
Temporary solution: added a different set of BCTRL_Macho / BCTRL_ELF with right callee-saved defs set for ppc64. llvm-svn: 43248
-
- Jun 29, 2007
-
-
Evan Cheng authored
llvm-svn: 37790
-
- Jun 22, 2007
-
-
Dan Gohman authored
TargetLowering to SelectionDAG so that they have more convenient access to the current DAG, in preparation for the ValueType routines being changed from standalone functions to members of SelectionDAG for the pre-legalize vector type changes. llvm-svn: 37704
-
- Apr 02, 2007
-
-
Chris Lattner authored
equality comparisons of a constant. This allows us to codegen the 'sintzero' loop in PR1288 as: LBB1_1: ;cond_next li r4, 0 addi r2, r2, 1 stw r4, 0(r3) addi r3, r3, 4 cmpwi cr0, r2, -1 bne cr0, LBB1_1 ;cond_next instead of: LBB1_1: ;cond_next addi r2, r2, 1 li r4, 0 xoris r5, r2, 65535 stw r4, 0(r3) addi r3, r3, 4 cmplwi cr0, r5, 65535 bne cr0, LBB1_1 ;cond_next This implements CodeGen/PowerPC/compare-simm.ll, and also cuts 74 instructions out of kc++. llvm-svn: 35590
-
- Dec 19, 2006
-
-
Chris Lattner authored
llvm-svn: 32703
-
- Dec 12, 2006
-
-
Jim Laskey authored
llvm-svn: 32481
-
- Dec 07, 2006
-
-
Bill Wendling authored
llvm-svn: 32333
-
- Dec 06, 2006
-
-
Chris Lattner authored
is 'unsigned'. llvm-svn: 32279
-
- Nov 28, 2006
-
-
Evan Cheng authored
of opcode and number of operands. llvm-svn: 31947
-
- Nov 17, 2006
-
-
Chris Lattner authored
value and CR reg #. This requires swapping the order of these everywhere that touches BCC and requires us to write custom matching logic for PPCcondbranch :( llvm-svn: 31835
-
Chris Lattner authored
llvm-svn: 31834
-
Chris Lattner authored
llvm-svn: 31833
-
- Nov 16, 2006
-
-
Chris Lattner authored
llvm-svn: 31775
-
- Nov 15, 2006
-
-
Chris Lattner authored
addrmodes. llvm-svn: 31757
-
- Nov 14, 2006
-
-
Chris Lattner authored
llvm-svn: 31733
-
- Nov 11, 2006
-
-
Chris Lattner authored
produces this clever code: _millisecs: lis r2, ha16(_Time.1182) lwzu r3, lo16(_Time.1182)(r2) lwz r2, 4(r2) addic r4, r2, 1 addze r3, r3 blr instead of this: _millisecs: lis r2, ha16(_Time.1182) la r3, lo16(_Time.1182)(r2) lwz r2, lo16(_Time.1182)(r2) lwz r3, 4(r3) addic r4, r3, 1 addze r3, r2 blr for: long %millisecs() { %tmp = load long* %Time.1182 ; <long> [#uses=1] %tmp1 = add long %tmp, 1 ; <long> [#uses=1] ret long %tmp1 } llvm-svn: 31673
-
Chris Lattner authored
llvm-svn: 31654
-
- Nov 10, 2006
-
-
Chris Lattner authored
(because the 64-bit reg target versions aren't implemented yet), doesn't support r+r addr modes, and doesn't handle stores, but it works otherwise. :) This is disabled unless -enable-ppc-preinc is passed to llc for now. llvm-svn: 31621
-
- Nov 08, 2006
-
-
Evan Cheng authored
llvm-svn: 31571
-
Chris Lattner authored
class, where it can be used for preinc formation. llvm-svn: 31536
-
- Nov 02, 2006
-
-
Reid Spencer authored
Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting fall out by removing unused variables. Remaining warnings have to do with unused functions (I didn't want to delete code without review) and unused variables in generated code. Maintainers should clean up the remaining issues when they see them. All changes pass DejaGnu tests and Olden. llvm-svn: 31380
-
- Oct 31, 2006
-
-
Chris Lattner authored
condition. This fixes miscompilation of Olden/bh and many others. llvm-svn: 31301
-
- Sep 22, 2006
-
-
Nate Begeman authored
llvm-svn: 30577
-
- Sep 20, 2006
-
-
Chris Lattner authored
llvm-svn: 30510
-
Chris Lattner authored
1. Codegen this comparison: if (X == 0x8000) as: cmplwi cr0, r3, 32768 bne cr0, LBB1_2 ;cond_next instead of: lis r2, 0 ori r2, r2, 32768 cmpw cr0, r3, r2 bne cr0, LBB1_2 ;cond_next 2. Codegen this comparison: if (X == 0x12345678) as: xoris r2, r3, 4660 cmplwi cr0, r2, 22136 bne cr0, LBB1_2 ;cond_next instead of: lis r2, 4660 ori r2, r2, 22136 cmpw cr0, r3, r2 bne cr0, LBB1_2 ;cond_next llvm-svn: 30509
-
- Aug 27, 2006
-
-
Chris Lattner authored
llvm-svn: 29911
-
Evan Cheng authored
SDOperand arguments. Use the variants which take an array and number instead. llvm-svn: 29907
-
- Aug 26, 2006
-
-
Evan Cheng authored
llvm-svn: 29901
-
Evan Cheng authored
llvm-svn: 29898
-
Evan Cheng authored
llvm-svn: 29895
-
- Aug 16, 2006
-
-
Chris Lattner authored
llvm-svn: 29715
-
- Aug 11, 2006
-
-
Evan Cheng authored
llvm-svn: 29604
-
- Aug 08, 2006
-
-
Chris Lattner authored
in the start of an array and a count of operands where applicable. In many cases, the number of operands is known, so this static array can be allocated on the stack, avoiding the heap. In many other cases, a SmallVector can be used, which has the same benefit in the common cases. I updated a lot of code calling getNode that takes a vector, but ran out of time. The rest of the code should be updated, and these methods should be removed. We should also do the same thing to eliminate the methods that take a vector of MVT::ValueTypes. It would be extra nice to convert the dagiselemitter to avoid creating vectors for operands when calling getTargetNode. llvm-svn: 29566
-
Evan Cheng authored
llvm-svn: 29549
-
- Jul 28, 2006
-
-
Evan Cheng authored
llvm-svn: 29373
-
- Jul 27, 2006
-
-
Evan Cheng authored
llvm-svn: 29338
-
- Jun 29, 2006
-
-
Chris Lattner authored
llvm-svn: 28971
-
- Jun 27, 2006
-
-
Chris Lattner authored
llvm-svn: 28944
-
Chris Lattner authored
llvm-svn: 28941
-
Chris Lattner authored
llvm-svn: 28922
-