i386.c (x86_this_parameter): Handle aggregate for __thiscall convention.
2010-04-12 Kai Tietz <kai.tietz@onevision.com> PR/43702 * config/i386/i386.c (x86_this_parameter): Handle aggregate for __thiscall convention. From-SVN: r158232
This commit is contained in:
parent
b38bcccad0
commit
c1b8e1399f
2 changed files with 12 additions and 4 deletions
|
@ -1,3 +1,9 @@
|
|||
2010-04-12 Kai Tietz <kai.tietz@onevision.com>
|
||||
|
||||
PR/43702
|
||||
* config/i386/i386.c (x86_this_parameter): Handle aggregate for
|
||||
__thiscall convention.
|
||||
|
||||
2010-04-12 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
* config/pa/pa.c (hppa_legitimize_address): Remove unused variable
|
||||
|
|
|
@ -26232,11 +26232,13 @@ x86_this_parameter (tree function)
|
|||
|
||||
if (lookup_attribute ("fastcall", TYPE_ATTRIBUTES (type)))
|
||||
regno = aggr ? DX_REG : CX_REG;
|
||||
/* ???: To be verified. It is not absolutely clear how aggregates
|
||||
have to be treated for thiscall. We assume that they are
|
||||
identical to fastcall. */
|
||||
else if (lookup_attribute ("thiscall", TYPE_ATTRIBUTES (type)))
|
||||
regno = aggr ? DX_REG : CX_REG;
|
||||
{
|
||||
regno = CX_REG;
|
||||
if (aggr)
|
||||
return gen_rtx_MEM (SImode,
|
||||
plus_constant (stack_pointer_rtx, 4));
|
||||
}
|
||||
else
|
||||
{
|
||||
regno = AX_REG;
|
||||
|
|
Loading…
Add table
Reference in a new issue