diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/avr/avr.c | 8 |
2 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 085dc40..55ffba4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-05-26 Marek Michalkiewicz <marekm@amelek.gda.pl> + + * config/avr/avr.c (avr_asm_only_p): New variable. + (avr_override_options): Set it here if AVR1. + (asm_file_start): Test it here, report an error if set. + 2002-05-26 Kazu Hirata <kazu@cs.umass.edu> * alias.c: Fix formatting. diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c index b254c6b..5167ee65 100644 --- a/gcc/config/avr/avr.c +++ b/gcc/config/avr/avr.c @@ -114,6 +114,9 @@ int avr_mega_p = 0; /* Enhanced core: use "movw", "mul", ... */ int avr_enhanced_p = 0; +/* Assembler only. */ +static int avr_asm_only_p = 0; + enum avr_arch { AVR1 = 1, AVR2, @@ -227,7 +230,7 @@ avr_override_options () { case AVR1: default: - error ("MCU `%s' not supported", avr_mcu_name); + avr_asm_only_p = 1; /* ... fall through ... */ case AVR2: avr_enhanced_p = 0; avr_mega_p = 0; break; case AVR3: avr_enhanced_p = 0; avr_mega_p = 1; break; @@ -4792,6 +4795,9 @@ void asm_file_start (file) FILE *file; { + if (avr_asm_only_p) + error ("MCU `%s' supported for assembler only", avr_mcu_name); + output_file_directive (file, main_input_filename); fprintf (file, "\t.arch %s\n", avr_mcu_name); fputs ("__SREG__ = 0x3f\n" |