2007-06-05 Patrick Mansfield <patman@us.ibm.com>

* spu/jsre.h: Remove the assist call structs and defines that are
        specific to one assist call from here.
        * spu/access.c: Move struct syscall_access_t to here.
        * spu/fstat.c: Move struct syscall_fstat_t to here.
        * spu/ftruncate.c: Move struct syscall_ftruncate_t to here.
        * spu/gettimeofday.c: Move struct syscall_gettimeofday_t to here.
        * spu/lseek.c: Move struct syscall_lseek_t and JSRE_SEEK defines to
        here.
        * spu/open.c: Move struct syscall_open_t and JSRE_O_ defines to here.
        * spu/read.c: Move struct syscall_read_t to here, and actually use
        it (it is the same as syscall_write_t).
        * spu/stat.c: Move struct syscall_stat_t to here.
        * spu/write.c: Move struct syscall_write_t to here.
        * spu/close.c: Pass the address of the first and only argument to
        __send_to_ppe rather than using an automatic variable and a
        special struct.
        * spu/dup.c: Ditto.
        * spu/unlink.c: Ditto.
This commit is contained in:
Jeff Johnston 2007-06-05 19:01:30 +00:00
parent 7f6ee25a1a
commit 184dcf2bc3
14 changed files with 122 additions and 128 deletions

View File

@ -1,3 +1,24 @@
2007-06-05 Patrick Mansfield <patman@us.ibm.com>
* spu/jsre.h: Remove the assist call structs and defines that are
specific to one assist call from here.
* spu/access.c: Move struct syscall_access_t to here.
* spu/fstat.c: Move struct syscall_fstat_t to here.
* spu/ftruncate.c: Move struct syscall_ftruncate_t to here.
* spu/gettimeofday.c: Move struct syscall_gettimeofday_t to here.
* spu/lseek.c: Move struct syscall_lseek_t and JSRE_SEEK defines to
here.
* spu/open.c: Move struct syscall_open_t and JSRE_O_ defines to here.
* spu/read.c: Move struct syscall_read_t to here, and actually use
it (it is the same as syscall_write_t).
* spu/stat.c: Move struct syscall_stat_t to here.
* spu/write.c: Move struct syscall_write_t to here.
* spu/close.c: Pass the address of the first and only argument to
__send_to_ppe rather than using an automatic variable and a
special struct.
* spu/dup.c: Ditto.
* spu/unlink.c: Ditto.
2007-05-30 Kazu Hirata <kazu@codesourcery.com>
* m68k/cf-crt1.C, m68k/cf.sc, m68k/fido.sc, m68k/fido-crt0.S:

View File

@ -31,6 +31,14 @@ POSSIBILITY OF SUCH DAMAGE.
#include "jsre.h"
typedef struct
{
unsigned int pathname;
unsigned int pad0[3];
unsigned int mode;
unsigned int pad1[3];
} syscall_access_t;
int
access (const char *pathname, int mode)
{

View File

@ -35,8 +35,5 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
int
close (int file)
{
syscall_close_t sys;
sys.file = file;
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_CLOSE, &sys);
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_CLOSE, &file);
}

View File

@ -34,8 +34,5 @@ POSSIBILITY OF SUCH DAMAGE.
int
dup (int oldfd)
{
syscall_dup_t sys;
sys.oldfd = oldfd;
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_DUP, &sys);
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_DUP, &oldfd);
}

View File

