aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorJiong Wang <jiong.wang@arm.com>2015-03-03 15:00:59 +0000
committerJiong Wang <jiong.wang@arm.com>2015-03-03 15:00:59 +0000
commitd8282f0eb10a1a5759bcca4582098a8369f508f8 (patch)
tree2ab820849ee00d86b98a737859010d9d18066ced /opcodes
parent90ad5e1d4f34d02f437ec12d1b65d7252f5b7f1c (diff)
downloadgdb-d8282f0eb10a1a5759bcca4582098a8369f508f8.zip
gdb-d8282f0eb10a1a5759bcca4582098a8369f508f8.tar.gz
gdb-d8282f0eb10a1a5759bcca4582098a8369f508f8.tar.bz2
[ARM] Skip private symbol when doing objdump
2015-03-03 Jiong Wang <jiong.wang@arm.com> opcode/ * arm-dis.c (arm_symbol_is_valid): Skip ARM private symbols. binutils/testsuite/ * binutils-all/arm/rvct_symbol.s: New testcase. * binutils-all/arm/objdump.exp: Run it.
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes/ChangeLog4
-rw-r--r--opcodes/arm-dis.c7
2 files changed, 9 insertions, 2 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 9cdca3c..22408be 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,7 @@
+2015-03-03 Jiong Wang <jiong.wang@arm.com>
+
+ * arm-dis.c (arm_symbol_is_valid): Skip ARM private symbols.
+
2015-02-25 Oleg Endo <olegendo@gcc.gnu.org>
* sh-opc.h (clrs, sets): Mark as arch_sh3_nommu_up instead of
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index e0a82c0..994586d 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -4558,7 +4558,10 @@ print_insn_data (bfd_vma pc ATTRIBUTE_UNUSED,
}
/* Disallow mapping symbols ($a, $b, $d, $t etc) from
- being displayed in symbol relative addresses. */
+ being displayed in symbol relative addresses.
+
+ Also disallow private symbol, with __tagsym$$ prefix,
+ from ARM RVCT toolchain being displayed. */
bfd_boolean
arm_symbol_is_valid (asymbol * sym,
@@ -4571,7 +4574,7 @@ arm_symbol_is_valid (asymbol * sym,
name = bfd_asymbol_name (sym);
- return (name && *name != '$');
+ return (name && *name != '$' && strncmp (name, "__tagsym$$", 10));
}
/* Parse an individual disassembler option. */