powerpc/64s: Add new exception vector macros
authorMichael Ellerman <mpe@ellerman.id.au>
Fri, 30 Sep 2016 09:43:18 +0000 (19:43 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Tue, 4 Oct 2016 02:06:36 +0000 (13:06 +1100)
commitda2bc4644c75d992427c45c5ade3bdf18ca1b52d
tree412a6767cf27d5fd6e09f3a85cc17efcab35bf2f
parent5045ea37377ce8cca6890d32b127ad6770e6dce5
powerpc/64s: Add new exception vector macros

Create arch/powerpc/include/asm/head-64.h with macros that specify
an exception vector (name, type, location), which will be used to
label and lay out exceptions into the object file.

Naming is moved out of exception-64s.h, which is used to specify the
implementation of exception handlers.

objdump of generated code in exception vectors is unchanged except for
names. Alignment directives scattered around are annoying, but done
this way so that disassembly can verify identical instruction
generation before and after patch. These get cleaned up in future
patch.

We change the way KVMTEST works, explicitly passing EXC_HV or EXC_STD
rather than overloading the trap number. This removes the need to have
SOFTEN values for the overloaded trap numbers, eg. 0x502.

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/exception-64s.h
arch/powerpc/include/asm/head-64.h [new file with mode: 0644]
arch/powerpc/kernel/exceptions-64s.S