From 7e965d60b542c0baa6f79605f45669a2ea9bceb8 Mon Sep 17 00:00:00 2001 From: Vijay Kiran Kamuju Date: Tue, 4 Aug 2020 19:14:51 +0200 Subject: [PATCH] dbghelp: Add xmm and mxcsr register mapping functions for i386. Signed-off-by: Vijay Kiran Kamuju Signed-off-by: Alexandre Julliard --- dlls/dbghelp/cpu_i386.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/dlls/dbghelp/cpu_i386.c b/dlls/dbghelp/cpu_i386.c index fd808a0d324..864b7f76643 100644 --- a/dlls/dbghelp/cpu_i386.c +++ b/dlls/dbghelp/cpu_i386.c @@ -604,6 +604,16 @@ static void *i386_fetch_context_reg(union ctx *pctx, unsigned regno, unsigned *s case CV_REG_FS: *size = sizeof(ctx->SegFs); return &ctx->SegFs; case CV_REG_GS: *size = sizeof(ctx->SegGs); return &ctx->SegGs; + case CV_REG_XMM0 + 0: *size = 16; return &ctx->ExtendedRegisters[10*16]; + case CV_REG_XMM0 + 1: *size = 16; return &ctx->ExtendedRegisters[11*16]; + case CV_REG_XMM0 + 2: *size = 16; return &ctx->ExtendedRegisters[12*16]; + case CV_REG_XMM0 + 3: *size = 16; return &ctx->ExtendedRegisters[13*16]; + case CV_REG_XMM0 + 4: *size = 16; return &ctx->ExtendedRegisters[14*16]; + case CV_REG_XMM0 + 5: *size = 16; return &ctx->ExtendedRegisters[15*16]; + case CV_REG_XMM0 + 6: *size = 16; return &ctx->ExtendedRegisters[16*16]; + case CV_REG_XMM0 + 7: *size = 16; return &ctx->ExtendedRegisters[17*16]; + + case CV_REG_MXCSR: *size = sizeof(DWORD); return &ctx->ExtendedRegisters[24]; } FIXME("Unknown register %x\n", regno); return NULL;