aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2011-05-31 14:04:13 +0000
committerPaul Brook <paul@codesourcery.com>2011-05-31 14:04:13 +0000
commit10960bfbce1719b569d2f7e3b0a9931ec7f2b5d9 (patch)
treee752f4cd26339cf6b22042616492c77274eb5908 /gas/config
parent6e7ce2cdd34f7e3ad720e1d43a19635d79ce17b4 (diff)
downloadgdb-10960bfbce1719b569d2f7e3b0a9931ec7f2b5d9.zip
gdb-10960bfbce1719b569d2f7e3b0a9931ec7f2b5d9.tar.gz
gdb-10960bfbce1719b569d2f7e3b0a9931ec7f2b5d9.tar.bz2
2011-05-31 Paul Brook <paul@codesourcery.com>
gas/ * config/tc-arm.c (do_t_branch): Avoid relaxing branches to constant addresses. gas/testsuite/ * arm/t2-branch-global.d: New test. * arm/t2-branch-global.s: New test.
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/tc-arm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index 375ff82..964384c 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -9845,7 +9845,9 @@ do_t_branch (void)
if (unified_syntax
&& (inst.size_req == 4
- || (inst.size_req != 2 && inst.operands[0].hasreloc)))
+ || (inst.size_req != 2
+ && (inst.operands[0].hasreloc
+ || inst.reloc.exp.X_op == O_constant))))
{
inst.instruction = THUMB_OP32(opcode);
if (cond == COND_ALWAYS)