ppc: Turn 32-bit ppc64 into a config option, to be deprecated
commit67b5f0d984bc6a0965e6c3b59d07fd346cbcf122
authorafaerber <afaerber@f158a5a8-5612-0410-a976-696ce0be7e32>
Sat, 20 Nov 2010 21:14:59 +0000 (20 21:14 +0000)
committerafaerber <afaerber@f158a5a8-5612-0410-a976-696ce0be7e32>
Sat, 20 Nov 2010 21:14:59 +0000 (20 21:14 +0000)
treef31ea9d2267e74cb0a17f6b1fff83878916043c2
parent4cd34fecf35412c0b2f52e2a5d1069e238f2bf21
ppc: Turn 32-bit ppc64 into a config option, to be deprecated

Having legacy 64-bit support as an option allows users to
disable it and test the 32-bit only version prior to official
removal of legacy 64-bit support.

Fork single-bitness macros EXCEPTION_{PREAMBLE,EPILOGUE}:
Use assembler macros for things that are constant to avoid
; and \, and use preprocessor macros to handle differences.
Adopt QEMU coding style for new code.

Functional changes for ppc64:
* Don't clear MSR in preamble
  in order to stay in Sixty-Four Bit Mode.
* Just save the minimum number of registers
  since 64-bit code will save the full registers.
* Reserve 48 bytes of stack frame space for ppc64,
  according to 64-bit PowerPC ELF ABI supplement 1.9.
* Use rfid via RFI macro.

v2:
* Remove inaccurate comment on unused stack location.
* Add explanatory comments for #else and #endif.

Cc: Alexander Graf <agraf@suse.de>
Signed-off-by: Andreas Färber <andreas.faerber@web.de>
git-svn-id: svn://openbios.org/openbios/trunk/openbios-devel@962 f158a5a8-5612-0410-a976-696ce0be7e32
arch/ppc/qemu/init.c
arch/ppc/qemu/start.S
config/examples/ppc_config.xml