From 148eb5dd617bf7c2c282b522bfcf61afb036ed59 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 24 Aug 1992 19:48:54 +0000 Subject: [PATCH] Mon Aug 24 12:45:12 1992 Ian Lance Taylor (ian@cygnus.com) * tc-m68k.c: use TARGET_CPU to choose default cpu type. * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB so that we can assemble hand-written libgcc code. --- gas/config/ChangeLog | 7 +++++++ gas/config/tc-m68k.c | 44 ++++++++++++++++++++++++++++++++++++-------- 2 files changed, 43 insertions(+), 8 deletions(-) diff --git a/gas/config/ChangeLog b/gas/config/ChangeLog index 15b26a73c71..f599222f9d3 100644 --- a/gas/config/ChangeLog +++ b/gas/config/ChangeLog @@ -1,3 +1,10 @@ +Mon Aug 24 12:45:12 1992 Ian Lance Taylor (ian@cygnus.com) + + * tc-m68k.c: use TARGET_CPU to choose default cpu type. + + * te-generic.h: default to LOCAL_LABELS_DOLLAR and LOCAL_LABELS_FB + so that we can assemble hand-written libgcc code. + Wed Aug 19 11:20:59 1992 Ian Lance Taylor (ian@cygnus.com) * tc-m68k.c, tc-m68kmote.c: the cas2 instruction is supposed to be diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c index c3d1b19e7b4..052e4d84466 100644 --- a/gas/config/tc-m68k.c +++ b/gas/config/tc-m68k.c @@ -2670,18 +2670,46 @@ md_assemble(str) int shorts_this_frag; - if (current_architecture == 0) - current_architecture = (m68020 + if (cpu_of_arch (current_architecture) == 0) + { + enum m68k_architecture cpu_type; + +#ifndef TARGET_CPU + cpu_type = m68020; +#else + if (strcmp (TARGET_CPU, "m68000") == 0) + cpu_type = m68000; + else if (strcmp (TARGET_CPU, "m68010") == 0) + cpu_type = m68010; + else if (strcmp (TARGET_CPU, "m68020") == 0 + || strcmp (TARGET_CPU, "m68k") == 0) + cpu_type = m68020; + else if (strcmp (TARGET_CPU, "m68030") == 0) + cpu_type = m68030; + else if (strcmp (TARGET_CPU, "m68040") == 0) + cpu_type = m68040; + else + cpu_type = m68020; +#endif + + /* If float or mmu were specified, just default cpu. */ + if (current_architecture != 0) + current_architecture |= cpu_type; + else + { + if ((cpu_type & m68020up) != 0) + current_architecture = (cpu_type #ifndef NO_68881 - | m68881 + | m68881 #endif #ifndef NO_68851 - | m68851 + | m68851 #endif - ); - /* If only float and mmu were specified, default cpu. */ - else if (cpu_of_arch (current_architecture) == 0) - current_architecture |= m68020; + ); + else + current_architecture = cpu_type; + } + } memset((char *)(&the_ins), '\0', sizeof(the_ins)); /* JF for paranoia sake */ m68k_ip(str); -- 2.30.2