[Linux-ia64] Re: is casting of function descriptor assignments for ia64 ONLY a

law
2002-01-03T17:11:20Z

> Not just ia64, powerpc 64 as well. You are assuming that all pointers
> are the same format when that is not guaranteed by the C standard. On
> most architectures they are the same, you can convert a function
> pointer to a void pointer and back again but it is not defined
> behaviour.
>
> On IA64 and PPC64 the function pointer does not reference the function
> itself, instead it points to a function descriptor. The function
> descriptor contains a pointer to the function code plus additional data
> such as a pointer to the global data to be used when the function is
> called. This is mandated by the architecture software ABI.
Also true for HPPA targets.
jeff