selftests/powerpc: Check FP/VEC on exception in TM
Add a self test to check if FP/VEC/VSX registers are sane (restored correctly) after a FP/VEC/VSX unavailable exception is caught during a transaction. This test checks all possibilities in a thread regarding the combination of MSR.[FP|VEC] states in a thread and for each scenario raises a FP/VEC/VSX unavailable exception in transactional state, verifying if vs0 and vs32 registers, which are representatives of FP/VEC/VSX reg sets, are not corrupted. Signed-off-by: Gustavo Romero <gromero@linux.vnet.ibm.com> Signed-off-by: Breno Leitao <leitao@debian.org> Signed-off-by: Cyril Bur <cyrilbur@gmail.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:

committed by
Michael Ellerman

szülő
80eff6c484
commit
77fad8bfb1
@@ -47,6 +47,11 @@ static inline bool failure_is_syscall(void)
|
||||
return (failure_code() & TM_CAUSE_SYSCALL) == TM_CAUSE_SYSCALL;
|
||||
}
|
||||
|
||||
static inline bool failure_is_unavailable(void)
|
||||
{
|
||||
return (failure_code() & TM_CAUSE_FAC_UNAV) == TM_CAUSE_FAC_UNAV;
|
||||
}
|
||||
|
||||
static inline bool failure_is_nesting(void)
|
||||
{
|
||||
return (__builtin_get_texasru() & 0x400000);
|
||||
|
Reference in New Issue
Block a user