-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove attempt to use tzcnt as bsf #2333
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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.