- Feb 01, 2009
-
-
Torok Edwin authored
var-args, and don't allow FP return values llvm-svn: 63495
-
- Dec 03, 2008
-
-
Dan Gohman authored
than just i32. llvm-svn: 60455
-
Dan Gohman authored
delegates to the regular x86-32 convention which handles byval, but only after it handles a few cases, and it's necessary to handle byval before handling those cases. This fixes PR3122 (and rdar://6400815), llvm-gcc miscompiling LLVM. llvm-svn: 60453
-
- Nov 20, 2008
-
-
Mon P Wang authored
llvm-svn: 59720
-
- Sep 26, 2008
-
-
Dale Johannesen authored
its size). Adjust various lowering functions to pass this info through from CallInst. Use it to implement sseregparm returns on X86. Remove X86_ssecall calling convention. llvm-svn: 56677
-
- Sep 25, 2008
-
-
Dale Johannesen authored
meaning sse_regparm (i.e. float/double values go in XMM0 instead of ST0). Update documentation to reflect reality. llvm-svn: 56619
-
- Sep 22, 2008
-
-
Arnold Schwaighofer authored
Change the calling convention used when tail call optimization is enabled from CC_X86_32_TailCall to CC_X86_32_FastCC. llvm-svn: 56436
-
- Sep 05, 2008
-
-
Evan Cheng authored
llvm-svn: 55840
-
Evan Cheng authored
For whatever the reason, x86 CallingConv::Fast (i.e. fastcc) was not passing scalar arguments in registers. This patch defines a new fastcc CC which is slightly different from the FastCall CC. In addition to passing integer arguments in ECX and EDX, it also specify doubles are passed in 8-byte slots which are 8-byte aligned (instead of 4-byte aligned). This avoids a potential performance hazard where doubles span cacheline boundaries. llvm-svn: 55807
-
- Jun 25, 2008
-
-
Dale Johannesen authored
load,store,call,return,bitcast. This is enough to make call and return work. llvm-svn: 52691
-
- Apr 28, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 50342
-
Anton Korobeynikov authored
llvm-svn: 50324
-
- Apr 25, 2008
-
-
Evan Cheng authored
On Darwin / Linux x86-32, v8i8, v4i16, v2i32 values are passed in MM[0-2]. On Darwin / Linux x86-32, v1i64 values are passed in memory. On Darwin x86-64, v8i8, v4i16, v2i32 values are passed in XMM[0-7]. On Darwin x86-64, v1i64 values are passed in 64-bit GPRs. llvm-svn: 50257
-
- Apr 09, 2008
-
-
Dan Gohman authored
is needed for the x86-64-ABI handling of structs that contain floating-point members that are returned by value. llvm-svn: 49441
-
Dan Gohman authored
llvm-svn: 49440
-
- Apr 02, 2008
-
-
Anton Korobeynikov authored
when some another register is used for argument passing. Currently is used on Win64. llvm-svn: 49079
-
- Mar 23, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 48710
-
- Mar 22, 2008
-
-
Anton Korobeynikov authored
llvm-svn: 48691
-
Anton Korobeynikov authored
llvm-svn: 48690
-
- Mar 21, 2008
-
-
Chris Lattner authored
This allows us to compile fp-stack-2results.ll into: _test: fldz fld1 ret which returns 1 in ST(0) and 0 in ST(1). This is needed for x86-64 _Complex long double. llvm-svn: 48632
-
- Feb 22, 2008
-
-
Dale Johannesen authored
llvm-svn: 47483
-
- Feb 05, 2008
-
-
Dale Johannesen authored
llvm-svn: 46764
-
- Jan 23, 2008
-
-
Evan Cheng authored
llvm-svn: 46262
-
- Jan 19, 2008
-
-
Duncan Sands authored
parameters, since otherwise it won't be passed in the right register. With this change trampolines work on x86-64 (thanks to Luke Guest for providing access to an x86-64 box). llvm-svn: 46192
-
- Jan 15, 2008
-
-
Evan Cheng authored
Rename CCIfStruct to CCIfByVal and CCStructAssign to CCPassByVal. Remove unused parameters of CCStructAssign and add size and alignment requirement info. llvm-svn: 45997
-
Evan Cheng authored
llvm-svn: 45996
-
- Jan 07, 2008
-
-
Duncan Sands authored
llvm-svn: 45703
-
Duncan Sands authored
llvm-svn: 45701
-
- Dec 29, 2007
-
-
Chris Lattner authored
llvm-svn: 45418
-
- Dec 14, 2007
-
-
Dale Johannesen authored
for parameter passing (only for that, on Darwin). llvm-svn: 45038
-
- Nov 27, 2007
-
-
Nate Begeman authored
llvm-svn: 44371
-
- Nov 14, 2007
-
-
Duncan Sands authored
in favour of teaching CCAssignToStack that size 0 and/or align 0 means to use the ABI values. This seems a neater solution. It is safe since no legal value type has size 0. llvm-svn: 44107
-
- Nov 10, 2007
-
-
Dale Johannesen authored
dealing with types whose size & alignment are different on different subtargets. Use it for x86 f80. llvm-svn: 43988
-
- Oct 13, 2007
-
-
Duncan Sands authored
trampolines, rather than with nested functions themselves. llvm-svn: 42955
-
- Oct 12, 2007
-
-
Arnold Schwaighofer authored
for fastcc from X86CallingConv.td. This means that nested functions are not supported for calling convention 'fastcc'. llvm-svn: 42934
-
- Oct 11, 2007
-
-
Arnold Schwaighofer authored
enabled by passing -tailcallopt to llc. The optimization is performed if the following conditions are satisfied: * caller/callee are fastcc * elf/pic is disabled OR elf/pic enabled + callee is in module + callee has visibility protected or hidden llvm-svn: 42870
-
- Sep 20, 2007
-
-
Dale Johannesen authored
llvm-svn: 42155
-
- Aug 06, 2007
-
-
Dale Johannesen authored
(on Darwin, anyway). Fix some table omissions for LD arithmetic. llvm-svn: 40877
-
- Jul 27, 2007
-
-
Duncan Sands authored
llvm-svn: 40566
-
- Jul 06, 2007
-
-
Rafael Espindola authored
llvm-svn: 37940
-