This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH 01/12] PR gas/14640 * config/tc-microblaze.c: md_estimate_size_before_relax check not a weak symbol
From: Edgar E. Iglesias <edgar.iglesias@gmail.com>
PR gas 14640 - check for weak symbols before emitting relocation
Based on original patch by Vasanth Asokan
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
---
gas/ChangeLog | 5 +++++
gas/config/tc-microblaze.c | 3 ++-
2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 36f0750..02aee11 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2012-10-10 David Holsgrove <david.holsgrove@xilinx.com>
+
+ * config/tc-microblaze.c: md_estimate_size_before_relax check
+ not a weak symbol
+
2012-09-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/tc-arm.c: Changed ldra and strl-form mnemonics
diff --git a/gas/config/tc-microblaze.c b/gas/config/tc-microblaze.c
index 3ab854f..86ac90b 100644
--- a/gas/config/tc-microblaze.c
+++ b/gas/config/tc-microblaze.c
@@ -2065,7 +2065,8 @@ md_estimate_size_before_relax (fragS * fragP,
as_bad (_("Absolute PC-relative value in relaxation code. Assembler error....."));
abort ();
}
- else if ((S_GET_SEGMENT (fragP->fr_symbol) == segment_type))
+ else if (S_GET_SEGMENT (fragP->fr_symbol) == segment_type &&
+ !S_IS_WEAK (fragP->fr_symbol))
{
fragP->fr_subtype = DEFINED_PC_OFFSET;
/* Don't know now whether we need an imm instruction. */
--
1.7.0.4