[uclibc-ng-devel] uClibc-ng - small C library for embedded systems branch master updated. v1.0.17-9-g8ae2b54

wbx wbx at helium.openadk.org
Sat Sep 10 13:56:37 CEST 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "uClibc-ng - small C library for embedded systems".

The branch, master has been updated
       via  8ae2b54ee70891ddb720bf00f8913c3716c1f67f (commit)
       via  f9d8ce5ae0ed1e1a639ddc9b2b64726eab569c66 (commit)
      from  939014ddce98bd07c774815a7f0cf379c8bde38d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 8ae2b54ee70891ddb720bf00f8913c3716c1f67f
Author: Waldemar Brodkorb <wbx at uclibc-ng.org>
Date:   Sat Aug 27 17:45:19 2016 +0200

    remove DOMULTI support
    
    A single test with targeting ARM showed that this feature
    seems bit rotted. Remove DOMULTI and simplify Makefiles.

commit f9d8ce5ae0ed1e1a639ddc9b2b64726eab569c66
Author: Eugeniy Paltsev <Eugeniy.Paltsev at synopsys.com>
Date:   Tue Aug 23 12:41:18 2016 +0300

    ARC: Fix max ULP for cosine test
    
    Max ULP for "cos (M_PI_6l * 2.0) == 0.5" in "test-double" sub-test
    is set to "0" for ARC. It causes "test-double" test failure.
    
    I realized that this sub-test on ARM gets completely same results.
    But it doesn't fails on ARM because max ULP is set to "1" for ARM.
    
    I am wondering, if it was done for any special reason?
    
    Otherwise, set max ULP for "cos (M_PI_6l * 2.0) == 0.5" test to
    "1" instead of "0" for ARC.
    
    Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev at synopsys.com>

-----------------------------------------------------------------------

Summary of changes:
 Makerules                               | 12 ------------
 Rules.mak                               | 16 ----------------
 extra/Configs/Config.in                 | 12 ------------
 extra/Configs/defconfigs/or1k/defconfig |  1 -
 extra/scripts/randconfig.sh             |  1 -
 libc/Makefile.in                        | 14 --------------
 libc/sysdeps/linux/i386/bits/syscalls.h | 12 ------------
 libcrypt/Makefile.in                    |  7 -------
 libintl/Makefile.in                     | 11 -----------
 libm/Makefile.in                        | 15 ---------------
 libuargp/Makefile.in                    |  5 -----
 libubacktrace/Makefile.in               |  7 -------
 libutil/Makefile.in                     |  7 -------
 test/math/libm-test-ulps-arc            |  1 +
 14 files changed, 1 insertion(+), 120 deletions(-)

diff --git a/Makerules b/Makerules
index d8cbfe4..d35e40d 100644
--- a/Makerules
+++ b/Makerules
@@ -365,18 +365,6 @@ define link-flat.so
 		$(top_builddir)/lib/crtn.o
 endef
 
-define linkm.so
-	$(Q)$(RM) $@ $@.$(2) $(dir $@)$(1)
-	$(do_strip)
-	@$(disp_ld)
-	$(Q)$(CC) $(LDFLAGS-$(notdir $@)) -Wl,-soname=$(notdir $@).$(2) \
-		$(CFLAG_-nostdlib) -o $(dir $@)$(1) $(START_FILE-$(notdir $@)) \
-		$^ \
-		$(LIBS-$(notdir $@)) $(LIBGCC) $(END_FILE-$(notdir $@))
-	$(Q)$(LN) -sf $(1) $@.$(2)
-	$(Q)$(LN) -sf $(1) $@
-endef
-
 CFLAGS-.os+=$(PICFLAG)
 CFLAGS-.oS+=$(PICFLAG) -DSHARED
 
diff --git a/Rules.mak b/Rules.mak
index cd343f5..f226dca 100644
--- a/Rules.mak
+++ b/Rules.mak
@@ -677,22 +677,6 @@ else
 STRIPTOOL := true -Stripping_disabled
 endif
 
-ifeq ($(DOMULTI),y)
-# we try to compile all sources at once into an object (IMA), but
-# gcc-3.3.x does not support it
-# gcc-3.4.x supports it, but does not need and support --combine. though fails on many sources
-# gcc-4.0.x supports it, supports the --combine flag, but does not need it
-# gcc-4.1(200506xx) supports it, but needs the --combine flag, else libs are useless
-ifeq ($(GCC_MAJOR_VER),3)
-DOMULTI:=n
-else
-$(eval $(call check-gcc-var,--combine))
-CFLAGS += $(CFLAG_--combine)
-endif
-else
-DOMULTI:=n
-endif
-
 ifneq ($(strip $(UCLIBC_EXTRA_CFLAGS)),"")
 CFLAGS += $(call qstrip,$(UCLIBC_EXTRA_CFLAGS))
 endif
diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
index 1d97e78..12dc0df 100644
--- a/extra/Configs/Config.in
+++ b/extra/Configs/Config.in
@@ -2416,16 +2416,4 @@ config EXTRA_WARNINGS
 	help
 	  If you wish to build with extra warnings enabled, say Y here.
 
-config DOMULTI
-	bool "Compile all sources at once into an object"
-	help
-	  Set this to compile all sources at once into an object (IMA).
-	  This mode of compilation uses alot of memory but may produce
-	  smaller binaries.
-
-	  Note that you need a very recent GCC for this to work, like
-	  gcc >= 4.3 plus eventually some patches.
-
-	  If unsure, keep the default of N.
-
 endmenu
diff --git a/extra/Configs/defconfigs/or1k/defconfig b/extra/Configs/defconfigs/or1k/defconfig
index a4658da..b1f890a 100644
--- a/extra/Configs/defconfigs/or1k/defconfig
+++ b/extra/Configs/defconfigs/or1k/defconfig
@@ -237,4 +237,3 @@ UCLIBC_EXTRA_CFLAGS=""
 # UCLIBC_HAS_BACKTRACE is not set
 WARNINGS="-Wall"
 # EXTRA_WARNINGS is not set
-# DOMULTI is not set
diff --git a/extra/scripts/randconfig.sh b/extra/scripts/randconfig.sh
index d83731b..e2124c7 100755
--- a/extra/scripts/randconfig.sh
+++ b/extra/scripts/randconfig.sh
@@ -10,7 +10,6 @@ test "x$AWK" = "x" && AWK=awk
 test "x$ARCH" = "x" && ARCH=`uname -m`
 KCONFIG_ALLCONFIG=.config.allconfig
 (echo TARGET_$ARCH=y
- echo '# DOMULTI is not set'
 ) > $KCONFIG_ALLCONFIG
 export KCONFIG_ALLCONFIG
 
diff --git a/libc/Makefile.in b/libc/Makefile.in
index 8ed8a75..05cec18 100644
--- a/libc/Makefile.in
+++ b/libc/Makefile.in
@@ -42,14 +42,7 @@ else
 libc-a-y = $(libc-y) $(libc-static-y)
 endif
 
-ifeq ($(DOMULTI),n)
 libc-so-y = $(libc-y:.o=.os) $(libc-shared-y)
-else
-all_sources = $(libc-y:.o=.c)
-all_sources += $(libc-shared-y:.oS=.c)
-libc-multi-y = $(filter-out $(libc-nomulti-y:.o=.c),$(all_sources))
-endif
-
 lib-a-y += $(top_builddir)lib/libc.a
 lib-gdb-y += $(top_builddir)lib/libc.gdb
 lib-so-y += $(libc.depend)
@@ -57,17 +50,10 @@ objclean-y += CLEAN_libc
 
 OUTPUT_FORMAT = $(CC) $(CFLAGS) -Wl,--verbose 2>&1 | $(SED) -n '/OUTPUT_FORMAT/,/)/p'
 
-ifeq ($(DOMULTI),n)
 $(libc.depend): $(libc_OUT)/libc_so.a $(LIBS-libc.so)
 	$(call link.so,$(libc_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libc_FULL_NAME),0)
-else
-$(libc.depend): $(libc_OUT)/libc.oS $(libc-nomulti-y:.o=.oS) | $(LIBS-libc.so)
-	$(call linkm.so,$(libc_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libc_FULL_NAME),0)
-endif
 	$(Q)$(RM) $@
 	$(Q)cat $(top_srcdir)extra/scripts/format.lds > $@.tmp
 	$(Q)$(OUTPUT_FORMAT) >> $@.tmp
diff --git a/libc/sysdeps/linux/i386/bits/syscalls.h b/libc/sysdeps/linux/i386/bits/syscalls.h
index 566b5ac..5e92093 100644
--- a/libc/sysdeps/linux/i386/bits/syscalls.h
+++ b/libc/sysdeps/linux/i386/bits/syscalls.h
@@ -44,17 +44,9 @@
 
 /* We need some help from the assembler to generate optimal code.
  * We define some macros here which later will be used.  */
