Quantcast
Channel: Active questions tagged gcc - Stack Overflow
Viewing all articles
Browse latest Browse all 22057

Provoke long calls of __aeabi_fxxx functions with GCC on arm cortex

$
0
0

I am trying to provoke long calls of __aeabi_fmul function from a foo.c file.I am not using libgcc, during linking i am passing a symbol file that has the address of __aeabi_fmul.

In foo.c i can see that the compiler assembled the call into the instruction:

BL address_of_aeabi_function

That's fine, but I would like to provoke a long call where the 32bits address of the function will be in the .got section and the compiler will end up doing the BL using a 32bits register, hence doing the long call.

I am able to provoke long calls on my own functions using the attribute:

float my_func(float) __attribute__((long_call));

but

float __aeabi_fmul(float, float) __attribute__((long_call));

does not work ...

I am also able to provoke long calls on __aeabi_fmul if i specify -mlong-calls in the compiler flagsBut if i do this, all functions are using long calls, which is not what i want.


Viewing all articles
Browse latest Browse all 22057

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>