[Bug target/47502] New: [x32] can’t find a register in class ‘SIREG’ while reloading ‘asm’
hjl.tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Fri Jan 28 00:23:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47502
Summary: [x32] can’t find a register in class ‘SIREG’ while
reloading ‘asm’
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: hjl.tools@gmail.com
On x32 branch, I got
[hjl@gnu-6 ilp32-19]$ cat x.i
int
foo (const void *set, void *oset)
{
unsigned int resultvar;
asm volatile ("int $0x80\n\t"
: "=a" (resultvar)
: "0" (14), "c" ((set)), "d" ((oset)), "S" (8)
: "memory", "cc");
return resultvar;
}
[hjl@gnu-6 ilp32-19]$ make
/export/build/gnu/gcc-x32/build-x86_64-linux/gcc/xgcc
-B/export/build/gnu/gcc-x32/build-x86_64-linux/gcc/ -S -o x.s -mx32 -O -dp
x.i
x.i: In function ‘foo’:
x.i:5:3: error: can’t find a register in class ‘SIREG’ while reloading ‘asm’
x.i:5:3: error: ‘asm’ operand has impossible constraints
make: *** [x.s] Error 1
[hjl@gnu-6 ilp32-19]$
More information about the Gcc-bugs
mailing list