Supporting this turned out to be more involved. --with-cpu implicitly adds -mcpu to all specs, which invokes the assembler with the correct option. Directly setting TARGET_DEFAULT does not adjust the assembler invocation.
This patch adds support to rs6000_file_start to emit the .machine assembler pseudo-op to inform the assembler of the processor type. For the moment, the .machine pseudo-op is not emitted if --with-cpu or -mcpu= was used because the assembly explicitly is invoked with the processor type. The default is machine ppc64 or ppc. The implementation does not attempt to cover the various embedded processors, but they already were configured explicitly. The machine type only is emitted for ELF files. Darwin already emits the option and I am skipping this on AIX for the moment. The patch also changes the default processor tuning to POWER8 for PPC64 big endian Linux and detects POWER7 on AIX. Thanks, David * config/rs6000/default64.h: Include rs6000-cpus.def. (TARGET_DEFAULT) [LITTLE_ENDIAN]: Use ISA 2.7 (POWER8). * config/rs6000/driver-rs6000.c (detect_processor_aix): Add POWER7. * config/rs6000/linux64.h: Always default to POWER8. * config/rs6000/rs6000.c (rs6000_file_start): Emit .machine pseudo-op to specify assembler dialect.
ZZ
Description: Binary data