https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80620
--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- For some reason func.c, compiled with -O3 is missing a couple of insns vs -O2: $ diff -u func-O2.s func-O3.s --- func-O2.s 2017-05-04 08:24:33.000000000 +0200 +++ func-O3.s 2017-05-04 08:23:26.000000000 +0200 @@ -19,8 +19,6 @@ idivq %rcx testq %rax, %rax jne .L7 - movabsq $4081116982543369, %rax - andq %rax, %rcx movq %rcx, var_751(%rip) ret .p2align 4,,10