X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=common%2Ftrace_format.hpp;h=4952ee3310a08af827d3f7ffa69506db5eccbe58;hb=d6b7eb6b7c8280762fb635a6e63aa3a426694ed7;hp=d5fd81b5b9eeacd6f9a6f2da06ac78a90c5353d9;hpb=112a1329ecceaca7386369a1cc685af44dd34738;p=apitrace diff --git a/common/trace_format.hpp b/common/trace_format.hpp index d5fd81b..4952ee3 100644 --- a/common/trace_format.hpp +++ b/common/trace_format.hpp @@ -69,8 +69,11 @@ namespace trace { * * - version 4: * - call enter events include thread ID + * + * - version 5: + * - new call detail flag CALL_BACKTRACE */ -#define TRACE_VERSION 4 +#define TRACE_VERSION 5 /* @@ -85,6 +88,8 @@ namespace trace { * * call_detail = ARG index value * | RET value + * | THREAD int + * | BACKTRACE int frame* * | END * * value = NULL @@ -103,6 +108,16 @@ namespace trace { * | OPAQUE int * | REPR value value * + * frame = id frame_detail+ + * | id + * + * frame_detail = MODULE string + * | FUNCTION string + * | FILENAME string + * | LINENUMBER uint + * | OFFSET uint + * | END + * * call_sig = id name arg_name* * | id * @@ -127,6 +142,7 @@ enum CallDetail { CALL_ARG, CALL_RET, CALL_THREAD, + CALL_BACKTRACE, }; enum Type { @@ -147,6 +163,15 @@ enum Type { TYPE_REPR, }; +enum BacktraceDetail { + BACKTRACE_END = 0, + BACKTRACE_MODULE, + BACKTRACE_FUNCTION, + BACKTRACE_FILENAME, + BACKTRACE_LINENUMBER, + BACKTRACE_OFFSET, +}; + } /* namespace trace */