http://d.puremagic.com/issues/show_bug.cgi?id=4046
Dmitry Olshansky <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #2 from Dmitry Olshansky <[email protected]> 2011-09-22 10:42:25 PDT --- (In reply to comment #1) > I'm not sure why the btXX functions (bt, btc, btr, etc) exist at all. > Although they are a single instruction, they are MUCH slower than the > equivalent code using shifts or AND/OR/XOR. > For example, on Core i7 (Sandy Bridge), with a memory operand, they take 6 > clock cycles!!!! You can execute 24 integer instructions in that time. On AMD > K10, they're even slower. On Pentium 4 they have a latency of EIGHTEEN clock > cycles. They're even slow on VIA processors as well -- they're not good > anywhere. Damn, and I used them at heart of important loops in FReD .... Thanks, I'm getting rid of them ASAP %) This should be probably mentioned somewhere, and then there are these problematic bsr/bsf you mentioned before. > > I think they should be completely removed. There's a case for the intrinsics > mentioned in bug 5703, but I think this should be a WONTFIX. To support them > would just encourage slow, non-portable code. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
