aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2010-07-03 22:15:58 +0000
committerH.J. Lu <hjl.tools@gmail.com>2010-07-03 22:15:58 +0000
commitc64efb4be7d6e005f3768494ff671a075225b010 (patch)
treef7232fc62797412511060975161002aeebe17903 /gas/config
parent0acf065b19253e02ea32188ea0cbdf4e80e3c42d (diff)
downloadgdb-c64efb4be7d6e005f3768494ff671a075225b010.zip
gdb-c64efb4be7d6e005f3768494ff671a075225b010.tar.gz
gdb-c64efb4be7d6e005f3768494ff671a075225b010.tar.bz2
Don't call section_symbol() with expr_section.
gas/ 2010-07-03 Jan Beulich <jbeulich@novell.com> PR gas/11732 * config/tc-i386.c (i386_finalize_displacement): Don't call section_symbol() with expr_section. gas/testsuite/ 2010-07-03 Jan Beulich <jbeulich@novell.com> PR gas/11732 * gas/i386/i386.exp: Run new tests. * gas/i386/intel-got{32,64}.{s,d}: New.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-i386.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index d065b90..281faaa 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -6878,7 +6878,8 @@ i386_finalize_displacement (segT exp_seg ATTRIBUTE_UNUSED, expressionS *exp,
goto inv_disp;
if (S_IS_LOCAL (exp->X_add_symbol)
- && S_GET_SEGMENT (exp->X_add_symbol) != undefined_section)
+ && S_GET_SEGMENT (exp->X_add_symbol) != undefined_section
+ && S_GET_SEGMENT (exp->X_add_symbol) != expr_section)
section_symbol (S_GET_SEGMENT (exp->X_add_symbol));
exp->X_op = O_subtract;
exp->X_op_symbol = GOT_symbol;