When compiling in thumb mode for arm with -Os gcc gives up since it can not find registers to spill. So we use -O2 option for compiling fork.c It may be addressable in gcc. Signed-off-by: Khem Raj Upstream-Status: Pending diff --git a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch index 329d8a9..41e3646 100644 --- a/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch +++ b/libpthread/nptl/sysdeps/unix/sysv/linux/arm/Makefile.arch @@ -30,3 +30,9 @@ CFLAGS-OMIT-libc-lowlevellock.c = -DNOT_IN_libc -DIS_IN_libpthread # This macro should be alternatively implemented in THUMB # assembly. ASFLAGS-vfork.S = -marm + +# For arm fork.c does not compile with -Os when in compiling +# in thumb1 mode +ifeq ($(COMPILE_IN_THUMB_MODE),y) +CFLAGS-fork.c = -O2 +endif