aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog3
-rw-r--r--gas/config/tc-h8300.c6
2 files changed, 7 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 2a4911f..07f44b5 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,8 @@
2003-07-22 Alexandre Oliva <aoliva@redhat.com>
+ * config/tc-h8300.c (get_specific): No PCREL8 encoding for bsr/bc
+ or bsr/bs.
+
* config/tc-h8300.c (md_assemble): Make sure characters after
slash and dot are lower-case.
diff --git a/gas/config/tc-h8300.c b/gas/config/tc-h8300.c
index eeb0995..f383e79 100644
--- a/gas/config/tc-h8300.c
+++ b/gas/config/tc-h8300.c
@@ -1197,9 +1197,11 @@ get_specific (instruction, operands, size)
}
else if (op_mode == PCREL && op_mode == x_mode)
{
- /* movsd only comes in PCREL16 flavour:
+ /* movsd, bsr/bc and bsr/bs only come in PCREL16 flavour:
If x_size is L_8, promote it. */
- if (OP_KIND (this_try->opcode->how) == O_MOVSD)
+ if (OP_KIND (this_try->opcode->how) == O_MOVSD
+ || OP_KIND (this_try->opcode->how) == O_BSRBC
+ || OP_KIND (this_try->opcode->how) == O_BSRBS)
if (x_size == L_8)
x_size = L_16;