Re: [Xen-devel] [PATCH] x86emul: keep compiler from using {x, y, z}mm registers itself

2017-10-16 Thread Jan Beulich
>>> On 16.10.17 at 17:05, wrote: > On 10/16/2017 01:32 PM, Jan Beulich wrote: >> Since the emulator acts on the live hardware registers, we need to >> prevent the compiler from using them e.g. for inlined memcpy() / >> memset() (as gcc7 does). > > Why doesn't this

Re: [Xen-devel] [PATCH] x86emul: keep compiler from using {x, y, z}mm registers itself

2017-10-16 Thread George Dunlap
On 10/16/2017 01:32 PM, Jan Beulich wrote: > Since the emulator acts on the live hardware registers, we need to > prevent the compiler from using them e.g. for inlined memcpy() / > memset() (as gcc7 does). Why doesn't this affect the rest of the hypervisor too, since we don't save and restore

Re: [Xen-devel] [PATCH] x86emul: keep compiler from using {x, y, z}mm registers itself

2017-10-16 Thread Jan Beulich
>>> On 16.10.17 at 14:37, wrote: > On 16/10/17 13:32, Jan Beulich wrote: >> Since the emulator acts on the live hardware registers, we need to >> prevent the compiler from using them e.g. for inlined memcpy() / >> memset() (as gcc7 does). We can't, however, set this

Re: [Xen-devel] [PATCH] x86emul: keep compiler from using {x, y, z}mm registers itself

2017-10-16 Thread Andrew Cooper
On 16/10/17 13:32, Jan Beulich wrote: > Since the emulator acts on the live hardware registers, we need to > prevent the compiler from using them e.g. for inlined memcpy() / > memset() (as gcc7 does). We can't, however, set this from the command > line, as otherwise the 64-bit build would face

[Xen-devel] [PATCH] x86emul: keep compiler from using {x, y, z}mm registers itself

2017-10-16 Thread Jan Beulich
Since the emulator acts on the live hardware registers, we need to prevent the compiler from using them e.g. for inlined memcpy() / memset() (as gcc7 does). We can't, however, set this from the command line, as otherwise the 64-bit build would face issues with functions returning floating point