This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug ports/18787] New: sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: canât find a register in class âR1_REGSâ while reloading âasmâ
- From: "danglin at gcc dot gnu.org" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Fri, 07 Aug 2015 17:16:07 +0000
- Subject: [Bug ports/18787] New: sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: canât find a register in class âR1_REGSâ while reloading âasmâ
- Auto-submitted: auto-generated
https://sourceware.org/bugzilla/show_bug.cgi?id=18787
Bug ID: 18787
Summary: sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6:
error: canât find a register in class âR1_REGSâ while
reloading âasmâ
Product: glibc
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: ports
Assignee: unassigned at sourceware dot org
Reporter: danglin at gcc dot gnu.org
CC: carlos at redhat dot com, roland at gnu dot org
Target Milestone: ---
Host: hppa-unknown-linux-gnu
Target: hppa-unknown-linux-gnu
Build: hppa-unknown-linux-gnu
hppa-linux-gnu-gcc-4.8 gethstbyad.c -c -std=gnu99 -fgnu89-inline -O2 -Wall
-Wer
ror -Wno-error=undef -Wundef -Wwrite-strings -fmerge-all-constants
-frounding-ma
th -g -Wstrict-prototypes -fPIC -fexceptions -ftls-model=initial-exec
-I
../include -I/home/dave/gnu/glibc/objdir1/inet -I/home/dave/gnu/glibc/objdir1
-I../sysdeps/unix/sysv/linux/hppa -I../sysdeps/hppa/nptl
-I../sysdeps/unix/sys
v/linux/include -I../sysdeps/unix/sysv/linux -I../sysdeps/nptl
-I../sysdeps/pt
hread -I../sysdeps/gnu -I../sysdeps/unix/inet -I../sysdeps/unix/sysv
-I../sysdeps/unix -I../sysdeps/posix -I../sysdeps/hppa/hppa1.1
-I../sysdeps/wordsize
-32 -I../sysdeps/ieee754/flt-32 -I../sysdeps/ieee754/dbl-64
-I../sysdeps/hppa
/fpu -I../sysdeps/hppa -I../sysdeps/ieee754 -I../sysdeps/generic -I..
-I../l
ibio -I. -nostdinc -isystem /usr/lib/gcc/hppa-linux-gnu/4.8/include -isystem
/us
r/lib/gcc/hppa-linux-gnu/4.8/include-fixed -isystem /usr/include
-D_LIBC_REENTR
ANT -include /home/dave/gnu/glibc/objdir1/libc-modules.h -DMODULE_NAME=libc
-inc
lude ../include/libc-symbols.h -DPIC -DSHARED -o
/home/dave/gnu/glibc/objdir1/inet/gethstbyad.os -MD -MP -MF
/home/dave/gnu/glibc/objdir1/inet/gethstbyad.o
s.dt -MT /home/dave/gnu/glibc/objdir1/inet/gethstbyad.os
In file included from ../include/sys/cdefs.h:3:0,
from ../include/features.h:365,
from ../resolv/netdb.h:25,
from ../include/netdb.h:2,
from gethstbyad.c:19:
../nss/getXXbyYY.c: In function âgethostbyaddrâ:
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: canât find a
register in class âR1_REGSâ while reloading âasmâ
asm volatile( \
^
../misc/sys/cdefs.h:385:52: note: in definition of macro â__glibc_unlikelyâ
# define __glibc_unlikely(cond) __builtin_expect ((cond), 0)
^
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:100:12: note: in expansion of
macro âatomic_compare_and_exchange_val_acqâ
ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \
^
../sysdeps/nptl/lowlevellock.h:94:11: note: in expansion of macro
âatomic_compare_and_exchange_bool_acqâ
(atomic_compare_and_exchange_bool_acq (__futex, 1, 0))) \
^
../sysdeps/nptl/lowlevellock.h:103:3: note: in expansion of macro â__lll_lockâ
__lll_lock (&(futex), private)
^
../sysdeps/nptl/bits/libc-lockP.h:176:6: note: in expansion of macro âlll_lockâ
({ lll_lock (NAME, LLL_PRIVATE); 0; })
^
../nss/getXXbyYY.c:97:3: note: in expansion of macro â__libc_lock_lockâ
__libc_lock_lock (lock);
^
In file included from ../include/atomic.h:50:0,
from ../sysdeps/nptl/lowlevellock.h:22,
from ../nptl/descr.h:30,
from ../sysdeps/hppa/nptl/tls.h:57,
from ../include/link.h:45,
from ../include/dlfcn.h:4,
from ../nss/nsswitch.h:28,
from ../include/nsswitch.h:1,
from ../inet/netgroup.h:22,
from ../include/netdb.h:193,
from gethstbyad.c:19:
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: canât find a
register in class âR1_REGSâ while reloading âasmâ
asm volatile( \
^
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:100:12: note: in expansion of
macro âatomic_compare_and_exchange_val_acqâ
ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \
^
../include/atomic.h:189:7: note: in expansion of macro
âatomic_compare_and_exchange_bool_acqâ
(atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \
^
../include/atomic.h:196:45: note: in expansion of macro âatomic_exchange_acqâ
# define atomic_exchange_rel(mem, newvalue) atomic_exchange_acq (mem,
newvalue)
^
../sysdeps/nptl/lowlevellock.h:199:21: note: in expansion of macro
âatomic_exchange_relâ
int __oldval = atomic_exchange_rel (__futex, 0); \
^
../sysdeps/nptl/lowlevellock.h:204:3: note: in expansion of macro
â__lll_unlockâ
__lll_unlock (&(futex), private)
^
../sysdeps/nptl/bits/libc-lockP.h:210:3: note: in expansion of macro
âlll_unlockâ
lll_unlock (NAME, LLL_PRIVATE)
^
../nss/getXXbyYY.c:144:3: note: in expansion of macro â__libc_lock_unlockâ
__libc_lock_unlock (lock);
^
In file included from ../include/sys/cdefs.h:3:0,
from ../include/features.h:365,
from ../resolv/netdb.h:25,
from ../include/netdb.h:2,
from gethstbyad.c:19:
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: âasmâ operand has
impossible constraints
asm volatile( \
^
../misc/sys/cdefs.h:385:52: note: in definition of macro â__glibc_unlikelyâ
# define __glibc_unlikely(cond) __builtin_expect ((cond), 0)
^
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:100:12: note: in expansion of
macro âatomic_compare_and_exchange_val_acqâ
ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \
^
../sysdeps/nptl/lowlevellock.h:94:11: note: in expansion of macro
âatomic_compare_and_exchange_bool_acqâ
(atomic_compare_and_exchange_bool_acq (__futex, 1, 0))) \
^
../sysdeps/nptl/lowlevellock.h:103:3: note: in expansion of macro â__lll_lockâ
__lll_lock (&(futex), private)
^
../sysdeps/nptl/bits/libc-lockP.h:176:6: note: in expansion of macro âlll_lockâ
({ lll_lock (NAME, LLL_PRIVATE); 0; })
^
../nss/getXXbyYY.c:97:3: note: in expansion of macro â__libc_lock_lockâ
__libc_lock_lock (lock);
^
In file included from ../include/atomic.h:50:0,
from ../sysdeps/nptl/lowlevellock.h:22,
from ../nptl/descr.h:30,
from ../sysdeps/hppa/nptl/tls.h:57,
from ../include/link.h:45,
from ../include/dlfcn.h:4,
from ../nss/nsswitch.h:28,
from ../include/nsswitch.h:1,
from ../inet/netgroup.h:22,
from ../include/netdb.h:193,
from gethstbyad.c:19:
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:71:6: error: âasmâ operand has
impossible constraints
asm volatile( \
^
../sysdeps/unix/sysv/linux/hppa/bits/atomic.h:100:12: note: in expansion of
macro âatomic_compare_and_exchange_val_acqâ
ret = atomic_compare_and_exchange_val_acq(mem, newval, oldval); \
^
../include/atomic.h:189:7: note: in expansion of macro
âatomic_compare_and_exchange_bool_acqâ
(atomic_compare_and_exchange_bool_acq (__atg5_memp, __atg5_value, \
^
../include/atomic.h:196:45: note: in expansion of macro âatomic_exchange_acqâ
# define atomic_exchange_rel(mem, newvalue) atomic_exchange_acq (mem,
newvalue)
^
../sysdeps/nptl/lowlevellock.h:199:21: note: in expansion of macro
âatomic_exchange_relâ
int __oldval = atomic_exchange_rel (__futex, 0); \
^
../sysdeps/nptl/lowlevellock.h:204:3: note: in expansion of macro
â__lll_unlockâ
__lll_unlock (&(futex), private)
^
../sysdeps/nptl/bits/libc-lockP.h:210:3: note: in expansion of macro
âlll_unlockâ
lll_unlock (NAME, LLL_PRIVATE)
^
../nss/getXXbyYY.c:144:3: note: in expansion of macro â__libc_lock_unlockâ
__libc_lock_unlock (lock);
^
../o-iterator.mk:9: recipe for target
'/home/dave/gnu/glibc/objdir1/inet/gethstbyad.os' failed
make[2]: *** [/home/dave/gnu/glibc/objdir1/inet/gethstbyad.os] Error 1
make[2]: Leaving directory '/home/dave/gnu/glibc/glibc/inet'
Makefile:213: recipe for target 'inet/subdir_lib' failed
make[1]: *** [inet/subdir_lib] Error 2
make[1]: Leaving directory '/home/dave/gnu/glibc/glibc'
Makefile:9: recipe for target 'all' failed
make: *** [all] Error 2
The asm clobbers register %r1. When generating PIC code, register %r1
is needed to reload an operand from static memory. The operand needs to
be copied first to a register as is done on arm.
--
You are receiving this mail because:
You are on the CC list for the bug.