[Bug target/59968] Unused BT patterns
hjl.tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Jan 28 22:21:00 GMT 2014
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59968
--- Comment #15 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Uroš Bizjak from comment #14)
> From i386.md:
>
> ;; %%% bts, btr, btc, bt.
> ;; In general these instructions are *slow* when applied to memory,
> ;; since they enforce atomic operation. When applied to registers,
> ;; it depends on the cpu implementation. They're never faster than
> ;; the corresponding and/ior/xor operations, so with 32-bit there's
> ;; no point. But in 64-bit, we can't hold the relevant immediates
> ;; within the instruction itself, so operating on bits in the high
> ;; 32-bits of a register becomes easier.
> ;;
BTx with memory operand are slow, but they have smaller code
sizes. We can optimize well for register operand as the first
step.
More information about the Gcc-bugs
mailing list