diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2025-02-06 11:28:28 +0100 |
---|---|---|
committer | Georg-Johann Lay <avr@gjlay.de> | 2025-02-06 18:24:17 +0100 |
commit | cb27337f9f4956e6eb634b26a7999ea68063f58a (patch) | |
tree | 54546a4bb921fa6ec90e318324fe8e428137f9d7 /gcc/config/csky/predicates.md | |
parent | a03303b4d5b2ca58e5750a4d5bd735d85a091273 (diff) | |
download | gcc-cb27337f9f4956e6eb634b26a7999ea68063f58a.zip gcc-cb27337f9f4956e6eb634b26a7999ea68063f58a.tar.gz gcc-cb27337f9f4956e6eb634b26a7999ea68063f58a.tar.bz2 |
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.
Diffstat (limited to 'gcc/config/csky/predicates.md')
0 files changed, 0 insertions, 0 deletions