winedbg: Push the correct machine type to StackWalk.
This commit is contained in:
parent
b615656f00
commit
a775d41c10
|
@ -151,6 +151,7 @@ static int be_alpha_fetch_float(const struct dbg_lvalue* lvalue, unsigned size,
|
|||
|
||||
struct backend_cpu be_alpha =
|
||||
{
|
||||
IMAGE_FILE_MACHINE_ALPHA,
|
||||
be_cpu_linearize,
|
||||
be_cpu_build_addr,
|
||||
be_alpha_get_addr,
|
||||
|
|
|
@ -23,6 +23,7 @@ enum be_xpoint_type {be_xpoint_break, be_xpoint_watch_exec, be_xpoint_watch_read
|
|||
be_xpoint_watch_write};
|
||||
struct backend_cpu
|
||||
{
|
||||
DWORD machine;
|
||||
/* ------------------------------------------------------------------------------
|
||||
* address manipulation
|
||||
* ------------------------------------------------------------------------------ */
|
||||
|
|
|
@ -746,6 +746,7 @@ static int be_i386_fetch_float(const struct dbg_lvalue* lvalue, unsigned size,
|
|||
|
||||
struct backend_cpu be_i386 =
|
||||
{
|
||||
IMAGE_FILE_MACHINE_I386,
|
||||
be_i386_linearize,
|
||||
be_i386_build_addr,
|
||||
be_i386_get_addr,
|
||||
|
|
|
@ -175,6 +175,7 @@ static int be_ppc_fetch_float(const struct dbg_lvalue* lvalue, unsigned size,
|
|||
|
||||
struct backend_cpu be_ppc =
|
||||
{
|
||||
IMAGE_FILE_MACHINE_POWERPC,
|
||||
be_cpu_linearize,
|
||||
be_cpu_build_addr,
|
||||
be_ppc_get_addr,
|
||||
|
|
|
@ -376,6 +376,7 @@ static int be_x86_64_fetch_float(const struct dbg_lvalue* lvalue, unsigned size,
|
|||
|
||||
struct backend_cpu be_x86_64 =
|
||||
{
|
||||
IMAGE_FILE_MACHINE_AMD64,
|
||||
be_cpu_linearize,
|
||||
be_cpu_build_addr,
|
||||
be_x86_64_get_addr,
|
||||
|
|
|
@ -186,7 +186,7 @@ unsigned stack_fetch_frames(void)
|
|||
sf.AddrFrame.Mode = AddrModeFlat;
|
||||
}
|
||||
|
||||
while (StackWalk64(IMAGE_FILE_MACHINE_I386, dbg_curr_process->handle,
|
||||
while (StackWalk64(be_cpu->machine, dbg_curr_process->handle,
|
||||
dbg_curr_thread->handle, &sf, &ctx, stack_read_mem,
|
||||
SymFunctionTableAccess64, SymGetModuleBase64, NULL))
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue