>>> On 02.05.17 at 20:05, <andrew.coop...@citrix.com> wrote:
> @@ -366,6 +367,16 @@ static always_inline void stac(void)
>          LOAD_ONE_REG(bp, \compat)
>          LOAD_ONE_REG(bx, \compat)
>          subq  $-(UREGS_error_code-UREGS_r15+\adj), %rsp
> +.if \compat
> +        xor %r8d, %r8d
> +        xor %r9d, %r9d
> +        xor %r10d, %r10d
> +        xor %r11d, %r11d
> +        xor %r12d, %r12d
> +        xor %r13d, %r13d
> +        xor %r14d, %r14d
> +        xor %r15d, %r15d
> +.endif
>  .endm

Rather than having yet another .if, I think this would better be the
.else to one of the existing ones. Possibly even two .else-s, one
each for the R8-R11 and R12-R15 register ranges.

Also the d suffixes on the register names are pretty pointless here,
as a REX prefix is going to be needed anyway.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

Reply via email to