- Apr 17, 2007
-
-
Anton Korobeynikov authored
Also, fixed static case in presence of eax livin. This fixes PR331 PS: Why don't we still have push/pop instructions? :) llvm-svn: 36195
-
- Apr 11, 2007
-
-
Bill Wendling authored
llvm-svn: 35869
-
- Mar 21, 2007
-
-
Evan Cheng authored
llvm-svn: 35230
-
- Jan 26, 2007
-
-
Jim Laskey authored
llvm-svn: 33537
-
- Jan 24, 2007
-
-
Chris Lattner authored
llvm-svn: 33486
-
- Dec 05, 2006
-
-
Evan Cheng authored
- Re-enable some codegen niceties for X86-64 static relocation model codegen. - Clean ups, etc. llvm-svn: 32238
-
- Nov 30, 2006
-
-
Evan Cheng authored
- Proper support for both small static and PIC modes under X86-64 - Some (non-optimal) support for medium modes. llvm-svn: 32046
-
- Nov 29, 2006
-
-
Evan Cheng authored
llvm-svn: 32017
-
- Nov 04, 2006
-
-
Chris Lattner authored
llvm-svn: 31435
-
- Oct 30, 2006
-
-
Reid Spencer authored
generated object modules to be debugged with gdb. Hopefully this helps pre-release debugging. llvm-svn: 31299
-
- Oct 13, 2006
-
-
Evan Cheng authored
llvm-svn: 30945
-
- Oct 12, 2006
-
-
Chris Lattner authored
llvm-svn: 30907
-
Chris Lattner authored
that it can't assume ESP is unmodified across the instrs. llvm-svn: 30905
-
- Oct 11, 2006
-
-
Evan Cheng authored
llvm-svn: 30891
-
- Oct 09, 2006
-
-
Evan Cheng authored
llvm-svn: 30844
-
- Sep 22, 2006
-
-
Evan Cheng authored
llvm-svn: 30583
-
- Sep 11, 2006
-
-
Evan Cheng authored
operand of a conditional branch to allow load folding into CMP / TEST instructions. llvm-svn: 30241
-
- Sep 08, 2006
-
-
Evan Cheng authored
llvm-svn: 30177
-
- Sep 07, 2006
-
-
Chris Lattner authored
using test, which provides nice simplifications like: - movl %edi, %ecx - andl $2, %ecx - cmpl $0, %ecx + testl $2, %edi je LBB1_11 #cond_next90 There are a couple of dagiselemitter deficiencies that this exposes, they will be handled later. llvm-svn: 30156
-
Evan Cheng authored
llvm-svn: 30152
-
- Aug 11, 2006
-
-
Evan Cheng authored
llvm-svn: 29603
-
- Jul 20, 2006
-
-
Evan Cheng authored
llvm-svn: 29228
-
- Jul 19, 2006
-
-
Evan Cheng authored
llvm-svn: 29194
-
- Jul 11, 2006
-
-
Evan Cheng authored
llvm-svn: 29110
-
- Jun 29, 2006
-
-
Evan Cheng authored
llvm-svn: 28980
-
- Jun 27, 2006
-
-
Evan Cheng authored
llvm-svn: 28938
-
- Jun 15, 2006
-
-
Evan Cheng authored
vector types are passed via XMM registers. llvm-svn: 28789
-
- Jun 02, 2006
-
-
Evan Cheng authored
llvm-svn: 28666
-
- Jun 01, 2006
-
-
Evan Cheng authored
llvm-svn: 28606
-
Evan Cheng authored
llvm-svn: 28603
-
- May 30, 2006
-
-
Evan Cheng authored
Fold c2 in (x << c1) | c2 where (c2 < c1) e.g. int test(int x) { return (x << 3) + 7; } This can be codegen'd as: leal 7(,%eax,8), %eax llvm-svn: 28550
-
- May 20, 2006
-
-
Evan Cheng authored
llvm-svn: 28417
-
- May 19, 2006
-
-
Evan Cheng authored
- Fix a couple of minor bugs in i16immSExt8 and i16immZExt8. - Added loadiPTR fragment used for indirect jumps and calls. llvm-svn: 28392
-
Evan Cheng authored
llvm-svn: 28390
-
- May 17, 2006
-
-
Evan Cheng authored
llvm-svn: 28371
-
- May 16, 2006
-
-
Evan Cheng authored
llvm-svn: 28324
-
- May 08, 2006
-
-
Evan Cheng authored
movw. That is we promote the destination operand to r16. So %CH = TRUNC_R16_R8 %BP is emitted as movw %bp, %cx. This is incorrect. If %cl is live, it would be clobbered. Ideally we want to do the opposite, that is emitted it as movb ??, %ch But this is not possible since %bp does not have a r8 sub-register. We are now defining a new register class R16_ which is a subclass of R16 containing only those 16-bit registers that have r8 sub-registers (i.e. AX - DX). We isel the truncate to two instructions, a MOV16to16_ to copy the value to the R16_ class, followed by a TRUNC_R16_R8. Due to bug 770, the register colaescer is not going to coalesce between R16 and R16_. That will be fixed later so we can eliminate the MOV16to16_. Right now, it can only be eliminated if we are lucky that source and destination registers are the same. llvm-svn: 28164
-
- May 05, 2006
-
-
Evan Cheng authored
llvm-svn: 28127
-
Evan Cheng authored
that gets emitted as movl (for r32 to i16, i8) or a movw (for r16 to i8). And if the destination gets allocated a subregister of the source operand, then the instruction will not be emitted at all. llvm-svn: 28119
-
- Apr 27, 2006
-
-
Evan Cheng authored
for now. Patch contributed by Alexander Friedman. llvm-svn: 27994
-