This is the mail archive of the firstname.lastname@example.org mailing list for the gas2 project.
|Index Nav:||[Date Index] [Subject Index] [Author Index] [Thread Index]|
|Message Nav:||[Date Prev] [Date Next]||[Thread Prev] [Thread Next]|
From: email@example.com (Alan Modra) Date: Wed, 10 Apr 1996 09:59:36 +0930 (CST) Somewhere since gas-960129, the handling of symbols defined outside of a segment such as "gcc2_compiled.", has changed. On elf32_i386, I find that st_info is now zero (STT_NOTYPE), rather than one (STT_OBJECT). This breaks insmod on linux, because it wrongly used (sp->st_info & 0xf) == 0 to test for undefined symbols. I've fixed insmod, but why the change? Is STT_NOTYPE correct for symbols such as gcc2_compiled. ? The change was made for compatibility with other ELF assemblers. They do not set the type of a symbol to STT_OBJECT unless the assembler source specifically directs them to using the .type directive. Also, gcc2_compiled does not represent an object, so STT_OBJECT seems conceptually wrong. Ian