aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2021-08-11 13:49:30 +0100
committerNick Clifton <nickc@redhat.com>2021-08-11 13:49:30 +0100
commit5393ca689ae6801ffa4eba377d1f3b97f496b49b (patch)
treeab11b4bc74b4674df4744d2ec1624b3f0ca5cd7a
parent3af2785c97622c0a64b266e18a06d735af822df9 (diff)
downloadfsf-binutils-gdb-5393ca689ae6801ffa4eba377d1f3b97f496b49b.zip
fsf-binutils-gdb-5393ca689ae6801ffa4eba377d1f3b97f496b49b.tar.gz
fsf-binutils-gdb-5393ca689ae6801ffa4eba377d1f3b97f496b49b.tar.bz2
Fix an internal error in the CSKY assembler when asked to resolve an overlarge constant.
PR 28215 * config/tc-csky.c (md_apply_fix): Correctly handle a fixup that involves an overlarge constant.
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/tc-csky.c3
2 files changed, 8 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index dd19f3e..098353a 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2021-08-11 Nick Clifton <nickc@redhat.com>
+
+ PR 28215
+ * config/tc-csky.c (md_apply_fix): Correctly handle a fixup that
+ involves an overlarge constant.
+
2021-08-11 Matt Jacobson <mhjacobson@me.com>
* config/tc-avr.c (enum options): Add option flag.
diff --git a/gas/config/tc-csky.c b/gas/config/tc-csky.c
index 35a7252..e0133c3 100644
--- a/gas/config/tc-csky.c
+++ b/gas/config/tc-csky.c
@@ -5476,7 +5476,8 @@ md_apply_fix (fixS *fixP,
else if (fixP->fx_size == 1 && val >= -256 && val <= 255)
;
else
- abort ();
+ break;
+
md_number_to_chars (buf, val, fixP->fx_size);
fixP->fx_done = 1;
}