[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[avr-gcc-list] Is some special attribute or qualifier required to make C
[avr-gcc-list] Is some special attribute or qualifier required to make C function tables to use the right linker stubs?
Fri, 02 May 2014 12:02:55 +0100
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
Hi there (likely Joerg Wunsch will know this),
In devices like ATxMega256xxx, I see that the C function tables I
declare, and the function pointers, end up being 16-bit, and so-far
everything seems to assume that EIND is 0 and functions will be in the
first 64K (my current code is not that big yet).
Will avr-gcc use the right relocation when picking one function from the
array and calling it? or should I declare the functions with some
special attribute and/or do some assembler magic with gs() operator when
calling those kind of functions.
So far I see that gcc put some trampoline calls after the interrupt
vectors for some functions, but everything fits within the first 64K so far.
I'm just trying to be sure that when code begin to fall off the first
64K, I'm not going to get funny problems a few weeks later, after I
completely forgot about this thing.
--- This is being re-sent as my company's email is now adding the infamous
confidential disclaimer ---
- [avr-gcc-list] Is some special attribute or qualifier required to make C function tables to use the right linker stubs?,
David Fernandez <=