Re: [patch 12/26] Xen-paravirt_ops: Fix patch site clobbers to include return register

Zachary Amsden
2007-03-02T00:45:08Z

Jeremy Fitzhardinge wrote:
> Fix a few clobbers to include the return register. The clobbers set
> is the set of all registers modified (or may be modified) by the code
> snippet, regardless of whether it was deliberate or accidental.
>
> Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
> Cc: Rusty Russell <rusty@rustcorp.com.au>
> Cc: Zachary Amsden <zach@vmware.com>
>
> ---
> include/asm-i386/paravirt.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> ===================================================================
> --- a/include/asm-i386/paravirt.h
> +++ b/include/asm-i386/paravirt.h
> @@ -556,7 +556,7 @@ static inline unsigned long __raw_local_
> "popl %%edx; popl %%ecx")
> : "=a"(f): "m"(paravirt_ops.save_fl),
> paravirt_type(PARAVIRT_PATCH(save_fl)),
> - paravirt_clobber(CLBR_NONE)
> + paravirt_clobber(CLBR_EAX)
> : "memory", "cc");
> return f;
>

Has this been tested on older gcc's? I seem to recall them barfing over
things like this.

Zach