diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 1c3c94d638..97f180642f 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,10 @@ +1999-09-04 Steve Chamberlain + + * readelf.c: Include "elf/pj.h". + (dump_relocations): Handle EM_PJ. + (get_machine_name): Likewise. + (get_machine_flags): Likewise. + 1999-08-31 Scott Bambrough * readelf.c (get_note_type): New function: Decode the e_type diff --git a/binutils/readelf.c b/binutils/readelf.c index ef33ea2dac..9a85549b50 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -67,6 +67,7 @@ #include "elf/fr30.h" #include "elf/mcore.h" #include "elf/i960.h" +#include "elf/pj.h" #include "bucomm.h" #include "getopt.h" @@ -740,6 +741,10 @@ dump_relocations (file, rel_offset, rel_size, symtab, nsyms, strtab, is_rela) case EM_PARISC: rtype = elf_hppa_reloc_type (type); break; + + case EM_PJ: + rtype = elf_pj_reloc_type (type); + break; } if (rtype == NULL) @@ -1032,7 +1037,7 @@ get_machine_name (e_machine) case EM_CYGNUS_MN10300: return "mn10300"; case EM_CYGNUS_MN10200: return "mn10200"; case EM_CYGNUS_FR30: return "Fujitsu FR30"; - + case EM_PJ: return "picoJava"; default: sprintf (buff, _(": %x"), e_machine); return buff; @@ -1146,6 +1151,14 @@ get_machine_flags (e_flags, e_machine) if ((e_flags & EF_SPARCV9_MM) == EF_SPARCV9_RMO) strcat (buf, ", rmo"); break; + + case EM_PJ: + if ((e_flags & EF_PICOJAVA_NEWCALLS) == EF_PICOJAVA_NEWCALLS) + strcat (buf, ", new calling convention"); + + if ((e_flags & EF_PICOJAVA_GNUCALLS) == EF_PICOJAVA_GNUCALLS) + strcat (buf, ", gnu calling convention"); + break; } }