- Feb 09, 2006
-
-
Chris Lattner authored
llvm-svn: 26080
-
- Feb 05, 2006
-
-
Chris Lattner authored
llvm-svn: 25985
-
- Feb 02, 2006
-
-
Chris Lattner authored
llvm-svn: 25906
-
Chris Lattner authored
llvm-svn: 25905
-
- Jan 31, 2006
-
-
Chris Lattner authored
llvm-svn: 25842
-
Chris Lattner authored
an operand that contains the condcode), making things significantly simpler. llvm-svn: 25840
-
Chris Lattner authored
a CC as an operand. Much smaller, much happier. llvm-svn: 25839
-
Chris Lattner authored
llvm-svn: 25838
-
Chris Lattner authored
llvm-svn: 25837
-
Chris Lattner authored
llvm-svn: 25834
-
- Jan 30, 2006
-
-
Chris Lattner authored
SPARC condition codes, not in terms of the DAG condcodes. This allows us to write nice clean patterns for cmovs/branches. llvm-svn: 25815
-
Chris Lattner authored
uint %test(uint %X) { %Y = call uint %llvm.ctpop.i32(uint %X) ret uint %Y } to: test: save -96, %o6, %o6 sll %i0, 0, %l0 popc %l0, %i0 restore %g0, %g0, %g0 retl nop instead of to 40 logical ops. Note the shift-by-zero that clears the top part of the 64-bit V9 register. Testcase here: CodeGen/SparcV8/ctpop.ll llvm-svn: 25814
-
Chris Lattner authored
llvm-svn: 25810
-
Chris Lattner authored
patterns. This allows emission of this code: t1: save -96, %o6, %o6 subcc %i0, %i1, %l0 move %icc, %i0, %i2 or %g0, %i2, %i0 restore %g0, %g0, %g0 retl nop instead of this: t1: save -96, %o6, %o6 subcc %i0, %i1, %l0 be .LBBt1_2 ! nop .LBBt1_1: ! or %g0, %i2, %i0 .LBBt1_2: ! restore %g0, %g0, %g0 retl nop for this: int %t1(int %a, int %b, int %c) { %tmp.2 = seteq int %a, %b %tmp3 = select bool %tmp.2, int %a, int %c ret int %tmp3 } llvm-svn: 25809
-
- Jan 28, 2006
-
-
Chris Lattner authored
llvm-svn: 25716
-
- Jan 27, 2006
-
-
Chris Lattner authored
llvm-svn: 25674
-
- Jan 15, 2006
-
-
Chris Lattner authored
Compile this: %_2E_str_8 = external global [75 x sbyte] implementation ; Functions: declare int %printf(sbyte*, ...) void %test() %tmp.101 = call int (sbyte*, ...)* %printf( sbyte* getelementptr ([75 x sbyte]* %_2E_str_8, int 0, int 0) ) ; <int> [#uses=0] unreachable } to this: main_endif_2E_8: save -96, %o6, %o6 sethi %hi(_2E_str_8), %l0 add %l0, %lo(_2E_str_8), %o0 call printf nop instead of this: main_endif_2E_8: save -96, %o6, %o6 sethi %hi(_2E_str_8), %l0 or %g0, %lo(_2E_str_8), %l1 ;; extra instruction add %l1, %l0, %o0 call printf nop llvm-svn: 25335
-
- Jan 12, 2006
-
-
Chris Lattner authored
llvm-svn: 25249
-
- Jan 11, 2006
-
-
Chris Lattner authored
pattern for SUBCCrr, and makes it trivial to add support for SUBCCri, eliminating an instruction in the common "setcc X, imm" case. llvm-svn: 25212
-
Chris Lattner authored
llvm-svn: 25210
-
Chris Lattner authored
This implements Regression/CodeGen/SparcV8/xnor.ll llvm-svn: 25209
-
- Jan 09, 2006
-
-
Evan Cheng authored
hasInFlag, hasOutFlag. llvm-svn: 25155
-
- Dec 26, 2005
-
-
Evan Cheng authored
Currently tblgen cannot tell which operands in the operand list are results so it assumes the first one is a result. This is bad. Ideally we would fix this by separating results from inputs, e.g. (res R32:$dst), (ops R32:$src1, R32:$src2). But that's a more distruptive change. Adding 'let noResults = 1' is the workaround to tell tblgen that the instruction does not produces a result. It works for now since tblgen does not support instructions which produce multiple results. llvm-svn: 25017
-
- Dec 23, 2005
-
-
Evan Cheng authored
* Added a pseudo instruction (for each target) that represent "return void". This is a workaround for lack of optional flag operand (return void is not lowered so it does not have a flag operand.) llvm-svn: 24997
-
Chris Lattner authored
to represent the int part (because it's always 32-bits) llvm-svn: 24976
-
- Dec 22, 2005
-
-
Chris Lattner authored
llvm-svn: 24967
-
- Dec 19, 2005
-
-
Chris Lattner authored
llvm-svn: 24855
-
Chris Lattner authored
llvm-svn: 24854
-
Chris Lattner authored
llvm-svn: 24853
-
Chris Lattner authored
llvm-svn: 24850
-
Chris Lattner authored
llvm-svn: 24848
-
Chris Lattner authored
llvm-svn: 24847
-
Chris Lattner authored
llvm-svn: 24845
-
Chris Lattner authored
llvm-svn: 24841
-
Chris Lattner authored
llvm-svn: 24840
-
Chris Lattner authored
llvm-svn: 24839
-
- Dec 18, 2005
-
-
Chris Lattner authored
llvm-svn: 24832
-
Chris Lattner authored
a small bug in tblgen. When that is fixed, we can remove the ISD::Call case in Select. llvm-svn: 24830
-
Chris Lattner authored
InstV8 class to the InstrFormats file where it belongs. llvm-svn: 24824
-
Chris Lattner authored
llvm-svn: 24823
-