Skip to contentSkip to conversation

uclibc: enable UCLIBC_HAS_STRING_GENERIC_OPT in all configs

PATCH New Alexey Brodkin 2 participants 3 messages Nov 12, 2014 – Dec 10, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 uclibc: enable UCLIBC_HAS_STRING_GENERIC_OPT in all configs

Description in uClibc for this optoin is:
--->---
bool "Use faster (but larger) generic string functions"
default y
help
Answer Y to use the (tweaked) glibc generic string functions.

In general, they are faster (but 3-5K larger) than the base uClibc string functions which are optimized solely for size.

Many people will answer Y.
--->---

Additional 3-5K of size is not that important if resulting libuClibc.so is of size about 300k.

But benefits in terms of performance could be pretty significant.

For example on ARC in LMbench we see more than 3 times bump in some tests --->---
libc bcopy unaligned
...
8.39 - 6.76 (UCLIBC_HAS_STRING_GENERIC_OPT=no)
8.39 - 23.86 (UCLIBC_HAS_STRING_GENERIC_OPT=yes)
--->---

Also since the option in question is default in uClibc I don't expect if
enabled back (it was silently disabled in http://git.buildroot.net/buildroot/commit/?id=cfbf8abc33d86a0cf5c1bb3e0817a22009b7f301 on introduction of NPTL in uClibc by Khem Raj) it to introduce problems.

Cc Thomas Petazzoni <[email protected]>
Cc Anton Kolesov <[email protected]>
Cc Peter Korsgaard <[email protected]>
Cc Khem Raj <[email protected]>
---
 package/uclibc/uClibc-0.9.31.config   | 2 +-
 package/uclibc/uClibc-0.9.33.config   | 2 +-
 package/uclibc/uClibc-snapshot.config | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
package/uclibc/uClibc-0.9.31.config +1 -1
index 76772e8..83df7d0 100644
@@ -144,7 +144,7 @@ UCLIBC_HAS_LIBNSL_STUB=y
 #
 # String and Stdio Support
 #
-# UCLIBC_HAS_STRING_GENERIC_OPT is not set
+UCLIBC_HAS_STRING_GENERIC_OPT=y
 UCLIBC_HAS_STRING_ARCH_OPT=y
 UCLIBC_HAS_CTYPE_TABLES=y
 UCLIBC_HAS_CTYPE_SIGNED=y
package/uclibc/uClibc-0.9.33.config +1 -1
index 1b07d4a..88dc7fa 100644
@@ -178,7 +178,7 @@ UCLIBC_HAS_LIBNSL_STUB=y
 #
 # String and Stdio Support
 #
-# UCLIBC_HAS_STRING_GENERIC_OPT is not set
+UCLIBC_HAS_STRING_GENERIC_OPT=y
 UCLIBC_HAS_STRING_ARCH_OPT=y
 UCLIBC_HAS_CTYPE_TABLES=y
 UCLIBC_HAS_CTYPE_SIGNED=y
package/uclibc/uClibc-snapshot.config +1 -1
index ffc1535..1f04561 100644
@@ -183,7 +183,7 @@ UCLIBC_HAS_LIBNSL_STUB=y
 #
 # String and Stdio Support
 #
-# UCLIBC_HAS_STRING_GENERIC_OPT is not set
+UCLIBC_HAS_STRING_GENERIC_OPT=y
 UCLIBC_HAS_STRING_ARCH_OPT=y
 UCLIBC_HAS_CTYPE_TABLES=y
 UCLIBC_HAS_CTYPE_SIGNED=y
Signature · 1 line
1.9.3
#1 lore raw

PATCH 1/1 uclibc: enable UCLIBC_HAS_STRING_GENERIC_OPT in all configs

Dear Alexey Brodkin,

Quoted 9 lines · Alexey Brodkin

Also since the option in question is default in uClibc I don't expect if
enabled back (it was silently disabled in http://git.buildroot.net/buildroot/commit/?id=cfbf8abc33d86a0cf5c1bb3e0817a22009b7f301 on introduction of NPTL in uClibc by Khem Raj) it to introduce problems.

Cc Thomas Petazzoni <[email protected]>
Cc Anton Kolesov <[email protected]>
Cc Peter Korsgaard <[email protected]>
Cc Khem Raj <[email protected]>
Quoted 5 lines
---
 package/uclibc/uClibc-0.9.31.config   | 2 +-
 package/uclibc/uClibc-0.9.33.config   | 2 +-
 package/uclibc/uClibc-snapshot.config | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

We discussed this tonight with Peter, and the general opinion is that since the uClibc developers recommend to have this enabled, it is good to have it, so I've just applied your patch. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#2 lore raw

PATCH 1/1 uclibc: enable UCLIBC_HAS_STRING_GENERIC_OPT in all configs

Quoted 5 lines · Thomas Petazzoni

Dear Alexey Brodkin,

We discussed this tonight with Peter, and the general opinion is that since the uClibc developers recommend to have this enabled, it is good to have it, so I've just applied your patch. Thanks!

Good to know.
Hopefully it will be beneficial for Buildroot users.

And thanks for taking care.

-Alexey