On 22.01.2021 18:44, Paul Gofman wrote:
What seems to be more interesting is xsaveopt, which I think could make a difference. That would, however, need xsave are to be at constant address. I've been thinking about storing it next to TEB, but we can't do that as long as winsock is called on signal stack, so I left experimenting with it for the future.
xsavec also performs an optimization (doesn't save the xstate in initial state),
As I said, xsave already does that optimization, there is no need for xsavec for that.
and I think it should not depend on the save address
Constant save address is for a different optimization: xsaveopt does not need to store parts that didn't change since the last xrstor. It means that it would save a lot of sores in applications rarely using AVX that xsave/xsavec can't optimize.
Jacek