search for: s46i_q

Displaying 4 results from an estimated 4 matches for "s46i_q".

2019 Sep 13
3
Side-channel resistant values
...IMO the correct design. > > Is there some reason why it doesn't work? I wasn’t aware of __builtin_unpredictable() until now and I haven’t debugged why it doesn’t work, but here are a couple examples, one using the ternary operator and one using a switch statement: https://godbolt.org/z/S46I_q <https://godbolt.org/z/S46I_q> Dave -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190913/88b2e14f/attachment.html>
2019 Sep 14
2
Side-channel resistant values
...> >> Is there some reason why it doesn't work? > > I wasn’t aware of __builtin_unpredictable() until now and I haven’t debugged why it doesn’t work, but here are a couple examples, one using the ternary operator and one using a switch statement: > > https://godbolt.org/z/S46I_q > > Dave > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
2019 Sep 14
2
Side-channel resistant values
...why it doesn't work? >> > >> > I wasn’t aware of __builtin_unpredictable() until now and I haven’t debugged why it doesn’t work, but here are a couple examples, one using the ternary operator and one using a switch statement: >> > >> > https://godbolt.org/z/S46I_q >> > >> > Dave >> > _______________________________________________ >> > LLVM Developers mailing list >> > llvm-dev at lists.llvm.org >> > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> -------------- next part -------------...
2019 Sep 13
2
Side-channel resistant values
Hi Chandler, The data-invariant feature sounds great but what about the general case? When performance tuning code, people sometimes need the ability to reliably generate CMOV, and right now the best advice is either “use inline assembly” or “keep refactoring until CMOV is emited” (and hope that future compilers continue to generate CMOV). Given that a patch already exists to reliably generate