We'll need the fallbacks in any case. However, once we've decided on how to specify the CPU features of the user machine we can use the nicer LZCNT/TZCNT/POPCNT as well. Adds cmov, bsf, and bsr instructions. Calls a popcount helper function for machines without SSE4.2. Not handling bswap yet (which can also take i16 params). BUG= https://code.google.com/p/nativeclient/issues/detail?id=3882 R=stichnot@chromium.org, wala@chromium.org Review URL: https://codereview.chromium.org/390443005
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| crosstest.py | Loading commit data... | |
| mem_intrin.cpp | Loading commit data... | |
| mem_intrin.h | Loading commit data... | |
| mem_intrin_main.cpp | Loading commit data... | |
| runtests.sh | Loading commit data... | |
| simple_loop.c | Loading commit data... | |
| simple_loop_main.c | Loading commit data... | |
| test_arith.cpp | Loading commit data... | |
| test_arith.def | Loading commit data... | |
| test_arith.h | Loading commit data... | |
| test_arith_frem.ll | Loading commit data... | |
| test_arith_main.cpp | Loading commit data... | |
| test_arith_sqrt.ll | Loading commit data... | |
| test_bitmanip.cpp | Loading commit data... | |
| test_bitmanip.def | Loading commit data... | |
| test_bitmanip.h | Loading commit data... | |
| test_bitmanip_intrin.ll | Loading commit data... | |
| test_bitmanip_main.cpp | Loading commit data... | |
| test_cast.cpp | Loading commit data... | |
| test_cast.h | Loading commit data... | |
| test_cast_main.cpp | Loading commit data... | |
| test_cast_to_u1.ll | Loading commit data... | |
| test_fcmp.def | Loading commit data... | |
| test_fcmp.pnacl.ll | Loading commit data... | |
| test_fcmp_main.cpp | Loading commit data... | |
| test_global.cpp | Loading commit data... | |
| test_global.h | Loading commit data... | |
| test_global_main.cpp | Loading commit data... | |
| test_icmp.cpp | Loading commit data... | |
| test_icmp.def | Loading commit data... | |
| test_icmp.h | Loading commit data... | |
| test_icmp_main.cpp | Loading commit data... | |
| test_sync_atomic.cpp | Loading commit data... | |
| test_sync_atomic.def | Loading commit data... | |
| test_sync_atomic.h | Loading commit data... | |
| test_sync_atomic_main.cpp | Loading commit data... |