diff options
author | Georg-Johann Lay <avr@gjlay.de> | 2024-07-19 18:22:26 +0200 |
---|---|---|
committer | Georg-Johann Lay <avr@gjlay.de> | 2024-07-19 18:24:35 +0200 |
commit | 9116490c1b03dac18f10e42df03731a3aed0b4e9 (patch) | |
tree | c34aeb3c3e1f3dfd743fd1b0cdb1f0048ebc7222 /libgomp/target.c | |
parent | 8d6994f33a98a168151a57a3d21395b19196cd9d (diff) | |
download | gcc-9116490c1b03dac18f10e42df03731a3aed0b4e9.zip gcc-9116490c1b03dac18f10e42df03731a3aed0b4e9.tar.gz gcc-9116490c1b03dac18f10e42df03731a3aed0b4e9.tar.bz2 |
AVR: Support new built-in function __builtin_avr_mask1.
gcc/
* config/avr/builtins.def (MASK1): New DEF_BUILTIN.
* config/avr/avr.cc (avr_rtx_costs_1): Handle rtx costs for
expressions like __builtin_avr_mask1.
(avr_init_builtins) <uintQI_ftype_uintQI_uintQI>: New tree type.
(avr_expand_builtin) [AVR_BUILTIN_MASK1]: Diagnose unexpected forms.
(avr_fold_builtin) [AVR_BUILTIN_MASK1]: Handle case.
* config/avr/avr.md (gen_mask1): New expand helper.
(mask1_0x01_split, mask1_0x80_split, mask1_0xfe_split): New
insn-and-split.
(*mask1_0x01, *mask1_0x80, *mask1_0xfe): New insns.
* doc/extend.texi (AVR Built-in Functions) <__builtin_avr_mask1>:
Document new built-in function.
gcc/testsuite/
* gcc.target/avr/torture/builtin-mask1.c: New test.
Diffstat (limited to 'libgomp/target.c')
0 files changed, 0 insertions, 0 deletions