c/10238: Strange asm stmt produces compiler error

res@colnet.cmhnet.org res@colnet.cmhnet.org
Thu Mar 27 10:46:00 GMT 2003


>Number:         10238
>Category:       c
>Synopsis:       Strange asm stmt produces compiler error
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Mar 27 06:36:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Rob Stampfli
>Release:        gcc 3.2.2
>Organization:
>Environment:
Solaris 8 / Ultra 2 Sparc. Compiler was configured and built precisely as described in:

in http://sunfreeware.com/gcc.html
>Description:
The following silly erroneous piece of code produces a compiler error.  It's inconsequential, but it shouldn't error out:

int lock_io;
void xxx() {
   volatile int _ret; asm volatile ("xchgw %0,%1" : "=q" (_ret), "=m" (*(&lock_io)) : "m" (*(&lock_io)), "0" (0));
}


$ gcc x.c
x.c: In function `xxx':
x.c:4: Internal compiler error in instantiate_virtual_regs_1, at function.c:3971
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http:/www.gnu.org/softwre/gcc/bugs.html> for instructions.
$
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the Gcc-bugs mailing list