This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/36722] ICE with inline asm in 64bit mode because of type size
- From: "ubizjak at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 23 Aug 2008 07:21:56 -0000
- Subject: [Bug target/36722] ICE with inline asm in 64bit mode because of type size
- References: <bug-36722-1407@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #3 from ubizjak at gmail dot com 2008-08-23 07:21 -------
(In reply to comment #2)
> looks like a PR37191
No.
Register constraints in the testcase are just not what they look like.
"=rax" in fact specifies multiple constraints, and that includes:
"r" for general integer reg
"a" for rax
"x" for SSE reg
Similar for "=rcx", but with rcx instead of rax.
So the correct asm would look like this:
void x(void)
{
unsigned long a, b;
asm volatile ("" : "=a" (a), "=c" (b) : "0" ((unsigned long) 0x0));
}
--
ubizjak at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |INVALID
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36722