From fbadebae4e5d8a05ebfb96f037ec7a6d7b146be0 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Wed, 21 Feb 2007 19:30:44 +0000 Subject: [PATCH] 2007-02-21 Patrick Mansfield * libgloss/spu/gettimeofday.c: New file which adds SPU gettimeofday. * libgloss/spu/jsre.h: Remove time, add gettimeofday. * libgloss/spu/Makefile.in: Ditto. --- libgloss/ChangeLog | 6 ++++++ libgloss/spu/Makefile.in | 2 +- libgloss/spu/{time.c => gettimeofday.c} | 19 ++++++++++--------- libgloss/spu/jsre.h | 8 +++++--- 4 files changed, 22 insertions(+), 13 deletions(-) rename libgloss/spu/{time.c => gettimeofday.c} (82%) diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 9ae2701ca..9ae860df7 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,3 +1,9 @@ +2007-02-21 Patrick Mansfield + + * libgloss/spu/gettimeofday.c: New file which adds SPU gettimeofday. + * libgloss/spu/jsre.h: Remove time, add gettimeofday. + * libgloss/spu/Makefile.in: Ditto. + 2007-02-21 Hans-Peter Nilsson * cris/crt0.S: Use jump, not ba, to skip the interrupt table. Use diff --git a/libgloss/spu/Makefile.in b/libgloss/spu/Makefile.in index a68d8b7ba..ae8eb4360 100644 --- a/libgloss/spu/Makefile.in +++ b/libgloss/spu/Makefile.in @@ -56,7 +56,7 @@ OBJCOPY = `t='$(program_transform_name)'; echo objcopy | sed -e $$t` # object files needed OBJS = syscalls.o exit.o sbrk.o close.o fstat.o getpid.o isatty.o \ kill.o lseek.o open.o read.o unlink.o write.o stat.o \ - ftruncate.o dup.o access.o time.o + ftruncate.o dup.o access.o gettimeofday.o # Object files specific to particular targets. EVALOBJS = ${OBJS} diff --git a/libgloss/spu/time.c b/libgloss/spu/gettimeofday.c similarity index 82% rename from libgloss/spu/time.c rename to libgloss/spu/gettimeofday.c index ab5363bbd..78f26a25c 100644 --- a/libgloss/spu/time.c +++ b/libgloss/spu/gettimeofday.c @@ -1,5 +1,5 @@ /* -(C) Copyright IBM Corp. 2005, 2006 +(C) Copyright IBM Corp. 2007 All rights reserved. @@ -31,19 +31,20 @@ POSSIBILITY OF SUCH DAMAGE. #include #include +#include #include "jsre.h" -time_t -time (time_t *t) +int +gettimeofday (struct timeval *tv, struct timezone *tz) { - syscall_time_t sys; - syscall_out_t *psys_out = ( syscall_out_t* )&sys; + syscall_gettimeofday_t sys; + syscall_out_t *psys_out = ( syscall_out_t* )&sys; - sys.time = (unsigned int)t; + sys.tv = (unsigned int)tv; + sys.tz = (unsigned int)tz; - _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_TIME, &sys); + _send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_GETTIMEOFDAY, &sys); errno = psys_out->err; - return ( psys_out->rc); + return (psys_out->rc); } - diff --git a/libgloss/spu/jsre.h b/libgloss/spu/jsre.h index 4b95618ac..f2dda3d13 100644 --- a/libgloss/spu/jsre.h +++ b/libgloss/spu/jsre.h @@ -56,6 +56,7 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com) #define JSRE_CLOSE 2 #define JSRE_FSTAT 4 +#define JSRE_GETTIMEOFDAY 7 #define JSRE_LSEEK 9 #define JSRE_OPEN 15 #define JSRE_READ 16 @@ -65,7 +66,6 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com) #define JSRE_FTRUNCATE 28 #define JSRE_ACCESS 29 #define JSRE_DUP 30 -#define JSRE_TIME 31 typedef struct { @@ -137,9 +137,11 @@ typedef struct typedef struct { - unsigned int time; + unsigned int tv; unsigned int pad0[ 3 ]; -} syscall_time_t; + unsigned int tz; + unsigned int pad1[ 3 ]; +} syscall_gettimeofday_t; typedef struct { -- 2.43.5