[PATCH] add debug helpers: show_insn_bb() & show_insn_entry()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



These 2 helpers are just small wrappers around show_instruction()
and show_entry() but can be called even when the instruction is
removed. They're just handy when debugging.

Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx>
---
 linearize.c | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/linearize.c b/linearize.c
index c1e3455adb67..d0762f5a3a45 100644
--- a/linearize.c
+++ b/linearize.c
@@ -563,6 +563,15 @@ void show_bb(struct basic_block *bb)
 		printf("\tEND\n");
 }
 
+///
+// show BB of non-removed instruction
+void show_insn_bb(struct instruction *insn)
+{
+	if (!insn || !insn->bb)
+		return;
+	show_bb(insn->bb);
+}
+
 static void show_symbol_usage(pseudo_t pseudo)
 {
 	struct pseudo_user *pu;
@@ -610,6 +619,15 @@ void show_entry(struct entrypoint *ep)
 	printf("\n");
 }
 
+///
+// show the function containing the instruction but only if not already removed.
+void show_insn_entry(struct instruction *insn)
+{
+	if (!insn || !insn->bb || !insn->bb->ep)
+		return;
+	show_entry(insn->bb->ep);
+}
+
 static void bind_label(struct symbol *label, struct basic_block *bb, struct position pos)
 {
 	if (label->bb_target)
-- 
2.29.2




[Index of Archives]     [Newbies FAQ]     [LKML]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Trinity Fuzzer Tool]

  Powered by Linux