aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1992-08-05 08:59:10 +0000
committerJohn Gilmore <gnu@cygnus>1992-08-05 08:59:10 +0000
commit934afcd4342d23d936f4f74c26cfa9aef55df619 (patch)
tree31a737fb88e81af86ba6db90cf56e7331a1a54dc /gas
parent38094c60330686e8f69dfcc8c2c5d2316f622cd1 (diff)
downloadgdb-934afcd4342d23d936f4f74c26cfa9aef55df619.zip
gdb-934afcd4342d23d936f4f74c26cfa9aef55df619.tar.gz
gdb-934afcd4342d23d936f4f74c26cfa9aef55df619.tar.bz2
* tc-m68k.c (try_index): Error if index scaling specified and
assembling for an older CPU than a 68020. This bug was found at Adobe because GAS did not diagnose incorrect 68020 code generated by GCC when compiling for 68010. We had to debug it in the target system as failing instructions.
Diffstat (limited to 'gas')
-rw-r--r--gas/config/ChangeLog7
-rw-r--r--gas/config/tc-m68k.c5
2 files changed, 10 insertions, 2 deletions
diff --git a/gas/config/ChangeLog b/gas/config/ChangeLog
index d334c74..f085b34 100644
--- a/gas/config/ChangeLog
+++ b/gas/config/ChangeLog
@@ -1,8 +1,12 @@
+Wed Aug 5 01:54:34 1992 John Gilmore (gnu at cygnus.com)
+
+ * tc-m68k.c (try_index): Error if index scaling specified and
+ assembling for an older CPU than a 68020.
+
Mon Jul 6 17:09:32 1992 Steve Chamberlain (sac@cygnus.com)
* obj-coffbfd.c (fill_section): mark .lit sections as STYP_LIT
-
Tue Jun 9 07:50:46 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* tc-m68k.c (m68kip): Fix typo so that only arch's >=68020 do
@@ -21,7 +25,6 @@ Mon May 4 18:56:19 1992 Steve Chamberlain (sac@thepub.cygnus.com)
* obj-coffbfd.c: use is a synonym for section, (do_relocs_for):
calc the base of relocs correctly.
* tc-a29k.c (parse_operand): allow expressions to be in any section.
-
Thu Mar 12 04:42:38 1992 K. Richard Pixley (rich@cygnus.com)
diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c
index 15bdf99..7ccd003 100644
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -892,6 +892,11 @@ struct m68k_op *opP;
case '2':
case '4':
case '8':
+ if (cpu_of_arch(current_architecture) < m68020) {
+ opP->error="no index scaling in pre-68020's";
+ *s=ss;
+ return FAIL;
+ }
opP->imul= *ss-'0';
break;
default: