-
- Downloads
AVR: Add support for a Compact Vector Table (-mcvt).
Some AVR devices support a CVT: - Devices from the 0-series, 1-series, 2-series. - AVR16, AVR32, AVR64, AVR128 devices. The support is provided by means of a startup code file crt<mcu>-cvt.o from AVR-LibC v2.3 that can be linked instead of the traditional crt<mcu>.o. This patch adds a new command line option -mcvt that links that CVT startup code (or issues an error when the device doesn't support a CVT). PR target/118764 gcc/ * config/avr/avr.opt (-mcvt): New target option. * config/avr/avr-arch.h (AVR_CVT): New enum value. * config/avr/avr-mcus.def: Add AVR_CVT flag for devices that support it. * config/avr/avr.cc (avr_handle_isr_attribute) [TARGET_CVT]: Issue an error when a vector number larger that 3 is used. * config/avr/gen-avr-mmcu-specs.cc (McuInfo.have_cvt): New property. (print_mcu) <*avrlibc_startfile>: Use crt<mcu>-cvt.o depending on -mcvt (or issue an error when the device doesn't support a CVT). * doc/invoke.texi (AVR Options): Document -mcvt.
Showing
- gcc/config/avr/avr-arch.h 16 additions, 6 deletionsgcc/config/avr/avr-arch.h
- gcc/config/avr/avr-mcus.def 106 additions, 106 deletionsgcc/config/avr/avr-mcus.def
- gcc/config/avr/avr.cc 7 additions, 2 deletionsgcc/config/avr/avr.cc
- gcc/config/avr/avr.opt 4 additions, 0 deletionsgcc/config/avr/avr.opt
- gcc/config/avr/gen-avr-mmcu-specs.cc 9 additions, 3 deletionsgcc/config/avr/gen-avr-mmcu-specs.cc
- gcc/doc/invoke.texi 18 additions, 1 deletiongcc/doc/invoke.texi
Loading
Please register or sign in to comment