aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-m68k.c18
2 files changed, 14 insertions, 9 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 0acf61a..20a5a16 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2006-05-19 Nathan Sidwell <nathan@codesourcery.com>
+
+ * gas/config/tc-m68k.c (m68k_init_arch): Move checking of
+ cfloat/m68881 to correct architecture before using it.
+
2006-05-16 Bjoern Haase <bjoern.m.haase@web.de>
* config/tc-avr.h (TC_VALIDATE_FIX): Allow fixups for immediate
diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c
index f370e6c..6cf85d7 100644
--- a/gas/config/tc-m68k.c
+++ b/gas/config/tc-m68k.c
@@ -7233,6 +7233,15 @@ m68k_init_arch (void)
current_architecture &= ~not_current_architecture;
+ if ((current_architecture & (cfloat | m68881)) == (cfloat | m68881))
+ {
+ /* Determine which float is really meant. */
+ if (current_architecture & (m68k_mask & ~m68881))
+ current_architecture ^= cfloat;
+ else
+ current_architecture ^= m68881;
+ }
+
if (selected_cpu)
{
control_regs = selected_cpu->control_regs;
@@ -7244,15 +7253,6 @@ m68k_init_arch (void)
}
}
- if ((current_architecture & (cfloat | m68881)) == (cfloat | m68881))
- {
- /* Determine which float is really meant. */
- if (current_architecture & (m68k_mask & ~m68881))
- current_architecture ^= cfloat;
- else
- current_architecture ^= m68881;
- }
-
if ((current_architecture & m68k_mask)
&& (current_architecture & ~m68k_mask))
{