Remove attempt to use tzcnt as bsf#2333
Conversation
barcharcraz
left a comment
There was a problem hiding this comment.
How different is the codegen between the bsf version and the tzcnt version?
This is kinda pre-existing but we should do some benchmarks to determine if it's even worth doing the tzcnt version if we need to dynamically check for it.
We'll track this as #2133 |
Remember bsf requires a branch for zero input |
|
@StephanTLavavej no, this wasn't really caused by #1540. Maybe some specific case was triggered by #1540, but the bug was always there since |
|
@AlexGuteniev Thanks, I was confused! I've restored your PR description. |
|
I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed. |
|
Thanks for investigating and fixing this bug! 🐞 0️⃣ 1️⃣ |
…nt instruction which is not universally available. See <https://developercommunity.visualstudio.com/t/vs2022-cl-193030705-generates-non-universally-avai/1578571> / <microsoft/STL#2330> and <microsoft/STL#2333>. git-svn-id: https://source.openmpt.org/svn/openmpt/trunk/OpenMPT@15914 56274372-70c3-4bfc-bfc3-4c3a0b034d27
This is too aggressive. I mean probably gcd and lcm and vector are fine. For this bug to manifest we would need to immediately compare the result against zero. See @statementreply 's demo: https://godbolt.org/z/aPjnojjcx I would have said "This affected 's countr_zero() and countr_one(), and potentially ..." |
Resolves #2330
Fixes VSO-1434895/AB#1434895.