On Thursday 21 March 2002 01:33 am, David Howells wrote:
> > As "tmp" is not referenced after the assembly, I removed it from
> > the output list and added it to the input list.  This appears to
> > fix it.  Do you see anything wrong with removing tmp from the
> > output list?
>
> Yes. You've told the compiler that the value in tmp hasn't changed
> and so it is free to re-use it.

Okay, I understand.
>
> The way to do it is just to use the "=" constraint and split the "d"
> register value:
>
>       "# ending __up_read\n"
> -     : "+m"(sem->count), "+d"(tmp)
> -     : "a"(sem)
> +     : "+m"(sem->count), "=d"(tmp)
> +     : "a"(sem), "1"(tmp)
>
>       : "memory", "cc");

This doesn't help.  It still fails the same way compiling jfs_imap.c.

>
> However, if I remember rightly, this has some other adverse side
> effects on the compiler:-( But it is the only other way to do it.

I'll keep trying.

>
> David
_______________________________________________
Jfs-discussion mailing list
[EMAIL PROTECTED]
http://www-124.ibm.com/developerworks/oss/mailman/listinfo/jfs-discussion

Reply via email to