From 508352a9bf3f84f2d731397bb0d9382c84f27f25 Mon Sep 17 00:00:00 2001 From: Tim Wiederhake Date: Mon, 21 Nov 2016 16:39:57 +0100 Subject: btrace: Export btrace_decode_error function. Signed-off-by: Tim Wiederhake gdb/ChangeLog: * record-btrace.c (btrace_ui_out_decode_error): Move most of it ... * btrace.c (btrace_decode_error): ... here. New function. * btrace.h (btrace_decode_error): New export. Change-Id: I2b4b43a55dbfd9f526a540d2ad52a6708f31feba --- gdb/btrace.c | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) (limited to 'gdb/btrace.c') diff --git a/gdb/btrace.c b/gdb/btrace.c index 9f5657df86..06122cdfbb 100644 --- a/gdb/btrace.c +++ b/gdb/btrace.c @@ -1725,6 +1725,55 @@ btrace_maint_clear (struct btrace_thread_info *btinfo) /* See btrace.h. */ +const char * +btrace_decode_error (enum btrace_format format, int errcode) +{ + switch (format) + { + case BTRACE_FORMAT_BTS: + switch (errcode) + { + case BDE_BTS_OVERFLOW: + return _("instruction overflow"); + + case BDE_BTS_INSN_SIZE: + return _("unknown instruction"); + + default: + break; + } + break; + +#if defined (HAVE_LIBIPT) + case BTRACE_FORMAT_PT: + switch (errcode) + { + case BDE_PT_USER_QUIT: + return _("trace decode cancelled"); + + case BDE_PT_DISABLED: + return _("disabled"); + + case BDE_PT_OVERFLOW: + return _("overflow"); + + default: + if (errcode < 0) + return pt_errstr (pt_errcode (errcode)); + break; + } + break; +#endif /* defined (HAVE_LIBIPT) */ + + default: + break; + } + + return _("unknown"); +} + +/* See btrace.h. */ + void btrace_fetch (struct thread_info *tp) { -- cgit v1.2.3