@ -33,6 +33,14 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <sys/stat.h>
#include "jsre.h"
typedef struct
{
unsigned int file;
unsigned int pad0[3];
unsigned int ptr;
unsigned int pad1[3];
} syscall_fstat_t;
int
fstat (int file, struct stat *pstat)
{

View File

@ -31,6 +31,14 @@ POSSIBILITY OF SUCH DAMAGE.
#include <unistd.h>
#include "jsre.h"
typedef struct
{
unsigned int file;
unsigned int pad0[3];
unsigned int length;
unsigned int pad1[3];
} syscall_ftruncate_t;
int
ftruncate (int file, off_t length)
{

View File

@ -34,6 +34,14 @@ POSSIBILITY OF SUCH DAMAGE.
#include <sys/time.h>
#include "jsre.h"
typedef struct
{
unsigned int tv;
unsigned int pad0[3];
unsigned int tz;
unsigned int pad1[3];
} syscall_gettimeofday_t;
int
gettimeofday (struct timeval *tv, struct timezone *tz)
{

View File

@ -35,23 +35,6 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#ifndef __JSRE_H
#define __JSRE_H
#define JSRE_SEEK_SET 0
#define JSRE_SEEK_CUR 1
#define JSRE_SEEK_END 2
#define JSRE_O_RDONLY 0
#define JSRE_O_WRONLY 1
#define JSRE_O_RDWR 2
#define JSRE_O_CREAT 64
#define JSRE_O_EXCL 128
#define JSRE_O_NOCTTY 256
#define JSRE_O_TRUNC 512
#define JSRE_O_APPEND 1024
#define JSRE_O_NDELAY 2048
#define JSRE_O_SYNC 4096
#define JSRE_O_ASYNC 8192
#define JSRE_POSIX1_SIGNALCODE 0x2101
#define JSRE_CLOSE 2
@ -67,104 +50,6 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#define JSRE_ACCESS 29
#define JSRE_DUP 30
typedef struct
{
unsigned int pathname;
unsigned int pad0[ 3 ];
unsigned int flags;
unsigned int pad1[ 3 ];
unsigned int mode;
unsigned int pad2[ 3 ];
} syscall_open_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
unsigned int ptr;
unsigned int pad1[ 3 ];
unsigned int len;
unsigned int pad2[ 3 ];
} syscall_write_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
unsigned int ptr;
unsigned int pad1[ 3 ];
unsigned int len;
unsigned int pad2[ 3 ];
} syscall_read_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
} syscall_close_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
unsigned int offset;
unsigned int pad1[ 3 ];
unsigned int whence;
unsigned int pad2[ 3 ];
} syscall_lseek_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
unsigned int length;
unsigned int pad1[ 3 ];
} syscall_ftruncate_t;
typedef struct
{
unsigned int pathname;
unsigned int pad0[ 3 ];
unsigned int mode;
unsigned int pad1[ 3 ];
} syscall_access_t;
typedef struct
{
unsigned int oldfd;
unsigned int pad0[ 3 ];
} syscall_dup_t;
typedef struct
{
unsigned int tv;
unsigned int pad0[ 3 ];
unsigned int tz;
unsigned int pad1[ 3 ];
} syscall_gettimeofday_t;
typedef struct
{
unsigned int pathname;
unsigned int pad0[ 3 ];
} syscall_unlink_t;
typedef struct
{
unsigned int file;
unsigned int pad0[ 3 ];
unsigned int ptr;
unsigned int pad1[ 3 ];
} syscall_fstat_t;
typedef struct
{
unsigned int pathname;
unsigned int pad0[ 3 ];
unsigned int ptr;
unsigned int pad1[ 3 ];
} syscall_stat_t;
typedef struct {
unsigned int dev;
unsigned int ino;

View File

@ -33,6 +33,20 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <unistd.h>
#include "jsre.h"
#define JSRE_SEEK_SET 0
#define JSRE_SEEK_CUR 1
#define JSRE_SEEK_END 2
typedef struct
{
unsigned int file;
unsigned int pad0[3];
unsigned int offset;
unsigned int pad1[3];
unsigned int whence;
unsigned int pad2[3];
} syscall_lseek_t;
off_t
lseek (int file, off_t offset, int whence)
{

View File

@ -34,6 +34,29 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <fcntl.h>
#include "jsre.h"
#define JSRE_O_RDONLY 0
#define JSRE_O_WRONLY 1
#define JSRE_O_RDWR 2
#define JSRE_O_CREAT 64
#define JSRE_O_EXCL 128
#define JSRE_O_NOCTTY 256
#define JSRE_O_TRUNC 512
#define JSRE_O_APPEND 1024
#define JSRE_O_NDELAY 2048
#define JSRE_O_SYNC 4096
#define JSRE_O_ASYNC 8192
typedef struct
{
unsigned int pathname;
unsigned int pad0[3];
unsigned int flags;
unsigned int pad1[3];
unsigned int mode;
unsigned int pad2[3];
} syscall_open_t;
int
open (const char *filename, int flags, ...)
{

View File

@ -33,10 +33,20 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <fcntl.h>
#include "jsre.h"
typedef struct
{
unsigned int file;
unsigned int pad0[3];
unsigned int ptr;
unsigned int pad1[3];
unsigned int len;
unsigned int pad2[3];
} syscall_read_t;
int
read (int file, void *ptr, size_t len)
{
syscall_write_t sys;
syscall_read_t sys;
sys.file = file;
sys.ptr = ( unsigned int )ptr;

View File

@ -34,6 +34,14 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <fcntl.h>
#include "jsre.h"
typedef struct
{
unsigned int pathname;
unsigned int pad0[3];
unsigned int ptr;
unsigned int pad1[3];
} syscall_stat_t;
int
stat (const char *pathname, struct stat *pstat)
{

View File

@ -35,8 +35,5 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
int
unlink (const char *pathname)
{
syscall_unlink_t sys;
sys.pathname = ( unsigned int )pathname;
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_UNLINK, &sys);
return __send_to_ppe (JSRE_POSIX1_SIGNALCODE, JSRE_UNLINK, &pathname);
}

View File

@ -33,6 +33,16 @@ Author: Andreas Neukoetter (ti95neuk@de.ibm.com)
#include <fcntl.h>
#include "jsre.h"
typedef struct
{
unsigned int file;
unsigned int pad0[3];
unsigned int ptr;
unsigned int pad1[3];
unsigned int len;
unsigned int pad2[3];
} syscall_write_t;
int
write (int file, const void *ptr, size_t len)
{