[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v3 4/7] x86emul/test: factor out emul_test_get_fpu
Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- Cc: Jan Beulich <jbeulich@xxxxxxxx> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> Cc: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Cc: Wei Liu <wei.liu2@xxxxxxxxxx> --- tools/tests/x86_emulator/test_x86_emulator.c | 27 +-------------------------- tools/tests/x86_emulator/x86_emulate.c | 25 +++++++++++++++++++++++++ tools/tests/x86_emulator/x86_emulate.h | 6 ++++++ 3 files changed, 32 insertions(+), 26 deletions(-) diff --git a/tools/tests/x86_emulator/test_x86_emulator.c b/tools/tests/x86_emulator/test_x86_emulator.c index e40f0ea..04b8ca6 100644 --- a/tools/tests/x86_emulator/test_x86_emulator.c +++ b/tools/tests/x86_emulator/test_x86_emulator.c @@ -92,31 +92,6 @@ static int cmpxchg( return X86EMUL_OKAY; } -int get_fpu( - void (*exception_callback)(void *, struct cpu_user_regs *), - void *exception_callback_arg, - enum x86_emulate_fpu_type type, - struct x86_emulate_ctxt *ctxt) -{ - switch ( type ) - { - case X86EMUL_FPU_fpu: - break; - case X86EMUL_FPU_mmx: - if ( cpu_has_mmx ) - break; - case X86EMUL_FPU_xmm: - if ( cpu_has_sse ) - break; - case X86EMUL_FPU_ymm: - if ( cpu_has_avx ) - break; - default: - return X86EMUL_UNHANDLEABLE; - } - return X86EMUL_OKAY; -} - static struct x86_emulate_ops emulops = { .read = read, .insn_fetch = fetch, @@ -124,7 +99,7 @@ static struct x86_emulate_ops emulops = { .cmpxchg = cmpxchg, .cpuid = emul_test_cpuid, .read_cr = emul_test_read_cr, - .get_fpu = get_fpu, + .get_fpu = emul_test_get_fpu, }; int main(int argc, char **argv) diff --git a/tools/tests/x86_emulator/x86_emulate.c b/tools/tests/x86_emulator/x86_emulate.c index 8b70580..a666a32 100644 --- a/tools/tests/x86_emulator/x86_emulate.c +++ b/tools/tests/x86_emulator/x86_emulate.c @@ -77,4 +77,29 @@ int emul_test_read_cr( return X86EMUL_UNHANDLEABLE; } +int emul_test_get_fpu( + void (*exception_callback)(void *, struct cpu_user_regs *), + void *exception_callback_arg, + enum x86_emulate_fpu_type type, + struct x86_emulate_ctxt *ctxt) +{ + switch ( type ) + { + case X86EMUL_FPU_fpu: + break; + case X86EMUL_FPU_mmx: + if ( cpu_has_mmx ) + break; + case X86EMUL_FPU_xmm: + if ( cpu_has_sse ) + break; + case X86EMUL_FPU_ymm: + if ( cpu_has_avx ) + break; + default: + return X86EMUL_UNHANDLEABLE; + } + return X86EMUL_OKAY; +} + #include "x86_emulate/x86_emulate.c" diff --git a/tools/tests/x86_emulator/x86_emulate.h b/tools/tests/x86_emulator/x86_emulate.h index 4cc3f72..b4d1555 100644 --- a/tools/tests/x86_emulator/x86_emulate.h +++ b/tools/tests/x86_emulator/x86_emulate.h @@ -109,3 +109,9 @@ int emul_test_read_cr( unsigned int reg, unsigned long *val, struct x86_emulate_ctxt *ctxt); + +int emul_test_get_fpu( + void (*exception_callback)(void *, struct cpu_user_regs *), + void *exception_callback_arg, + enum x86_emulate_fpu_type type, + struct x86_emulate_ctxt *ctxt); -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |