This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: interest for ARM/thumb multiversionning ?


Note that the multi-versioning support is currently only in C++, not in C yet.

David

On Wed, Apr 29, 2015 at 1:24 AM, Christian Bruel <christian.bruel@st.com> wrote:
> Hi Ramana, Richard
>
> After playing with the attritute ((target ("[thumb,arm]")), during the
> pending review, I added the "default" selector to neutralize
> -mflip-thumb for the setjmp/longjmp based tests.
>
> I was wondering it there would be an interest leverage on this to
> implement multiprocessing, like on the x86 ?
>
> something that would allow (from the x86 doc)
>
> __attribute__ ((target ("default")))
> int foo ()
> {
>   asm("...");
> return 0;
> }
>
> __attribute__ ((target ("thumb")))
> int foo ()
> {
>   asm("...");
> }
>
> int main ()
> {
> int (*p)() = &foo;
> assert ((*p) () == foo ());
> return 0;
> }
>
> I had initially not planned to do it, but this is a simple extension of
> the attribute target, if someone find a use for this I can implement it
> on the fly.
>
> Best Regards,
>
> Christian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]