extended asm and input parameters
Andrew Haley
aph@redhat.com
Thu Jul 4 10:34:00 GMT 2013
On 07/04/2013 11:07 AM, dw wrote:
> Hey Andrew, thanks for the response.
>
> > main:
> > .LFB1:
> > leaq -32(%rsp), %rdi
> > movl $32, %ecx
> > xorl %eax, %eax
> > #APP
> > # 2 "z.c" 1
> > rep stosb
> > # 0 "" 2
> > # 2 "z.c" 1
> > rep stosb
> > # 0 "" 2
> > #NO_APP
> > xorl %eax, %eax
> > ret
>
> Interesting. So, you are getting the duplicate zeroing of eax, but not
> the duplicate loading of rdi. That's certainly an improvement.
>
> I'm using 4.8.0. You? If this is something that was improved in 4.8.1,
> perhaps it's time for me to upgrade.
Ah, I'm on 4.7. So this might be a regression: we should check.
> Any special compile switches other than -Os?
No.
> > By the way, your asm is wrong: stosb modifies its registers, and you
> > must tell GCC that.
>
> I'll assume this was intended to be humorous.
Absolutely not. This is critical.
Andrew.
More information about the Gcc-help
mailing list