Quoting Hollis Blanchard <[EMAIL PROTECTED]>: > On Thu, 2006-09-28 at 15:45 +0200, [EMAIL PROTECTED] wrote: > > > > if (grub_strcmp (name, "grub_mod_init") == 0) > > mod->init = (void (*) (grub_dl_t)) sym->st_value; > > > > This won't work on ia64 AFAIK. > > Can't this problem be solved with an architecture-specific macro? > > FWIW, 64-bit PowerPC also uses function descriptors. They look something > like: > long code_address > long table_of_contents > long unused > > The table_of_contents (TOC) value needs to be placed into r2 when > jumping at code_address (and of course the old one needs to be restored > when returning). Indeed, same issue.
>I assume IA64 is similar here, and given that, a > module_jump function implemented in assembly by each architecture would > solve this problem. I'd prefer modules to export pointers. Seems to be easier to deal. Tristan. _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel