aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-nds32.c
diff options
context:
space:
mode:
authorKuan-Lin Chen <kuanlinchentw@gmail.com>2015-01-27 11:08:07 +0800
committerKuan-Lin Chen <kuanlinchentw@gmail.com>2015-01-27 11:08:07 +0800
commit3bd3aeb46126494401e2f265b55fc255d5c5b517 (patch)
tree8df9a9d6630bb7bb9d3b256e7a120054a09f6b40 /gas/config/tc-nds32.c
parent6f21bfab08368c1a6c9d950a14e3fcda121406b9 (diff)
downloadgdb-3bd3aeb46126494401e2f265b55fc255d5c5b517.zip
gdb-3bd3aeb46126494401e2f265b55fc255d5c5b517.tar.gz
gdb-3bd3aeb46126494401e2f265b55fc255d5c5b517.tar.bz2
NDS32/gas: Fix md_parse_name hook.
Diffstat (limited to 'gas/config/tc-nds32.c')
-rw-r--r--gas/config/tc-nds32.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/gas/config/tc-nds32.c b/gas/config/tc-nds32.c
index 7a23721..28e90ae 100644
--- a/gas/config/tc-nds32.c
+++ b/gas/config/tc-nds32.c
@@ -6541,6 +6541,8 @@ nds32_parse_name (char const *name, expressionS *exprP,
enum expr_mode mode ATTRIBUTE_UNUSED,
char *nextcharP ATTRIBUTE_UNUSED)
{
+ segT segment;
+
exprP->X_op_symbol = NULL;
exprP->X_md = BFD_RELOC_UNUSED;
@@ -6548,6 +6550,11 @@ nds32_parse_name (char const *name, expressionS *exprP,
exprP->X_op = O_symbol;
exprP->X_add_number = 0;
+ /* Check the specail name if a symbol. */
+ segment = S_GET_SEGMENT (exprP->X_add_symbol);
+ if (segment != undefined_section)
+ return 0;
+
if (strcmp (name, GOT_NAME) == 0 && *nextcharP != '@')
{
/* Set for _GOT_OFFSET_TABLE_. */