diff options
| author | Rob Landley <rob@landley.net> | 2006-05-07 20:20:34 +0000 |
|---|---|---|
| committer | Rob Landley <rob@landley.net> | 2006-05-07 20:20:34 +0000 |
| commit | a3896511152cd5dcd64d2eb4aebcce65b29c6c0b (patch) | |
| tree | 0058e653d90a3d2a961fca16f7c7afd57cd63715 /libbb | |
| parent | f8a808426745ee5f4e5cc76ff1fb9c484c315195 (diff) | |
| download | busybox-w32-a3896511152cd5dcd64d2eb4aebcce65b29c6c0b.tar.gz busybox-w32-a3896511152cd5dcd64d2eb4aebcce65b29c6c0b.tar.bz2 busybox-w32-a3896511152cd5dcd64d2eb4aebcce65b29c6c0b.zip | |
Remove bb_strlen() in favor of -fno-builtin-strlen. Saves as many bytes
as the old optimization did (actually does slightly better under gcc 4.0), and
simplifies the code.
Diffstat (limited to 'libbb')
| -rw-r--r-- | libbb/Makefile.in | 4 | ||||
| -rw-r--r-- | libbb/correct_password.c | 2 | ||||
| -rw-r--r-- | libbb/xfuncs.c | 9 |
3 files changed, 3 insertions, 12 deletions
diff --git a/libbb/Makefile.in b/libbb/Makefile.in index 102047d73..865b7e726 100644 --- a/libbb/Makefile.in +++ b/libbb/Makefile.in | |||
| @@ -69,7 +69,7 @@ $(LIBBB_MOBJ0):$(LIBBB_MSRC0) | |||
| 69 | LIBBB_MSRC1:=$(srcdir)/xfuncs.c | 69 | LIBBB_MSRC1:=$(srcdir)/xfuncs.c |
| 70 | LIBBB_MOBJ1:=xmalloc.o xrealloc.o xcalloc.o xstrdup.o xstrndup.o \ | 70 | LIBBB_MOBJ1:=xmalloc.o xrealloc.o xcalloc.o xstrdup.o xstrndup.o \ |
| 71 | xfopen.o xopen.o xopen3.o xread.o xread_all.o xread_char.o \ | 71 | xfopen.o xopen.o xopen3.o xread.o xread_all.o xread_char.o \ |
| 72 | xferror.o xferror_stdout.o xfflush_stdout.o strlen.o | 72 | xferror.o xferror_stdout.o xfflush_stdout.o |
| 73 | LIBBB_MOBJ1:=$(patsubst %,$(LIBBB_DIR)/%, $(LIBBB_MOBJ1)) | 73 | LIBBB_MOBJ1:=$(patsubst %,$(LIBBB_DIR)/%, $(LIBBB_MOBJ1)) |
| 74 | $(LIBBB_MOBJ1):$(LIBBB_MSRC1) | 74 | $(LIBBB_MOBJ1):$(LIBBB_MSRC1) |
| 75 | $(compile.c) -DL_$(notdir $*) | 75 | $(compile.c) -DL_$(notdir $*) |
| @@ -101,7 +101,7 @@ $(LIBBB_MOBJ5):$(LIBBB_MSRC5) | |||
| 101 | $(compile.c) -DL_$(notdir $*) | 101 | $(compile.c) -DL_$(notdir $*) |
| 102 | 102 | ||
| 103 | LIBBB_MSRC6:=$(srcdir)/llist.c | 103 | LIBBB_MSRC6:=$(srcdir)/llist.c |
| 104 | LIBBB_MOBJ6:=llist_add_to.o llist_add_to_end.o llist_free_one.o llist_free.o | 104 | LIBBB_MOBJ6:=llist_add_to.o llist_add_to_end.o llist_pop.o llist_free.o |
| 105 | LIBBB_MOBJ6:=$(patsubst %,$(LIBBB_DIR)/%, $(LIBBB_MOBJ6)) | 105 | LIBBB_MOBJ6:=$(patsubst %,$(LIBBB_DIR)/%, $(LIBBB_MOBJ6)) |
| 106 | $(LIBBB_MOBJ6):$(LIBBB_MSRC6) | 106 | $(LIBBB_MOBJ6):$(LIBBB_MSRC6) |
| 107 | $(compile.c) -DL_$(notdir $*) | 107 | $(compile.c) -DL_$(notdir $*) |
diff --git a/libbb/correct_password.c b/libbb/correct_password.c index bb9e7d3cc..527b3100b 100644 --- a/libbb/correct_password.c +++ b/libbb/correct_password.c | |||
| @@ -72,6 +72,6 @@ int correct_password ( const struct passwd *pw ) | |||
| 72 | return 0; | 72 | return 0; |
| 73 | } | 73 | } |
| 74 | encrypted = crypt ( unencrypted, correct ); | 74 | encrypted = crypt ( unencrypted, correct ); |
| 75 | memset ( unencrypted, 0, bb_strlen ( unencrypted )); | 75 | memset ( unencrypted, 0, strlen ( unencrypted )); |
| 76 | return ( strcmp ( encrypted, correct ) == 0 ) ? 1 : 0; | 76 | return ( strcmp ( encrypted, correct ) == 0 ) ? 1 : 0; |
| 77 | } | 77 | } |
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c index f1f988f80..9b9081e26 100644 --- a/libbb/xfuncs.c +++ b/libbb/xfuncs.c | |||
| @@ -174,15 +174,6 @@ void bb_xfflush_stdout(void) | |||
| 174 | } | 174 | } |
| 175 | #endif | 175 | #endif |
| 176 | 176 | ||
| 177 | // GCC forces inlining of strlen everywhere, which is generally a byte | ||
| 178 | // larger than calling a function, and it's called a lot so it adds up. | ||
| 179 | #ifdef L_strlen | ||
| 180 | size_t bb_strlen(const char *string) | ||
| 181 | { | ||
| 182 | return(__builtin_strlen(string)); | ||
| 183 | } | ||
| 184 | #endif | ||
| 185 | |||
| 186 | /* END CODE */ | 177 | /* END CODE */ |
| 187 | /* | 178 | /* |
| 188 | Local Variables: | 179 | Local Variables: |
