X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=gdb%2Famd64-linux-nat.c;h=b7b889bcd2bc3adf2c8319aa2140b96bcd8262cd;hb=be4ddd36d63cfdddc26d912a91d9da4bbfc00f75;hp=b1676ac32ea676bd0d046ce35c05decf6687968c;hpb=e43e105e0d3a6cf324b19adc10d4952b553f43ee;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/amd64-linux-nat.c b/gdb/amd64-linux-nat.c index b1676ac32e..b7b889bcd2 100644 --- a/gdb/amd64-linux-nat.c +++ b/gdb/amd64-linux-nat.c @@ -1,6 +1,6 @@ /* Native-dependent code for GNU/Linux x86-64. - Copyright (C) 2001-2013 Free Software Foundation, Inc. + Copyright (C) 2001-2014 Free Software Foundation, Inc. Contributed by Jiri Smid, SuSE Labs. This file is part of GDB. @@ -568,13 +568,14 @@ ps_get_thread_area (const struct ps_prochandle *ph, } -static void (*super_post_startup_inferior) (ptid_t ptid); +static void (*super_post_startup_inferior) (struct target_ops *self, + ptid_t ptid); static void -amd64_linux_child_post_startup_inferior (ptid_t ptid) +amd64_linux_child_post_startup_inferior (struct target_ops *self, ptid_t ptid) { i386_cleanup_dregs (); - super_post_startup_inferior (ptid); + super_post_startup_inferior (self, ptid); } @@ -1149,7 +1150,7 @@ amd64_linux_read_description (struct target_ops *ops) /* Enable branch tracing. */ static struct btrace_target_info * -amd64_linux_enable_btrace (ptid_t ptid) +amd64_linux_enable_btrace (struct target_ops *self, ptid_t ptid) { struct btrace_target_info *tinfo; struct gdbarch *gdbarch; @@ -1171,23 +1172,34 @@ amd64_linux_enable_btrace (ptid_t ptid) /* Disable branch tracing. */ static void -amd64_linux_disable_btrace (struct btrace_target_info *tinfo) +amd64_linux_disable_btrace (struct target_ops *self, + struct btrace_target_info *tinfo) { - int errcode = linux_disable_btrace (tinfo); + enum btrace_error errcode = linux_disable_btrace (tinfo); - if (errcode != 0) - error (_("Could not disable branch tracing: %s."), safe_strerror (errcode)); + if (errcode != BTRACE_ERR_NONE) + error (_("Could not disable branch tracing.")); } /* Teardown branch tracing. */ static void -amd64_linux_teardown_btrace (struct btrace_target_info *tinfo) +amd64_linux_teardown_btrace (struct target_ops *self, + struct btrace_target_info *tinfo) { /* Ignore errors. */ linux_disable_btrace (tinfo); } +static enum btrace_error +amd64_linux_read_btrace (struct target_ops *self, + VEC (btrace_block_s) **data, + struct btrace_target_info *btinfo, + enum btrace_read_type type) +{ + return linux_read_btrace (data, btinfo, type); +} + /* Provide a prototype to silence -Wmissing-prototypes. */ void _initialize_amd64_linux_nat (void); @@ -1231,7 +1243,7 @@ _initialize_amd64_linux_nat (void) t->to_enable_btrace = amd64_linux_enable_btrace; t->to_disable_btrace = amd64_linux_disable_btrace; t->to_teardown_btrace = amd64_linux_teardown_btrace; - t->to_read_btrace = linux_read_btrace; + t->to_read_btrace = amd64_linux_read_btrace; /* Register the target. */ linux_nat_add_target (t);