- Aug 23, 2010
-
-
Gabor Greif authored
llvm-svn: 111835
-
- Aug 17, 2010
-
-
Anton Korobeynikov authored
- Do not clobber al during variadic calls, this is AMD64 ABI-only feature - Emit wincall64, where necessary Patch by Cameron Esfahani! llvm-svn: 111289
-
- Aug 13, 2010
-
-
Eric Christopher authored
llvm-svn: 111001
-
Eric Christopher authored
llvm-svn: 111000
-
- Aug 06, 2010
-
-
Owen Anderson authored
llvm-svn: 110460
-
Owen Anderson authored
llvm-svn: 110410
-
Owen Anderson authored
ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396
-
- Aug 05, 2010
-
-
Eric Christopher authored
llvm-svn: 110371
-
- Jul 22, 2010
-
-
Chris Lattner authored
rip out the implementation of X86InstrInfo::GetInstSizeInBytes. The code being ripped out just implemented a copy and hacked up version of the (old) instruction encoder, and is buggy and terrible in other ways. Since "GetInstSizeInBytes" is really only there to support the JIT's "NeedsExactSize" hook (which noone is using), just rip out the code. I will rip out the NeedsExactSize hook next. This resolves rdar://7617809 - switch X86InstrInfo::GetInstSizeInBytes to use X86MCCodeEmitter llvm-svn: 109149
-
- Jul 17, 2010
-
-
Bill Wendling authored
thus is a much more meaningful name. llvm-svn: 108563
-
- Jul 16, 2010
-
-
Jakob Stoklund Olesen authored
pass that inserted it. It is no longer necessary to limit the live ranges of FP registers to a single basic block. llvm-svn: 108536
-
- Jul 09, 2010
-
-
Chris Lattner authored
like all other instructions, even though a segment is not allowed. This resolves a bunch of gross hacks in the encoder and makes LEA more consistent with the rest of the instruction set. No functionality change. llvm-svn: 107934
-
Chris Lattner authored
X86 memory operand. llvm-svn: 107925
-
- Jun 22, 2010
-
-
Dan Gohman authored
llvm-svn: 106542
-
- Apr 21, 2010
-
-
Bill Wendling authored
fixes a bug (<rdar://problem/7880900>) in the JIT. This code wouldn't work: target triple = "x86_64-apple-darwin" define double @func(double %a) { %tmp1 = fmul double %a, 5.000000e-01 ; <double> [#uses=1] ret double %tmp1 } define i32 @main() nounwind { %1 = call double @func(double 4.770000e-04) ; <i64> [#uses=0] ret i32 0 } llvm-svn: 101965
-
- Apr 15, 2010
-
-
Dan Gohman authored
llvm-svn: 101334
-
- Apr 08, 2010
-
-
Chris Lattner authored
llvm-svn: 100709
-
- Mar 14, 2010
-
-
Chris Lattner authored
with an MCSymbol instead of an immediate. llvm-svn: 98481
-
Chris Lattner authored
llvm-svn: 98474
-
Chris Lattner authored
an MCSymbol. Make the EH_LABEL MachineInstr hold its label with an MCSymbol instead of ID. Fix a bug in MMI.cpp which would return labels named "Label4" instead of "label4". llvm-svn: 98463
-
Chris Lattner authored
instead of label ID's. This cleans up and regularizes a bunch of code and makes way for future progress. Unfortunately, this pointed out to me that JITDwarfEmitter.cpp is largely copy and paste from DwarfException/MachineModuleInfo and other places. This is very sad and disturbing. :( One major change here is that TidyLandingPads moved from being called in DwarfException::BeginFunction to being called in DwarfException::EndFunction. There should not be any functionality change from doing this, but I'm not an EH expert. llvm-svn: 98459
-
- Feb 13, 2010
-
-
Chris Lattner authored
We still have the templated X86 JIT emitter, *and* the almost-copy in X86InstrInfo for getting instruction sizes. llvm-svn: 96059
-
Chris Lattner authored
encoder and decoder by using new MRM_ forms. llvm-svn: 96048
-
Chris Lattner authored
llvm-svn: 96038
-
- Feb 12, 2010
-
-
Chris Lattner authored
This will work better for the disassembler for modeling things like lfence/monitor/vmcall etc. llvm-svn: 95960
-
- Feb 11, 2010
-
-
Chris Lattner authored
fixes the remaining x86-64 jit failures afaik. llvm-svn: 95867
-
Chris Lattner authored
r12b, etc) also encodes to a R/M value of 4, which is just as illegal as ESP/RSP for the non-sib version an address. This fixes x86-64 jit miscompilations of a bunch of programs. llvm-svn: 95866
-
- Feb 10, 2010
-
-
Daniel Dunbar authored
MCInst it came from. llvm-svn: 95767
-
Daniel Dunbar authored
llvm-svn: 95709
-
- Feb 09, 2010
-
-
Daniel Dunbar authored
llvm-svn: 95708
-
Chris Lattner authored
in X86-32 mode. This is still required in x86-64 mode to avoid forming [disp+rip] encoding. Rewrite the SIB byte decision logic to be actually understandable. llvm-svn: 95693
-
Chris Lattner authored
a confusing idiom to check for ESP or RSP. llvm-svn: 95690
-
Chris Lattner authored
llvm-svn: 95689
-
Chris Lattner authored
into TargetOpcodes.h. #include the new TargetOpcodes.h into MachineInstr. Add new inline accessors (like isPHI()) to MachineInstr, and start using them throughout the codebase. llvm-svn: 95687
-
- Feb 05, 2010
-
-
Chris Lattner authored
llvm-svn: 95438
-
Chris Lattner authored
llvm-svn: 95410
-
Chris Lattner authored
TSFlags directly instead of a TargetInstrDesc. llvm-svn: 95405
-
Chris Lattner authored
pushl %ebp movl %esp, %ebp movl $42, %eax popl %ebp ret llvm-svn: 95344
-
- Feb 04, 2010
-
-
Evan Phoenix authored
Instruction selection for X86 now can choose an instruction sequence that will fit any address of any symbol, no matter the pointer width. X86-64 uses a mov+call-via-reg sequence for this. llvm-svn: 95323
-
- Feb 03, 2010
-
-
Chris Lattner authored
instructions with no operands. It can now handle define void @test2() nounwind { ret void } llvm-svn: 95261
-