[LLVMdev] RFC: Constant Hoisting
Chris Sears
chris.sears at gmail.com
Mon Feb 2 21:21:04 PST 2015
I hadn't seen the godbolt compiler comparison site before.
So I plugged newtst.c into it and my problem did not show up
on any of the clang versions.
I do not understand this but I will pull a fresh tree from SVN,
reapply the patch and recompile from scratch.
However, there was another bug which showed up between
3.3 and 3.4.1. I'd noticed this before and I was tracking it
separately but I'd made no headway in solving it.
With x86 3.4.1 (-O3 -march=native -x c), for some reason
the last bit test expression isn't matching.
(((xx) & (1ULL << (56))))
It generates
movabsq $72057594037927936, %rcx # imm = 0x100000000000000
andq %rcx, %rdi
However on 3.3, it (correctly) generates
btq $56, %rdi
jb .LBB0_13
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150202/c10ed333/attachment.html>
More information about the llvm-dev
mailing list