[coreboot] __attribute__((stdcall)) vs. __attribute__((regparm(0)))
Carl-Daniel Hailfinger
c-d.hailfinger.devel.2006 at gmx.net
Thu Oct 16 17:47:59 CEST 2008
On 16.10.2008 17:41, ron minnich wrote:
> On Thu, Oct 16, 2008 at 7:58 AM, Myles Watson <mylesgw at gmail.com> wrote:
>
>
>> The question is what attribute can be used to make those functions have the
>> normal calling convention when compiling with -mregparm=3. We're using
>> -mregparm=3 for speed reasons.
>>
>>
>
> The simplest thing: put all the functions that need regparm=0 in one
> file, compile that file with regparm=0
>
Indeed simple, but it won't work because every function outside this
file, but called from this file will have a calling convention conflict.
The caller will assume regparm(0), the callee will assume regparm(3). Boom.
Myles, please go with __attribute__((regparm(0))) for the functions that
need it.
Regards,
Carl-Daniel
--
http://www.hailfinger.org/
More information about the coreboot
mailing list