debloat src/thread tree but putting lots of junk in one file
authorRich Felker <dalias@aerifal.cx>
Sun, 11 Nov 2012 21:08:38 +0000 (16:08 -0500)
committerRich Felker <dalias@aerifal.cx>
Sun, 11 Nov 2012 21:08:38 +0000 (16:08 -0500)
POSIX includes mostly-useless attribute-get functions for each
attribute-set function, presumably out of some object-oriented
dogmatism. the get functions are not useful with the simple idiomatic
usage of attributes. there are of course possible valid uses of them
(like writing wrappers for pthread init functions that perform special
actions on the presence of certain attributes), but considering how
tiny these functions are anyway, little is lost by putting them all in
one file, and some build-time cost and archive-file-size benefits are
achieved.

16 files changed:
src/thread/pthread_attr_get.c [new file with mode: 0644]
src/thread/pthread_attr_getdetachstate.c [deleted file]
src/thread/pthread_attr_getguardsize.c [deleted file]
src/thread/pthread_attr_getinheritsched.c [deleted file]
src/thread/pthread_attr_getschedparam.c [deleted file]
src/thread/pthread_attr_getschedpolicy.c [deleted file]
src/thread/pthread_attr_getscope.c [deleted file]
src/thread/pthread_attr_getstack.c [deleted file]
src/thread/pthread_attr_getstacksize.c [deleted file]
src/thread/pthread_barrierattr_getpshared.c [deleted file]
src/thread/pthread_condattr_getclock.c [deleted file]
src/thread/pthread_condattr_getpshared.c [deleted file]
src/thread/pthread_mutexattr_getpshared.c [deleted file]
src/thread/pthread_mutexattr_getrobust.c [deleted file]
src/thread/pthread_mutexattr_gettype.c [deleted file]
src/thread/pthread_rwlockattr_getpshared.c [deleted file]

