I tested that in your branch. Works. 
Also looked at generated code, which now has proper reload. 





> On Dec 9, 2015, at 20:54, barret rhoden <[email protected]> wrote:
> 
>> On 2015-12-09 at 20:04 'Davide Libenzi' via Akaros wrote:
>> Adding RSI, RDI, ECX as clobbers does not work. But marking them RW
>> does.
> 
> yep!  that's what i was aiming for.  =)  will try it out tomorrow.
> 
> barret
> 
> 
>> 
>> 
>> https://github.com/brho/akaros/compare/master...dlibenzi:gcc_fuggetaboud_ecx_v2
>> 
>> The following changes since commit
>> 2fa42319139e4cc5ca853546363f84443d0ead00:
>> 
>>  Rename 'reallocarray' to 'kreallocarray'. (2015-11-25 18:02:04
>> -0500)
>> 
>> are available in the git repository at:
>> 
>>  [email protected]:dlibenzi/akaros gcc_fuggetaboud_ecx_v2
>> 
>> for you to fetch changes up to
>> 3d4a4ec56106e29a31265eed30db6d77cf0bfc53:
>> 
>>  Flags RSI, RDI, ECX as RW operands so that GCC does not assume const
>> (2015-12-09 19:55:47 -0800)
>> 
>> ----------------------------------------------------------------
>> Davide Libenzi (1):
>>      Flags RSI, RDI, ECX as RW operands so that GCC does not assume
>> const
>> 
>> kern/arch/x86/uaccess.h | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>> 
>> diff --git a/kern/arch/x86/uaccess.h b/kern/arch/x86/uaccess.h
>> index cba0ef5..f8edaf4 100644
>> --- a/kern/arch/x86/uaccess.h
>> +++ b/kern/arch/x86/uaccess.h
>> @@ -101,8 +101,8 @@ struct extable_ip_fixup {
>>  " jmp 2b\n" \
>>  ".previous\n" \
>>  _ASM_EXTABLE(1b, 3b) \
>> - : "=r"(err) \
>> - : "D" (dst), "S" (src), "c" (count), "i" (errret), "0" (err) \
>> + : "=r"(err), "+D" (dst), "+S" (src), "+c" (count) \
>> + : "i" (errret), "0" (err) \
>>  : "memory")
>> 
>> static inline int __put_user(void *dst, const void *src, unsigned int
>> count)
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Akaros" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to