>>> 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