diff --git a/src/thread/pthread_attr_get.c b/src/thread/pthread_attr_get.c
new file mode 100644 (file)
index 0000000..f81103d
--- /dev/null
@@ -0,0 +1,93 @@
+#include "pthread_impl.h"
+
+int pthread_attr_getdetachstate(const pthread_attr_t *a, int *state)
+{
+       *state = a->_a_detach;
+       return 0;
+}
+int pthread_attr_getguardsize(const pthread_attr_t *restrict a, size_t *restrict size)
+{
+       *size = a->_a_guardsize + DEFAULT_GUARD_SIZE;
+       return 0;
+}
+
+int pthread_attr_getinheritsched(const pthread_attr_t *a, int *inherit)
+{
+       *inherit = a->_a_sched;
+       return 0;
+}
+
+int pthread_attr_getschedparam(const pthread_attr_t *restrict a, struct sched_param *restrict param)
+{
+       param->sched_priority = a->_a_prio;
+       return 0;
+}
+
+int pthread_attr_getschedpolicy(const pthread_attr_t *a, int *policy)
+{
+       *policy = a->_a_policy;
+       return 0;
+}
+
+int pthread_attr_getscope(const pthread_attr_t *restrict a, int *restrict scope)
+{
+       *scope = PTHREAD_SCOPE_SYSTEM;
+       return 0;
+}
+
+int pthread_attr_getstack(const pthread_attr_t *restrict a, void **restrict addr, size_t *restrict size)
+{
+       if (!a->_a_stackaddr)
+               return EINVAL;
+       *size = a->_a_stacksize + DEFAULT_STACK_SIZE;
+       *addr = (void *)(a->_a_stackaddr - *size);
+       return 0;
+}
+
+int pthread_attr_getstacksize(const pthread_attr_t *restrict a, size_t *restrict size)
+{
+       *size = a->_a_stacksize + DEFAULT_STACK_SIZE;
+       return 0;
+}
+
+int pthread_barrierattr_getpshared(const pthread_barrierattr_t *restrict a, int *restrict pshared)
+{
+       *pshared = !!*a;
+       return 0;
+}
+
+int pthread_condattr_getclock(const pthread_condattr_t *restrict a, clockid_t *restrict clk)
+{
+       *clk = *a & 0x7fffffff;
+       return 0;
+}
+
+int pthread_condattr_getpshared(const pthread_condattr_t *restrict a, int *restrict pshared)
+{
+       *pshared = *a>>31;
+       return 0;
+}
+
+int pthread_mutexattr_getpshared(const pthread_mutexattr_t *restrict a, int *restrict pshared)
+{
+       *pshared = *a>>31;
+       return 0;
+}
+
+int pthread_mutexattr_getrobust(const pthread_mutexattr_t *restrict a, int *restrict robust)
+{
+       *robust = *a / 4U % 2;
+       return 0;
+}
+
+int pthread_mutexattr_gettype(const pthread_mutexattr_t *restrict a, int *restrict type)
+{
+       *type = *a & 3;
+       return 0;
+}
+
+int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *restrict a, int *restrict pshared)
+{
+       *pshared = *(int *)a;
+       return 0;
+}
diff --git a/src/thread/pthread_attr_getdetachstate.c b/src/thread/pthread_attr_getdetachstate.c
deleted file mode 100644 (file)
index 47c4c02..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getdetachstate(const pthread_attr_t *a, int *state)
-{
-       *state = a->_a_detach;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getguardsize.c b/src/thread/pthread_attr_getguardsize.c
deleted file mode 100644 (file)
index 93ba05d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getguardsize(const pthread_attr_t *restrict a, size_t *restrict size)
-{
-       *size = a->_a_guardsize + DEFAULT_GUARD_SIZE;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getinheritsched.c b/src/thread/pthread_attr_getinheritsched.c
deleted file mode 100644 (file)
index 392a5df..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getinheritsched(const pthread_attr_t *a, int *inherit)
-{
-       *inherit = a->_a_sched;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getschedparam.c b/src/thread/pthread_attr_getschedparam.c
deleted file mode 100644 (file)
index de5fbfe..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getschedparam(const pthread_attr_t *restrict a, struct sched_param *restrict param)
-{
-       param->sched_priority = a->_a_prio;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getschedpolicy.c b/src/thread/pthread_attr_getschedpolicy.c
deleted file mode 100644 (file)
index 09e893a..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getschedpolicy(const pthread_attr_t *a, int *policy)
-{
-       *policy = a->_a_policy;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getscope.c b/src/thread/pthread_attr_getscope.c
deleted file mode 100644 (file)
index b8dfd12..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getscope(const pthread_attr_t *restrict a, int *restrict scope)
-{
-       *scope = PTHREAD_SCOPE_SYSTEM;
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getstack.c b/src/thread/pthread_attr_getstack.c
deleted file mode 100644 (file)
index 70adbb0..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getstack(const pthread_attr_t *restrict a, void **restrict addr, size_t *restrict size)
-{
-       if (!a->_a_stackaddr)
-               return EINVAL;
-       *size = a->_a_stacksize + DEFAULT_STACK_SIZE;
-       *addr = (void *)(a->_a_stackaddr - *size);
-       return 0;
-}
diff --git a/src/thread/pthread_attr_getstacksize.c b/src/thread/pthread_attr_getstacksize.c
deleted file mode 100644 (file)
index f69cc1e..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_attr_getstacksize(const pthread_attr_t *restrict a, size_t *restrict size)
-{
-       *size = a->_a_stacksize + DEFAULT_STACK_SIZE;
-       return 0;
-}
diff --git a/src/thread/pthread_barrierattr_getpshared.c b/src/thread/pthread_barrierattr_getpshared.c
deleted file mode 100644 (file)
index df337c2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_barrierattr_getpshared(const pthread_barrierattr_t *restrict a, int *restrict pshared)
-{
-       *pshared = !!*a;
-       return 0;
-}
diff --git a/src/thread/pthread_condattr_getclock.c b/src/thread/pthread_condattr_getclock.c
deleted file mode 100644 (file)
index d293384..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_condattr_getclock(const pthread_condattr_t *restrict a, clockid_t *restrict clk)
-{
-       *clk = *a & 0x7fffffff;
-       return 0;
-}
diff --git a/src/thread/pthread_condattr_getpshared.c b/src/thread/pthread_condattr_getpshared.c
deleted file mode 100644 (file)
index 4991e49..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_condattr_getpshared(const pthread_condattr_t *restrict a, int *restrict pshared)
-{
-       *pshared = *a>>31;
-       return 0;
-}
diff --git a/src/thread/pthread_mutexattr_getpshared.c b/src/thread/pthread_mutexattr_getpshared.c
deleted file mode 100644 (file)
index e7340b1..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_mutexattr_getpshared(const pthread_mutexattr_t *restrict a, int *restrict pshared)
-{
-       *pshared = *a>>31;
-       return 0;
-}
diff --git a/src/thread/pthread_mutexattr_getrobust.c b/src/thread/pthread_mutexattr_getrobust.c
deleted file mode 100644 (file)
index 4d176f2..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_mutexattr_getrobust(const pthread_mutexattr_t *restrict a, int *restrict robust)
-{
-       *robust = *a / 4U % 2;
-       return 0;
-}
diff --git a/src/thread/pthread_mutexattr_gettype.c b/src/thread/pthread_mutexattr_gettype.c
deleted file mode 100644 (file)
index 7688b06..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_mutexattr_gettype(const pthread_mutexattr_t *restrict a, int *restrict type)
-{
-       *type = *a & 3;
-       return 0;
-}
diff --git a/src/thread/pthread_rwlockattr_getpshared.c b/src/thread/pthread_rwlockattr_getpshared.c
deleted file mode 100644 (file)
index 02fd8c8..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "pthread_impl.h"
-
-int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *restrict a, int *restrict pshared)
-{
-       *pshared = *(int *)a;
-       return 0;
-}