diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 085dc40f98a..55ffba40302 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-05-26 Marek Michalkiewicz + + * 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 * alias.c: Fix formatting. diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c index b254c6ba027..5167ee65ada 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"