This is the mail archive of the
mailing list for the binutils project.
Re: bfd questions.
>> For the bi-arch s390/s390x support I'd like to change the two s390
>> bfds in some aspects. 1) The printable_name for 31 bit is "s390:390"
>> and for 64 bit it is "s390:esame". Both pretty meaningless,
>> "s390:31" and "s390:64" would be better.
> or maybe "s390:31-bit" and s390:64-bit" ?
Take care this will affect downstream GDB:
(gdb) set architecture
Requires an argument. Valid arguments are s390:390, s390:esame, auto.
>> 2) change the bfd_mach_s390_esa preprocessor define to
>> bfd_mach_s390_31 and bfd_mach_s390_esame to bfd_mach_s390_64.
> Seems reasonable.
Again. This one will need a GDB tweak.
>> 3) Add the switches -m31 and -m64 to switch to 31 bit or 64 bit.
> Err, add the switches to where ? GAS ?
>> 4) Add the switches -Aesa and -Aesame to switch between the ESA and
>> ESAME architectures. And last but not least 5) add ESAME relocations
>> to the 31 bit bfd.
>> The idea of 4) and 5) is to enable the use of ESAME instructions on
>> a 31 bit system that is running on a machine that supports ESAME.
> Presumably then you would generate a warning if -m64 and -Aesa were
> used together, or is there an advantage to having 64 bit binaries that
> do not support the ESAME instructions ?
Can I assume these only affect the ISA and not the ABI?
I also guess that the disassembler will always disassemble ESAME
instructions (31 or 64 bit modes) so there is no reason to add