- Feb 25, 2007
-
-
Chris Lattner authored
result value stuff. This eliminates a bunch of duplicated code and now GetRetValueLocs is the sole place that decides where a value is returned. llvm-svn: 34588
-
Chris Lattner authored
llvm-svn: 34587
-
Chris Lattner authored
function. This function now uses GetRetValueLocs to determine *where* the result values are located and concerns itself with *how* to pull the values out. llvm-svn: 34586
-
Chris Lattner authored
llvm-svn: 34585
-
Chris Lattner authored
registers out from the logic of *how* to return them. This changes X86-64 to mark EAX live out when returning a 32-bit value, where before it marked RAX liveout. llvm-svn: 34582
-
Chris Lattner authored
llvm-svn: 34579
-
Chris Lattner authored
llvm-svn: 34578
-
Chris Lattner authored
llvm-svn: 34577
-
Chris Lattner authored
llvm-svn: 34576
-
- Feb 22, 2007
-
-
Jim Laskey authored
llvm-svn: 34488
-
- Feb 21, 2007
-
-
Jim Laskey authored
llvm-svn: 34482
-
Evan Cheng authored
Add implicit uses of EBX to calls to ensure liveintervalanalysis does not treat the GOT in EBX move as dead upon definition. This should fix PR1207. llvm-svn: 34470
-
- Feb 01, 2007
-
-
Anton Korobeynikov authored
affected part is codegen of "memove" inside x86 backend. This fixes PR1144 llvm-svn: 33752
-
- Jan 29, 2007
-
-
Nate Begeman authored
address nodes. llvm-svn: 33636
-
- Jan 28, 2007
-
-
Nick Lewycky authored
What compiler are people using that accepts this code? llvm-svn: 33603
-
Anton Korobeynikov authored
1. New parameter attribute called 'inreg'. It has meaning "place this parameter in registers, if possible". This is some generalization of gcc's regparm(n) attribute. It's currently used only in X86-32 backend. 2. Completely rewritten CC handling/lowering code inside X86 backend. Merged stdcall + c CCs and fastcall + fast CC. 3. Dropped CSRET CC. We cannot add struct return variant for each target-specific CC (e.g. stdcall + csretcc and so on). 4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in on first attribute has meaning 'This is hidden pointer to structure return. Handle it gently'. 5. Fixed small bug in llvm-extract + add new feature to FunctionExtraction pass, which relinks all internal-linkaged callees from deleted function to external linkage. This will allow further linking everything together. NOTEs: 1. Documentation will be updated soon. 2. llvm-upgrade should be improved to translate csret => sret. Before this, there will be some unexpected test fails. llvm-svn: 33597
-
- Jan 26, 2007
-
-
Jim Laskey authored
llvm-svn: 33537
-
- Jan 22, 2007
-
-
Evan Cheng authored
llvm-svn: 33441
-
- Jan 12, 2007
-
-
Anton Korobeynikov authored
* PIC-aware internal structures in X86 Codegen have been refactored * Visibility (default/weak) has been added * Docs fixes (external weak linkage, visibility, formatting) llvm-svn: 33136
-
- Jan 05, 2007
-
-
Evan Cheng authored
or'ing in the sign bit of operand 1. - Tweaking: rather than left shift the sign bit, fp_extend operand 1 first before taking its sign bit if its type is smaller than that of operand 0. llvm-svn: 32932
-
Evan Cheng authored
llvm-svn: 32902
-
Evan Cheng authored
llvm-svn: 32900
-
- Jan 03, 2007
-
-
Reid Spencer authored
llvm-svn: 32840
-
Anton Korobeynikov authored
- New target type "mingw" was introduced - Same things for both mingw & cygwin are marked as "cygming" (as in gcc) - .lcomm is supported here, so allow LLVM to use it - Correctly use underscored versions of setjmp & _longjmp for both mingw & cygwin llvm-svn: 32833
-
- Dec 31, 2006
-
-
Reid Spencer authored
Three changes: 1. Convert signed integer types to signless versions. 2. Implement the @sext and @zext parameter attributes. Previously the type of an function parameter was used to determine whether it should be sign extended or zero extended before the call. This information is now communicated via the function type's parameter attributes. 3. The interface to LowerCallTo had to be changed in order to accommodate the parameter attribute information. Although it would have been convenient to pass in the FunctionType itself, there isn't always one present in the caller. Consequently, a signedness indication for the result type and for each parameter was provided for in the interface to this method. All implementations were changed to make the adjustment necessary. llvm-svn: 32788
-
- Dec 22, 2006
-
-
Anton Korobeynikov authored
type for distinguish JIT & non-JIT instead of "dirty" hacks :) llvm-svn: 32745
-
- Dec 14, 2006
-
-
Evan Cheng authored
llvm-svn: 32587
-
- Dec 11, 2006
-
-
Anton Korobeynikov authored
code (both asm & cbe) for Mingw32 target. Removed autoconf checks for underscored versions of setjmp/longjmp. llvm-svn: 32415
-
- Dec 05, 2006
-
-
Chris Lattner authored
This compiles bitcast.ll:test3/test4 into: _test3: movd %xmm0, %eax ret _test4: movd %edi, %xmm0 ret llvm-svn: 32230
-
Chris Lattner authored
This could be better, readme entry pending. llvm-svn: 32228
-
Chris Lattner authored
llvm-svn: 32223
-
Evan Cheng authored
immediate in small code model. The JIT cannot ensure GV's are placed in the lower 4G. - Some preliminary support for large code model. llvm-svn: 32215
-
- Dec 04, 2006
-
-
Chris Lattner authored
This fixes PR1029 and Regression/CodeGen/X86/x86-64-asm.ll llvm-svn: 32206
-
- 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
-
Evan Cheng authored
llvm-svn: 32028
-
Evan Cheng authored
llvm-svn: 32026
-
- Nov 29, 2006
-
-
Evan Cheng authored
llvm-svn: 32017
-
- Nov 28, 2006
-
-
Evan Cheng authored
of opcode and number of operands. llvm-svn: 31947
-
- Nov 21, 2006
-
-
Anton Korobeynikov authored
llvm-svn: 31887
-
- Nov 20, 2006
-
-
Anton Korobeynikov authored
llvm-svn: 31874
-