https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107957

--- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Georg-Johann Lay <g...@gcc.gnu.org>:

https://gcc.gnu.org/g:b78c0dcb1b6b523880ee193698defca3ebd0b3f7

commit r15-5937-gb78c0dcb1b6b523880ee193698defca3ebd0b3f7
Author: Georg-Johann Lay <a...@gjlay.de>
Date:   Sun Dec 1 17:12:34 2024 +0100

    AVR: target/107957 - Split multi-byte loads and stores.

    This patch splits multi-byte loads and stores into single-byte
    ones provided:

    -  New option -msplit-ldst is on (e.g. -O2 and higher), and
    -  The memory is non-volatile, and
    -  The address space is generic, and
    -  The split addresses are natively supported by the hardware.

    gcc/
            PR target/107957
            * config/avr/avr.opt (-msplit-ldst, avropt_split_ldst):
            New option and associated var.
            * common/config/avr/avr-common.cc (avr_option_optimization_table)
            [OPT_LEVELS_2_PLUS]: Turn on -msplit_ldst.
            * config/avr/avr-passes.cc (splittable_address_p)
            (avr_byte_maybe_mem, avr_split_ldst): New functions.
            * config/avr/avr-protos.h (avr_split_ldst): New proto.
            * config/avr/avr.md (define_split) [avropt_split_ldst]: Run
            avr_split_ldst().

Reply via email to