https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84071
--- Comment #8 from Wilco <wdijkstr at arm dot com> --- (In reply to Eric Botcazou from comment #6) > > They are always written but have an undefined value. Adding 2 8-bit values > > results in a 9-bit value with WORD_REGISTER_OPERATIONS. > > If they have an undefined value, then WORD_REGISTER_OPERATIONS must not be > defined for ARM. Here's the definition: > > -- Macro: WORD_REGISTER_OPERATIONS > Define this macro to 1 if operations between registers with > integral mode smaller than a word are always performed on the > entire register. Most RISC machines have this property and most > CISC machines do not. > > If the 8-bit addition is not performed on the entire 32-bit register, then > this is not a WORD_REGISTER_OPERATIONS target. The addition is performed on the full 32-bit register, so this obviously means that the top 24 bits have an undefined value.