h8300 normal mode patch
J. Johnston
jjohnstn@redhat.com
Tue Jun 10 05:19:00 GMT 2003
Richard Sandiford wrote:
> This is a follow-on to Dhananjay's recent h8300 -mn patch:
>
> http://sources.redhat.com/ml/newlib/2003/msg00276.html
>
> Some files in libc/sys/h8300hms were not changed, causing a link
> failure with -mn. Patch tested on h8300-elf. OK to install?
>
Yes. Go ahead.
-- Jeff J.
> Richard
>
>
> * libc/sys/h8300hms/setarch.h: New file.
> * libc/sys/h8300hms/close.S, libc/sys/h8300hms/fstat.S,
> libc/sys/h8300hms/lseek.S, libc/sys/h8300hms/open.S,
> libc/sys/h8300hms/read.S, libc/sys/h8300hms/stat.S,
> libc/sys/h8300hms/write.S, libc/sys/h8300hms/crt0.S: Use it.
>
> Index: newlib/libc/sys/h8300hms/close.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/close.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 close.S
> *** newlib/libc/sys/h8300hms/close.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/close.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,12 ****
> ;int close(int fd);
> ;Integer arguments have to be zero extended.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,7 ----
> ;int close(int fd);
> ;Integer arguments have to be zero extended.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/fstat.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/fstat.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 fstat.S
> *** newlib/libc/sys/h8300hms/fstat.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/fstat.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,12 ****
> ;int fstat(int filedes, struct stat *buf);
> ;Integer arguments have to be zero extended.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,7 ----
> ;int fstat(int filedes, struct stat *buf);
> ;Integer arguments have to be zero extended.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/lseek.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/lseek.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 lseek.S
> *** newlib/libc/sys/h8300hms/lseek.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/lseek.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,12 ****
> ;off_t lseek(int fildes, off_t offset, int whence);
> ;Integer arguments have to be zero extended.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,7 ----
> ;off_t lseek(int fildes, off_t offset, int whence);
> ;Integer arguments have to be zero extended.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/open.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/open.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 open.S
> *** newlib/libc/sys/h8300hms/open.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/open.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 3,14 ****
> ;The second argument is taken from the stack,
> ;hence it is not zero extended here.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 3,9 ----
> ;The second argument is taken from the stack,
> ;hence it is not zero extended here.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/read.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/read.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 read.S
> *** newlib/libc/sys/h8300hms/read.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/read.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,12 ****
> ;ssize_t read(int fd, void *buf, size_t count);
> ;Integer arguments have to be zero extended.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,7 ----
> ;ssize_t read(int fd, void *buf, size_t count);
> ;Integer arguments have to be zero extended.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/stat.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/stat.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 stat.S
> *** newlib/libc/sys/h8300hms/stat.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/stat.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,11 ****
> ;int stat(const char *file_name, struct stat *buf);
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,6 ----
> ;int stat(const char *file_name, struct stat *buf);
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/write.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/write.S,v
> retrieving revision 1.1
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.1 write.S
> *** newlib/libc/sys/h8300hms/write.S 25 Feb 2003 20:36:29 -0000 1.1
> --- newlib/libc/sys/h8300hms/write.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,13 ****
> ;ssize_t write(int fd, const void *buf, size_t count);
> ;Integer arguments have to be zero extended.
>
> ! #if defined(__H8300H__)
> ! .h8300h
> ! #endif
> !
> ! #if defined(__H8300S__)
> ! .h8300s
> ! #endif
>
> .section .text
> .align 2
> --- 1,7 ----
> ;ssize_t write(int fd, const void *buf, size_t count);
> ;Integer arguments have to be zero extended.
>
> ! #include "setarch.h"
>
> .section .text
> .align 2
> Index: newlib/libc/sys/h8300hms/crt0.S
> ===================================================================
> RCS file: /cvs/src/src/newlib/libc/sys/h8300hms/crt0.S,v
> retrieving revision 1.7
> diff -c -d -p -F^\([(a-zA-Z0-9_]\|#define\) -r1.7 crt0.S
> *** newlib/libc/sys/h8300hms/crt0.S 28 May 2003 18:00:17 -0000 1.7
> --- newlib/libc/sys/h8300hms/crt0.S 9 Jun 2003 07:51:19 -0000
> ***************
> *** 1,5 ****
> --- 1,7 ----
> ; h8/300 and h8/300h start up file.
>
> + #include "setarch.h"
> +
> #ifdef __H8300__
>
> .section .text
> *************** _stack: .word 1
> *** 36,46 ****
>
> #ifdef __H8300H__
>
> - #ifdef __NORMAL_MODE__
> - .h8300hn
> - #else
> - .h8300h
> - #endif
> .section .text
> .global _start
> _start:
> --- 38,43 ----
> *************** _stack: .long 1
> *** 74,84 ****
> #endif
>
> #ifdef __H8300S__
> ! #ifdef __NORMAL_MODE__
> ! .h8300sn
> ! #else
> ! .h8300s
> ! #endif
> .section .text
> .global _start
> _start:
> --- 71,77 ----
> #endif
>
> #ifdef __H8300S__
> !
> .section .text
> .global _start
> _start:
> *** /dev/null Thu Apr 11 15:25:15 2002
> --- newlib/libc/sys/h8300hms/setarch.h Mon Jun 9 08:48:21 2003
> ***************
> *** 0 ****
> --- 1,14 ----
> + #ifdef __H8300H__
> + #ifdef __NORMAL_MODE__
> + .h8300hn
> + #else
> + .h8300h
> + #endif
> + #endif
> + #ifdef __H8300S__
> + #ifdef __NORMAL_MODE__
> + .h8300sn
> + #else
> + .h8300s
> + #endif
> + #endif
More information about the Newlib
mailing list