-/* gcc>=4.6 with LTO need the same guards as IMA (a.k.a --combine) did.
- * See gcc.gnu.org/PR47577  */
 /* FIXME: drop these b* macros! */
 
 __asm__ (
-#if defined __DOMULTI__ || __GNUC_PREREQ (4, 6)
-	/* Protect against asm macro redefinition (happens in __DOMULTI__ mode).
-	 * Unfortunately, it ends up visible in .o files. */
-	".ifndef _BITS_SYSCALLS_ASM\n\t"
-	".set _BITS_SYSCALLS_ASM,1\n\t"
-#endif
 	".L__X'%ebx = 1\n\t"
 	".L__X'%ecx = 2\n\t"
 	".L__X'%edx = 2\n\t"
@@ -95,10 +87,6 @@ __asm__ (
 	".endif\n\t"
 	".endif\n\t"
 	".endm\n\t"
-
-#if defined __DOMULTI__ || __GNUC_PREREQ (4, 6)
-	".endif\n\t" /* _BITS_SYSCALLS_ASM */
-#endif
 );
 
 #define LOADARGS_0
diff --git a/libcrypt/Makefile.in b/libcrypt/Makefile.in
index 94feacb..eb2d452 100644
--- a/libcrypt/Makefile.in
+++ b/libcrypt/Makefile.in
@@ -39,7 +39,6 @@ lib-a-$(UCLIBC_HAS_CRYPT)  += $(top_builddir)lib/libcrypt.a
 lib-so-$(UCLIBC_HAS_CRYPT) += $(top_builddir)lib/libcrypt.so
 objclean-y += CLEAN_libcrypt
 
-ifeq ($(DOMULTI),n)
 ifeq ($(DOPIC),y)
 $(top_builddir)lib/libcrypt.so: $(top_builddir)lib/libcrypt.a $(libc.depend)
 else
@@ -48,12 +47,6 @@ endif
 	$(call link.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libcrypt_FULL_NAME),0)
-else
-$(top_builddir)lib/libcrypt.so: $(libcrypt_OUT)/libcrypt.oS | $(libc.depend)
-	$(call linkm.so,$(libcrypt_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libcrypt_FULL_NAME),0)
-endif
 
 $(libcrypt_OUT)/libcrypt_so.a: $(libcrypt-so-y)
 	$(Q)$(RM) $@
diff --git a/libintl/Makefile.in b/libintl/Makefile.in
index 39b39a5..6c3e79b 100644
--- a/libintl/Makefile.in
+++ b/libintl/Makefile.in
@@ -26,10 +26,6 @@ libintl_OUT := $(top_builddir)libintl
 libintl_MSRC := $(libintl_DIR)/intl.c
 libintl_MOBJ := $(patsubst %.o,$(libintl_OUT)/%.o,$(MOBJ))
 
-ifneq ($(DOMULTI),n)
-CFLAGS-libintl += $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libintl_MOBJ))))
-endif
-
 ifeq ($(DOPIC),y)
 libintl-a-y := $(libintl_MOBJ:.o=.os)
 else
@@ -41,7 +37,6 @@ lib-a-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.a
 lib-so-$(UCLIBC_HAS_GETTEXT_AWARENESS) += $(top_builddir)lib/libintl.so
 objclean-y += CLEAN_libintl
 
-ifeq ($(DOMULTI),n)
 ifeq ($(DOPIC),y)
 $(top_builddir)lib/libintl.so: $(top_builddir)lib/libintl.a $(libc.depend)
 else
@@ -50,12 +45,6 @@ endif
 	$(call link.so,$(libintl_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libintl_FULL_NAME),0)
-else
-$(top_builddir)lib/libintl.so: $(libintl_OUT)/libintl.oS | $(libc.depend)
-	$(call linkm.so,$(libintl_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libintl_FULL_NAME),0)
-endif
 
 $(libintl_OUT)/libintl_so.a: $(libintl-so-y)
 	$(Q)$(RM) $@
diff --git a/libm/Makefile.in b/libm/Makefile.in
index 2880512..0d6ca05 100644
--- a/libm/Makefile.in
+++ b/libm/Makefile.in
@@ -277,14 +277,6 @@ endif
 libm_MSRC_FL := $(libm_DIR)/$(FL_MSRC)
 libm_MOBJ_FL := $(patsubst %.o,$(libm_OUT)/%.o,$(FL_MOBJ))
 
-
-ifneq ($(DOMULTI),n)
-CFLAGS-libm += $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libm_MOBJ_FL))))
-ifeq ($(strip $(UCLIBC_HAS_LONG_DOUBLE_MATH)),y)
-CFLAGS-libm += $(patsubst %,-DL_%,$(subst .o,,$(notdir $(libm_MOBJ_LD))))
-endif
-endif
-
 libm_OBJS := $(libm_OBJ) $(libm_MOBJ_FL) $(libm_MOBJ_LD)
 
 ifeq ($(DOPIC),y)
@@ -298,7 +290,6 @@ lib-a-$(UCLIBC_HAS_FLOATS) += $(top_builddir)lib/libm.a
 lib-so-$(UCLIBC_HAS_FLOATS) += $(top_builddir)lib/libm.so
 objclean-y += CLEAN_libm
 
