]> git.baikalelectronics.ru Git - kernel.git/commit
MIPS: Correct MIPS I FP sigcontext layout
authorMaciej W. Rozycki <macro@imgtec.com>
Mon, 31 Oct 2016 16:27:40 +0000 (16:27 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 4 Nov 2016 00:39:23 +0000 (01:39 +0100)
commitce1e8676cf9e087b55c6d9b3629e585eb8b1ae28
tree162847b9f1d0907db59eaecf607dd257193321e8
parent482c148478280e2557a858bd1b34ec7dbaa59795
MIPS: Correct MIPS I FP sigcontext layout

Complement commit 33ace9c2b5aa ("MIPS: Correct MIPS I FP context
layout") and correct the way Floating Point General registers are stored
in a signal context with MIPS I hardware.

Use the S.D and L.D assembly macros to have pairs of SWC1 instructions
and pairs of LWC1 instructions produced, respectively, in an arrangement
which makes the memory representation of floating-point data passed
compatible with that used by hardware SDC1 and LDC1 instructions, where
available, regardless of the hardware endianness used.  This matches the
layout used by r4k_fpu.S, ensuring run-time compatibility for MIPS I
software across all o32 hardware platforms.

Define an EX2 macro to handle exceptions from both hardware instructions
implicitly produced from S.D and L.D assembly macros.

Signed-off-by: Maciej W. Rozycki <macro@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14477/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/r2300_fpu.S