Browse Source

Experimentally move libc_hidden_proto(time) to time.h.
The only code change observed is actually a case
where we were not doing that as needed:

00000000 <__GI_tzset>:
-53 push %ebx
-e8 00 00 00 00 call 6 <__GI_tzset+0x6>
-5b pop %ebx
-81 c3 03 00 00 00 add $0x3,%ebx
- R_386_GOTPC _GLOBAL_OFFSET_TABLE_
6a 00 push $0x0
-e8 fc ff ff ff call 10 <__GI_tzset+0x10>
- R_386_PLT32 time
+e8 fc ff ff ff call 3 <__GI_tzset+0x3>
+ R_386_PC32 __GI_time
3d ff 4e 98 45 cmp $0x45984eff,%eax
0f 9e c0 setle %al
0f b6 c0 movzbl %al,%eax
50 push %eax
-e8 fc ff ff ff call 21 <__GI_tzset+0x21>
+e8 fc ff ff ff call 14 <__GI_tzset+0x14>
R_386_PC32 _time_tzset
58 pop %eax
5a pop %edx
-5b pop %ebx
c3 ret

No mass migration of libc_hidden_proto(foo) planned.
Lets wait for potential fallout first.

Denis Vlasenko 16 years ago
parent
commit
86de93b89e
5 changed files with 13 additions and 3 deletions
  1. 3 0
      Rules.mak
  2. 7 0
      include/time.h
  3. 1 1
      libc/inet/ifaddrs.c
  4. 1 1
      libc/misc/syslog/syslog.c
  5. 1 1
      libc/sysdeps/linux/common/time.c

+ 3 - 0
Rules.mak

@@ -427,6 +427,9 @@ ifeq ($(TARGET_ARCH),arm)
 endif
 endif
 
+# Please let us see private headers' parts
+CFLAGS += -DUCLIBC_INTERNAL
+
 # We need this to be checked within libc-symbols.h
 ifneq ($(HAVE_SHARED),y)
 CFLAGS += -DSTATIC

+ 7 - 0
include/time.h

@@ -430,6 +430,13 @@ extern int getdate_r (__const char *__restrict __string,
 
 __END_DECLS
 
+
+#ifdef UCLIBC_INTERNAL
+/* Experiment. Grep for 'libc_hidden_proto(time)' if need to revert */
+libc_hidden_proto(time)
+#endif
+
+
 #endif /* <time.h> included.  */
 
 #endif /* <time.h> not already included.  */

+ 1 - 1
libc/inet/ifaddrs.c

@@ -41,7 +41,7 @@
 
 libc_hidden_proto(socket)
 libc_hidden_proto(close)
-libc_hidden_proto(time)
+/* Experimentally off - libc_hidden_proto(time) */
 libc_hidden_proto(sendto)
 libc_hidden_proto(recvmsg)
 libc_hidden_proto(bind)

+ 1 - 1
libc/misc/syslog/syslog.c

@@ -102,7 +102,7 @@ libc_hidden_proto(sigemptyset)
 libc_hidden_proto(connect)
 libc_hidden_proto(sprintf)
 libc_hidden_proto(vsnprintf)
-libc_hidden_proto(time)
+/* Experimentally off - libc_hidden_proto(time) */
 
 #include <bits/uClibc_mutex.h>
 __UCLIBC_MUTEX_STATIC(mylock, PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP);

+ 1 - 1
libc/sysdeps/linux/common/time.c

@@ -11,7 +11,7 @@
 #include <time.h>
 #include <sys/time.h>
 
-libc_hidden_proto(time)
+/* Experimentally off - libc_hidden_proto(time) */
 
 #ifdef __NR_time
 _syscall1(time_t, time, time_t *, t);