https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82028
--- Comment #7 from LIU Hao <lh_mouse at 126 dot com> --- clang generates 14 bytes: ``` mov rax, 0x7FFFFFFFFFFFFFFF # 48 B8 FF FF FF FF FF FF FF 7F and rax, rcx # 48 23 C1 ret # C3 `` but in principle this function requires only 8 bytes: ``` lea rax, qword ptr [rcx + rcx] # 48 8D 04 09 shr rax, 1 # 48 D1 E8 ret # C3 ``