Compilation for ARM
Stepan Dyatkovskiy
stpworld at narod.ru
Fri Jun 13 20:30:41 UTC 2014
Modern compilers forbid to use nested .fnstart constructions (actually
nested ENTRY uses). But FreeBSD code has them in few places. For
example, in arm/exception.S file (see swi_entry). I saw the comment
nearby swi_exit definition, but now quite understand how it relates with
nested ENTRY uses...
It looks like several entries were intruduced just because of
alternative names for the same function. But I'm not sure...
Thanks!
-Stepan
Why we need them
Ian Lepore wrote:
> On Fri, 2014-06-13 at 22:20 +0600, Stepan Dyatkovskiy wrote:
>> Hi Ian,
>> Yup. I have done it with default options. That works fine. Thanks!
>>
>> But, currently we need to compare launch times for kernel that was
>> compiled with cortex-a9 options and for kernel that was compiled with
>> cortex-a15 options.
>>
>> The reason of doing that is some improvements in clang backend that
>> promises faster execution for (-mcpu=cortex-a15). So we would like to
>> check it on FreeBSD kernel, since we going to use this OS as base for
>> our applications.
>>
>> -Stepan
>
> I wonder if it is upset that the nesting is backwards, like
>
> NP_ENTRY(btext)
> ASENTRY_NP(_start)
> ...
> END(btext)
> END(_start)
>
> Maybe try switching the order of the END macros? If that doesn't help,
> try removing the btext macros completely, I don't think they're needed
> by anything these days.
>
> -- Ian
>
>
More information about the freebsd-arm
mailing list