changeset 148:13cc7e19ecec

tiobjd disasm -g: support -b as well
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Tue, 29 Apr 2014 06:45:45 +0000
parents 1e1815a6d701
children fdf3137c703a
files leo-obj/tool/disasm.c leo-obj/tool/richsym.c
diffstat 2 files changed, 6 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/leo-obj/tool/disasm.c	Tue Apr 29 06:26:59 2014 +0000
+++ b/leo-obj/tool/disasm.c	Tue Apr 29 06:45:45 2014 +0000
@@ -16,6 +16,7 @@
 
 int auto_xlat_section_relocs = 1;
 int disasm_richsym;
+extern int richsym_print_bitsize;
 
 static void
 find_better_symbol(sec, symp, addp)
@@ -410,8 +411,11 @@
 	unsigned secnum;
 	int c;
 
-	while ((c = getopt(argc, argv, "gh:s")) != EOF)
+	while ((c = getopt(argc, argv, "bgh:s")) != EOF)
 		switch (c) {
+		case 'b':
+			richsym_print_bitsize++;
+			continue;
 		case 'g':
 			disasm_richsym++;
 			continue;
--- a/leo-obj/tool/richsym.c	Tue Apr 29 06:26:59 2014 +0000
+++ b/leo-obj/tool/richsym.c	Tue Apr 29 06:45:45 2014 +0000
@@ -269,7 +269,7 @@
 	}
 	printf("%s%s %s;", prefix, base_type, s1);
 	free(s1);
-	if (richsym_print_bitsize)
+	if (richsym_print_bitsize && (sym->type & 0x30) != 0x20)
 		printf("\t/* %u bits */", get_u32(sym->aux + 4));
 	putchar('\n');
 }