On a hunch, I added "volatile" to the declarations of the function parameters:
int match_fcb(volatile struct cpmfcb *mask, volatile struct cpmfcb *fcb) This caused code to be generated, and it looks viable. It's still unclear to me why this code was being optimized away. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1909838 Title: gcc -O3 produces invalid code To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gcc-9/+bug/1909838/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
