From 39a59cf89e244653b01173f6d4b04ae7b746059d Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Thu, 14 Apr 2005 15:32:58 +0000 Subject: [PATCH] * config/tc-mips.c (macro) [ldd_std]: Don't attempt the GP optimization for constant addresses. --- gas/ChangeLog | 5 +++++ gas/config/tc-mips.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index deab89a1e52..1ea7d3d3761 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2005-04-14 Maciej W. Rozycki + + * config/tc-mips.c (macro) [ldd_std]: Don't attempt the GP + optimization for constant addresses. + 2005-04-14 Nick Clifton * as.c (main): Move parse_args before symbol_begin and frag_init diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index a13b06ece53..19e8f90fe32 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -6417,7 +6417,8 @@ macro (struct mips_cl_insn *ip) If there is a base register, we add it to $at after the lui instruction. If there is a constant, we always use the last case. */ - if ((valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET + if (offset_expr.X_op == O_symbol + && (valueT) offset_expr.X_add_number <= MAX_GPREL_OFFSET && !nopic_need_relax (offset_expr.X_add_symbol, 1)) { relax_start (offset_expr.X_add_symbol); -- 2.30.2