diff options
Diffstat (limited to 'gdb/amd64-tdep.c')
-rw-r--r-- | gdb/amd64-tdep.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c index 75c99ab..9b7c8a4 100644 --- a/gdb/amd64-tdep.c +++ b/gdb/amd64-tdep.c @@ -90,11 +90,11 @@ amd64_register_type (struct gdbarch *gdbarch, int regnum) if (regnum >= AMD64_RAX_REGNUM && regnum <= AMD64_RDI_REGNUM) return builtin_type_int64; if (regnum == AMD64_RBP_REGNUM || regnum == AMD64_RSP_REGNUM) - return builtin_type_void_data_ptr; + return builtin_type (gdbarch)->builtin_data_ptr; if (regnum >= AMD64_R8_REGNUM && regnum <= AMD64_R15_REGNUM) return builtin_type_int64; if (regnum == AMD64_RIP_REGNUM) - return builtin_type_void_func_ptr; + return builtin_type (gdbarch)->builtin_func_ptr; if (regnum == AMD64_EFLAGS_REGNUM) return i386_eflags_type; if (regnum >= AMD64_CS_REGNUM && regnum <= AMD64_GS_REGNUM) @@ -1277,7 +1277,7 @@ amd64_get_longjmp_target (struct frame_info *frame, CORE_ADDR *pc) CORE_ADDR jb_addr; struct gdbarch *gdbarch = get_frame_arch (frame); int jb_pc_offset = gdbarch_tdep (gdbarch)->jb_pc_offset; - int len = TYPE_LENGTH (builtin_type_void_func_ptr); + int len = TYPE_LENGTH (builtin_type (gdbarch)->builtin_func_ptr); /* If JB_PC_OFFSET is -1, we have no way to find out where the longjmp will land. */ @@ -1285,11 +1285,12 @@ amd64_get_longjmp_target (struct frame_info *frame, CORE_ADDR *pc) return 0; get_frame_register (frame, AMD64_RDI_REGNUM, buf); - jb_addr = extract_typed_address (buf, builtin_type_void_data_ptr); + jb_addr= extract_typed_address + (buf, builtin_type (gdbarch)->builtin_data_ptr); if (target_read_memory (jb_addr + jb_pc_offset, buf, len)) return 0; - *pc = extract_typed_address (buf, builtin_type_void_func_ptr); + *pc = extract_typed_address (buf, builtin_type (gdbarch)->builtin_func_ptr); return 1; } |