This is the mail archive of the
mailing list for the GCC project.
Re: asm, 'r' constraint, floating point registers?
- To: Zack Weinberg <zack at codesourcery dot com>
- Subject: Re: asm, 'r' constraint, floating point registers?
- From: David Edelsohn <dje at watson dot ibm dot com>
- Date: Thu, 11 Oct 2001 12:47:19 -0400
- cc: gcc at gcc dot gnu dot org
>>>>> Zack Weinberg writes:
Zack> int n;
Zack> asm ("frob %0" : "+r" (n));
Zack> one would generally expect n not to be put into a floating point
Zack> register. The user insists this is what happens. Is this
Zack> (a) a bug in his port, (b) a bug in the machine-independent code, or
Zack> (c) expected behavior which must be avoided somehow? I must confess I
Zack> don't know where to begin looking.
I thought that "+" was not allowed in inlined assembly. It is
correct for a machine description, but not user inlined assembly. Or has
that restriction been lifted?