Re: clz

2017-04-01 Thread Nicholas Wilson via Digitalmars-d-learn
On Sunday, 2 April 2017 at 05:33:31 UTC, rikki cattermole wrote: On 02/04/2017 6:28 AM, Nicholas Wilson wrote: [...] BSR looks like its working. http://x86.renejeschke.de/html/file_module_x86_id_20.html http://stackoverflow.com/a/9353998 Ahh there's a subtraction involved. Many thanks!

Re: clz

2017-04-01 Thread rikki cattermole via Digitalmars-d-learn
On 02/04/2017 6:28 AM, Nicholas Wilson wrote: I have this c++ code with clang uint32_t val = 490560; int leading_zeros = __builtin_clz( val << 1); // equals 0 int leading_ones = __builtin_clz(~val << 1); // equals 1 return (lz == 0 ? lo - 1 : -lz); and want to translate it to D. import

clz

2017-04-01 Thread Nicholas Wilson via Digitalmars-d-learn
I have this c++ code with clang uint32_t val = 490560; int leading_zeros = __builtin_clz( val << 1); // equals 0 int leading_ones = __builtin_clz(~val << 1); // equals 1 return (lz == 0 ? lo - 1 : -lz); and want to translate it to D. import core.bitop : bsf,bsr; uint val = 490560;