aboutsummaryrefslogtreecommitdiff
path: root/libgloss
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2009-04-03 22:32:28 +0000
committerJeff Johnston <jjohnstn@redhat.com>2009-04-03 22:32:28 +0000
commitc07101aba1d5b34c7de08938661c1a11b465956e (patch)
tree11b1e38f80a19b372164c02827f0f27ef5b1f48f /libgloss
parentf42552e9e1bab9f41804a051211a1b534c58d08a (diff)
downloadnewlib-c07101aba1d5b34c7de08938661c1a11b465956e.zip
newlib-c07101aba1d5b34c7de08938661c1a11b465956e.tar.gz
newlib-c07101aba1d5b34c7de08938661c1a11b465956e.tar.bz2
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
* spu/Makefile.in: Add linux_getpid.o and linux_gettid.o. * spu/linux_getpid.c: New file. * spu/linux_getpid.c: New file.
Diffstat (limited to 'libgloss')
-rw-r--r--libgloss/ChangeLog6
-rw-r--r--libgloss/spu/Makefile.in2
-rw-r--r--libgloss/spu/linux_getpid.c50
-rw-r--r--libgloss/spu/linux_gettid.c50
4 files changed, 107 insertions, 1 deletions
diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog
index 48b5c3b..2decc6f 100644
--- a/libgloss/ChangeLog
+++ b/libgloss/ChangeLog
@@ -1,5 +1,11 @@
2009-04-03 Ken Werner <ken.werner@de.ibm.com>
+ * spu/Makefile.in: Add linux_getpid.o and linux_gettid.o.
+ * spu/linux_getpid.c: New file.
+ * spu/linux_getpid.c: New file.
+
+2009-04-03 Ken Werner <ken.werner@de.ibm.com>
+
* spu/crt0.S (_start): Place spu_id in the first agument register.
2009-03-16 Jeff Johnston <jjohnstn@redhat.com>
diff --git a/libgloss/spu/Makefile.in b/libgloss/spu/Makefile.in
index 6710aff..ea0e78e 100644
--- a/libgloss/spu/Makefile.in
+++ b/libgloss/spu/Makefile.in
@@ -63,7 +63,7 @@ OBJS = \
munmap_eaddr.o nanosleep.o open.o pread.o pwrite.o read.o readlink.o \
readv.o rmdir.o sbrk.o sched_yield.o shm_open.o shm_unlink.o stat.o \
symlink.o sync.o syscalls.o truncate.o umask.o unlink.o utime.o utimes.o \
- write.o writev.o
+ write.o writev.o linux_getpid.o linux_gettid.o
# Object files specific to particular targets.
EVALOBJS = ${OBJS}
diff --git a/libgloss/spu/linux_getpid.c b/libgloss/spu/linux_getpid.c
new file mode 100644
index 0000000..9473ea5
--- /dev/null
+++ b/libgloss/spu/linux_getpid.c
@@ -0,0 +1,50 @@
+/*
+(C) Copyright IBM Corp. 2009
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice,
+this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer in the
+documentation and/or other materials provided with the distribution.
+* Neither the name of IBM nor the names of its contributors may be
+used to endorse or promote products derived from this software without
+specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+
+Author: Ken Werner <ken.werner@de.ibm.com>
+*/
+
+#include <sys/linux_syscalls.h>
+#include <sys/types.h>
+
+pid_t
+linux_getpid (void)
+{
+ struct spu_syscall_block s = {
+ __NR_getpid,
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0}
+ };
+ return __linux_syscall (&s);
+}
diff --git a/libgloss/spu/linux_gettid.c b/libgloss/spu/linux_gettid.c
new file mode 100644
index 0000000..789c792
--- /dev/null
+++ b/libgloss/spu/linux_gettid.c
@@ -0,0 +1,50 @@
+/*
+(C) Copyright IBM Corp. 2009
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice,
+this list of conditions and the following disclaimer.
+* Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions and the following disclaimer in the
+documentation and/or other materials provided with the distribution.
+* Neither the name of IBM nor the names of its contributors may be
+used to endorse or promote products derived from this software without
+specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
+
+Author: Ken Werner <ken.werner@de.ibm.com>
+*/
+
+#include "sys/linux_syscalls.h"
+#include <sys/types.h>
+
+pid_t
+linux_gettid (void)
+{
+ struct spu_syscall_block s = {
+ __NR_gettid,
+ {
+ 0,
+ 0,
+ 0,
+ 0,
+ 0,
+ 0}
+ };
+ return __linux_syscall (&s);
+}