-ifeq ($(DOMULTI),n)
 ifeq ($(DOPIC),y)
 $(top_builddir)lib/libm.so: $(top_builddir)lib/libm.a $(libc.depend)
 else
@@ -307,12 +298,6 @@ endif
 	$(call link.so,$(libm_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libm_FULL_NAME),0)
-else
-$(top_builddir)lib/libm.so: $(libm_OUT)/libm.oS | $(libc.depend)
-	$(call linkm.so,$(libm_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libm_FULL_NAME),0)
-endif
 
 $(libm_OUT)/libm_so.a: $(libm-so-y)
 	$(Q)$(RM) $@
diff --git a/libuargp/Makefile.in b/libuargp/Makefile.in
index 1498abb..f1ccfa6 100644
--- a/libuargp/Makefile.in
+++ b/libuargp/Makefile.in
@@ -44,17 +44,12 @@ lib-so-$(UCLIBC_HAS_ARGP) += $(top_builddir)lib/libuargp.so
 
 objclean-y += CLEAN_libuargp
 
-ifeq ($(DOMULTI),n)
 ifeq ($(DOPIC),y)
 $(top_builddir)lib/libuargp.so: $(top_builddir)lib/libuargp.a $(libc.depend)
 else
 $(top_builddir)lib/libuargp.so: $(libuargp_OUT)/libuargp_so.a $(libc.depend)
 endif
 	$(call link.so,$(libuargp_FULL_NAME),$(MAJOR_VERSION))
-else
-$(top_builddir)lib/libuargp.so: $(libuargp_OUT)/libuargp.oS $(libc.depend)
-	$(call linkm.so,$(libuargp_FULL_NAME),$(MAJOR_VERSION))
-endif
 
 $(libuargp_OUT)/libuargp_so.a: $(libuargp-so-y)
 	$(Q)$(RM) $@
diff --git a/libubacktrace/Makefile.in b/libubacktrace/Makefile.in
index 587eaf6..fdd73fa 100644
--- a/libubacktrace/Makefile.in
+++ b/libubacktrace/Makefile.in
@@ -59,17 +59,10 @@ lib-so-$(UCLIBC_HAS_BACKTRACE) += $(top_builddir)lib/libubacktrace.so
 
 objclean-y += CLEAN_libubacktrace
 
-ifeq ($(DOMULTI),n)
 $(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace_so.a $(libdl.depend)
 	$(call link.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libubacktrace_FULL_NAME),0)
-else
-$(top_builddir)lib/libubacktrace.so: $(libubacktrace_OUT)/libubacktrace.oS | $(libdl.depend)
-	$(call linkm.so,$(libubacktrace_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libubacktrace_FULL_NAME),0)
-endif
 
 $(libubacktrace_OUT)/libubacktrace_so.a: $(libubacktrace-so-y)
 	$(Q)$(RM) $@
diff --git a/libutil/Makefile.in b/libutil/Makefile.in
index 7759482..d36995f 100644
--- a/libutil/Makefile.in
+++ b/libutil/Makefile.in
@@ -48,7 +48,6 @@ lib-a-$(UCLIBC_HAS_LIBUTIL) += $(top_builddir)lib/libutil.a
 lib-so-$(UCLIBC_HAS_LIBUTIL) += $(top_builddir)lib/libutil.so
 objclean-y += CLEAN_libutil
 
-ifeq ($(DOMULTI),n)
 ifeq ($(DOPIC),y)
 $(top_builddir)lib/libutil.so: $(top_builddir)lib/libutil.a $(libc.depend)
 else
@@ -57,12 +56,6 @@ endif
 	$(call link.so,$(libutil_FULL_NAME),$(ABI_VERSION))
 	# link for backward compatibility
 	$(call link.so,$(libutil_FULL_NAME),0)
-else
-$(top_builddir)lib/libutil.so: $(libutil_OUT)/libutil.oS | $(libc.depend)
-	$(call linkm.so,$(libutil_FULL_NAME),$(ABI_VERSION))
-	# link for backward compatibility
-	$(call linkm.so,$(libutil_FULL_NAME),0)
-endif
 
 $(libutil_OUT)/libutil_so.a: $(libutil-so-y)
 	$(Q)$(RM) $@
diff --git a/test/math/libm-test-ulps-arc b/test/math/libm-test-ulps-arc
index 7139447..46b2ac5 100644
--- a/test/math/libm-test-ulps-arc
+++ b/test/math/libm-test-ulps-arc
@@ -2,6 +2,7 @@
 
 # cos
 Test "cos (M_PI_6l * 2.0) == 0.5":
+double: 1
 idouble: 1
 Test "cos (M_PI_6l * 4.0) == -0.5":
 double: 2


hooks/post-receive
-- 
uClibc-ng - small C library for embedded systems


More information about the devel mailing list