Displaying 8 results from an estimated 8 matches for "native_zero_out".
2017 Nov 17
2
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...and
NATIVE_NOOP_32 ?
> +# define NATIVE_USERGS_SYSRET64 "swapgs; sysretq"
> +#else
> +# define _REG_ARG1 "%eax"
> +#endif
> +
> +#define _REG_RET "%" _ASM_AX
> +
> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
NATIVE_ZERO_OUT
I guess. NATIVE_ZERO reads like the native representation of 0 :-)
...
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
2017 Nov 17
2
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...and
NATIVE_NOOP_32 ?
> +# define NATIVE_USERGS_SYSRET64 "swapgs; sysretq"
> +#else
> +# define _REG_ARG1 "%eax"
> +#endif
> +
> +#define _REG_RET "%" _ASM_AX
> +
> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
NATIVE_ZERO_OUT
I guess. NATIVE_ZERO reads like the native representation of 0 :-)
...
--
Regards/Gruss,
Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
2017 Nov 17
2
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...quot;
> >> +#else
> >> +# define _REG_ARG1 "%eax"
> >> +#endif
> >> +
> >> +#define _REG_RET "%" _ASM_AX
> >> +
> >> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
> >
> > NATIVE_ZERO_OUT
> >
> > I guess. NATIVE_ZERO reads like the native representation of 0 :-)
>
> NATIVE_ZERO_ARG1?
On a slight tangent, does anybody know why it zeros the arg?
The only place it's used is here:
#if defined(CONFIG_PARAVIRT_SPINLOCKS)
DEF_NATIVE(pv_lock_ops, queued_spin_unloc...
2017 Nov 17
2
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...quot;
> >> +#else
> >> +# define _REG_ARG1 "%eax"
> >> +#endif
> >> +
> >> +#define _REG_RET "%" _ASM_AX
> >> +
> >> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
> >
> > NATIVE_ZERO_OUT
> >
> > I guess. NATIVE_ZERO reads like the native representation of 0 :-)
>
> NATIVE_ZERO_ARG1?
On a slight tangent, does anybody know why it zeros the arg?
The only place it's used is here:
#if defined(CONFIG_PARAVIRT_SPINLOCKS)
DEF_NATIVE(pv_lock_ops, queued_spin_unloc...
2017 Nov 17
0
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...ATIVE_USERGS_SYSRET64 "swapgs; sysretq"
>> +#else
>> +# define _REG_ARG1 "%eax"
>> +#endif
>> +
>> +#define _REG_RET "%" _ASM_AX
>> +
>> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
>
> NATIVE_ZERO_OUT
>
> I guess. NATIVE_ZERO reads like the native representation of 0 :-)
NATIVE_ZERO_ARG1?
Juergen
2017 Nov 18
0
[PATCH 03/13] x86/paravirt: Convert native patch assembly code strings to macros
...lse
>>>> +# define _REG_ARG1 "%eax"
>>>> +#endif
>>>> +
>>>> +#define _REG_RET "%" _ASM_AX
>>>> +
>>>> +#define NATIVE_ZERO "xor " _REG_ARG1 ", " _REG_ARG1
>>>
>>> NATIVE_ZERO_OUT
>>>
>>> I guess. NATIVE_ZERO reads like the native representation of 0 :-)
>>
>> NATIVE_ZERO_ARG1?
>
> On a slight tangent, does anybody know why it zeros the arg?
Why are _you_ asking? You've introduced it.
> The only place it's used is here:
>...
2017 Oct 04
31
[PATCH 00/13] x86/paravirt: Make pv ops code generation more closely match reality
This changes the pv ops code generation to more closely match reality.
For example, instead of:
callq *0xffffffff81e3a400 (pv_irq_ops.save_fl)
vmlinux will now show:
pushfq
pop %rax
nop
nop
nop
nop
nop
which is what the runtime version of the code will show in most cases.
This idea was suggested by Andy Lutomirski.
The benefits are:
- For the most common runtime cases
2017 Oct 04
31
[PATCH 00/13] x86/paravirt: Make pv ops code generation more closely match reality
This changes the pv ops code generation to more closely match reality.
For example, instead of:
callq *0xffffffff81e3a400 (pv_irq_ops.save_fl)
vmlinux will now show:
pushfq
pop %rax
nop
nop
nop
nop
nop
which is what the runtime version of the code will show in most cases.
This idea was suggested by Andy Lutomirski.
The benefits are:
- For the most common runtime cases