]> git.lizzy.rs Git - rust.git/commit
Add ctlz_nonzero & cttz_nonzero intrinsics
authorScott McMurray <scottmcm@users.noreply.github.com>
Sun, 28 May 2017 03:56:25 +0000 (20:56 -0700)
committerScott McMurray <scottmcm@users.noreply.github.com>
Fri, 9 Jun 2017 06:01:39 +0000 (23:01 -0700)
commit13e24003472c13636d4350a530d6e6495775afeb
tree4672aea092e34e447c2c4b3b1e6f8f71240e8756
parent9454dd5d2d8786d6eef07e2a7b737ad092e303df
Add ctlz_nonzero & cttz_nonzero intrinsics

LLVM currently doesn't remove the "bypass if argument is zero" assembly inside branches where the value is known to be non-zero, pessimizing code that uses uN::leading_zeros
src/libcore/intrinsics.rs
src/librustc_trans/intrinsic.rs
src/librustc_typeck/check/intrinsic.rs
src/test/run-pass/intrinsics-integer.rs