https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99155
--- Comment #2 from Dennis Cote <dennisc at harding dot ca> --- Ah, I see. So the default does no optimization at all, not even redundant instruction elimination. Even -O1 completely inlines the function to 3 MOV instructions with constant values. So I have learned to always turn on some optimizations. Thanks for the quick follow-up.