diff --git a/gas/config/tc-tilegx.c b/gas/config/tc-tilegx.c index eda36c0..b2d9420 100644 --- a/gas/config/tc-tilegx.c +++ b/gas/config/tc-tilegx.c @@ -715,7 +715,8 @@ emit_tilegx_instruction (tilegx_bundle_bits bits, /* Now that we've changed the reloc, change ha16(x) into x, etc. */ - if (operand_exp->X_add_symbol->sy_value.X_md) + if (!operand_exp->X_add_symbol->sy_flags.sy_local_symbol + && operand_exp->X_add_symbol->sy_value.X_md) { /* HACK: We used X_md to mark this symbol as a fake wrapper around a real expression. To unwrap it, we just grab its diff --git a/gas/config/tc-tilepro.c b/gas/config/tc-tilepro.c index 0b378c2..733a628 100644 --- a/gas/config/tc-tilepro.c +++ b/gas/config/tc-tilepro.c @@ -631,7 +631,8 @@ emit_tilepro_instruction (tilepro_bundle_bits bits, /* Now that we've changed the reloc, change ha16(x) into x, etc. */ - if (operand_exp->X_add_symbol->sy_value.X_md) + if (!operand_exp->X_add_symbol->sy_flags.sy_local_symbol + && operand_exp->X_add_symbol->sy_value.X_md) { /* HACK: We used X_md to mark this symbol as a fake wrapper around a real expression. To unwrap it, we just grab its