https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47769
--- Comment #7 from Hongtao.liu <crazylht at gmail dot com> --- > > This is obviously horrible, but the right answer isn't btr in a loop, it's > what clang does: > > movabsq $7905747460161236406, %rax # imm = 0x6DB6DB6DB6DB6DB6 every > third bit unset > andq %rdi, %rax > retq > Open pr103462 for this.