By boulos
As Colin says towards the end, it seems like a combination of “all registers are callee saved” would help (combined __noinline__) but I agree you’d still have to find a way to make sure you could reliably zero out the xmm registers following the AESni runs. I would hope that an extreme dose of volatile with mm_load_ps and maybe some OR’ing into the result will defeat gcc and clangs ability to optimize away the clearing, but that’s precisely what Colin is complaining about: you can’t really express your demand in C and be certain it sticks.
Read more here: https://news.ycombinator.com/item?id=10444377
boulos comments on "Zeroing Buffers is Insufficient (2014)"
No comments:
Post a Comment