( TCH | 2023. 05. 24., sze – 22:59 )

Az ARM azt csinálja, amit mondanak neki. Lehet így is, de 32-bitig felesleges: 8 vagy 16-bites értékeket közvetlenül is betölthetsz a MOV és MOVT utasításokkal, utóbbival a felső 16 bitbe. Ergo egy 32-bites konstanst mindenféle PC-relatív címzős bűvészkedés nélkül, közvetlenül is be tudsz tölteni egy MOV-MOVT párossal (vagy az őket eredményező MOV32 wrapper-utasítással). A legtöbb konstans pedig belefér 32 bitbe.

És egyébként én csak vicceltem, hogy a fordító szándékosan csinálja ezt, amikor nem kéne; nem olyan use case-ekről volt szó, amikor muszáj. :P