perf annotate: Disassembler instruction parsing
So that at disassembly time we parse targets, etc. Supporting jump instructions initially, call functions are next. Cc: David Ahern <dsahern@gmail.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Mike Galbraith <efault@gmx.de> Cc: Namhyung Kim <namhyung@gmail.com> Cc: Paul Mackerras <paulus@samba.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Link: http://lkml.kernel.org/n/tip-7vzlh66n5or46n27ji658cnl@git.kernel.org Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
@@ -7,11 +7,24 @@
|
||||
#include <linux/list.h>
|
||||
#include <linux/rbtree.h>
|
||||
|
||||
struct ins_ops {
|
||||
int (*parse_target)(const char *operands, u64 *target);
|
||||
};
|
||||
|
||||
struct ins {
|
||||
const char *name;
|
||||
struct ins_ops *ops;
|
||||
};
|
||||
|
||||
bool ins__is_jump(const struct ins *ins);
|
||||
|
||||
struct disasm_line {
|
||||
struct list_head node;
|
||||
s64 offset;
|
||||
u64 target;
|
||||
char *line;
|
||||
char *name;
|
||||
struct ins *ins;
|
||||
char *operands;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user