libgloss: xc16x: drop old stub port
First off, afaict, xc16x support has never been merged into gcc.
Upstream merge isn't strictly required for new ports, but it seems
like people should merge eventually in some shape, and considering
the libgloss port was merged in 2009, ~14 years seems like plenty
of leeway. Which is to say, no one else can seem to build this
which makes updating & testing things very difficult.
Ignoring that, from what I can tell, this port has only ever built
and installed a crt0.o file. It defines libeval.a & libcygmon.a
targets, but nothing depends on them. The SCRIPTS & BSP variables
are always empty. The original port merge define these in the
configure script as substitutes, but never set the vars, so they
were always replaced with nothing.
I actually broke this build 2 years ago when merging the configure
up a level in commit 30f244155b
("libgloss: merge subdirs that have unique makefile_frags up a
level"). I saw that it was exporting a bunch of vars in the
configure script, but never set them, so I incorrectly assumed
they weren't used. Which means the Makefile has been setting them
to invalid values like literal @bsp_list@ and @script_list@.
Considering no one has complained, I have to assume no one cares
about this port, and we can all stop wasting time on it.
This commit is contained in:
parent
2f0cd375f3
commit
40b1b5c7a9
|
@ -481,8 +481,8 @@ mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
|
|||
CONFIG_HEADER = config.h
|
||||
CONFIG_CLEAN_FILES = m68hc11/Makefile m68k/Makefile pa/Makefile \
|
||||
mips/Makefile rs6000/Makefile cr16/Makefile cris/Makefile \
|
||||
crx/Makefile mep/Makefile mt/Makefile xc16x/Makefile \
|
||||
m32c/Makefile spu/Makefile pru/Makefile sparc/libsys/Makefile
|
||||
crx/Makefile mep/Makefile mt/Makefile m32c/Makefile \
|
||||
spu/Makefile pru/Makefile sparc/libsys/Makefile
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
|
@ -2912,8 +2912,6 @@ mep/Makefile: $(top_builddir)/config.status $(top_srcdir)/mep/Makefile.in
|
|||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
mt/Makefile: $(top_builddir)/config.status $(top_srcdir)/mt/Makefile.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
xc16x/Makefile: $(top_builddir)/config.status $(top_srcdir)/xc16x/Makefile.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
m32c/Makefile: $(top_builddir)/config.status $(top_srcdir)/m32c/Makefile.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $@
|
||||
spu/Makefile: $(top_builddir)/config.status $(top_srcdir)/spu/Makefile.in
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
# Dummy target-specific Makefile fragment for XC16X. We can't
|
||||
# use default.mt because it refers to generic source files whose
|
||||
# names conflict with the XC16X-specific sources.
|
|
@ -2946,12 +2946,6 @@ case "${target}" in
|
|||
config_visium=true
|
||||
config_testsuite=false
|
||||
;;
|
||||
xc16x-*-*)
|
||||
ac_config_files="$ac_config_files xc16x/Makefile"
|
||||
|
||||
subdirs="$subdirs xc16x"
|
||||
target_makefile_frag=${srcdir}/config/xc16x.mt
|
||||
;;
|
||||
xstormy16-*-*)
|
||||
config_xstormy16=true
|
||||
;;
|
||||
|
@ -6599,7 +6593,6 @@ do
|
|||
"crx/Makefile") CONFIG_FILES="$CONFIG_FILES crx/Makefile" ;;
|
||||
"mep/Makefile") CONFIG_FILES="$CONFIG_FILES mep/Makefile" ;;
|
||||
"mt/Makefile") CONFIG_FILES="$CONFIG_FILES mt/Makefile" ;;
|
||||
"xc16x/Makefile") CONFIG_FILES="$CONFIG_FILES xc16x/Makefile" ;;
|
||||
"m32c/Makefile") CONFIG_FILES="$CONFIG_FILES m32c/Makefile" ;;
|
||||
"spu/Makefile") CONFIG_FILES="$CONFIG_FILES spu/Makefile" ;;
|
||||
"pru/Makefile") CONFIG_FILES="$CONFIG_FILES pru/Makefile" ;;
|
||||
|
|
|
@ -166,11 +166,6 @@ case "${target}" in
|
|||
config_visium=true
|
||||
config_testsuite=false
|
||||
;;
|
||||
xc16x-*-*)
|
||||
AC_CONFIG_FILES([xc16x/Makefile])
|
||||
subdirs="$subdirs xc16x"
|
||||
target_makefile_frag=${srcdir}/config/xc16x.mt
|
||||
;;
|
||||
xstormy16-*-*)
|
||||
config_xstormy16=true
|
||||
;;
|
||||
|
|
|
@ -1,145 +0,0 @@
|
|||
#
|
||||
# Copyright (C) 2006 KPIT Cummins
|
||||
# Copyright (C) 2009 Conny Marco Menebröcker
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms is permitted
|
||||
# provided that the above copyright notice and following paragraph are
|
||||
# duplicated in all such forms.
|
||||
#
|
||||
# This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
#
|
||||
|
||||
DESTDIR =
|
||||
VPATH = @srcdir@
|
||||
srcdir = @srcdir@
|
||||
objdir = .
|
||||
srcroot = $(srcdir)/../..
|
||||
objroot = $(objdir)/../..
|
||||
|
||||
prefix = @prefix@
|
||||
exec_prefix = @exec_prefix@
|
||||
|
||||
host_alias = @host_alias@
|
||||
target_alias = @target_alias@
|
||||
program_transform_name = @program_transform_name@
|
||||
|
||||
bindir = @bindir@
|
||||
libdir = @libdir@
|
||||
tooldir = $(exec_prefix)/$(target_alias)
|
||||
|
||||
# Multilib support variables.
|
||||
# TOP is used instead of MULTI{BUILD,SRC}TOP.
|
||||
MULTIDIRS =
|
||||
MULTISUBDIR =
|
||||
MULTIDO = true
|
||||
MULTICLEAN = true
|
||||
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
|
||||
SHELL = /bin/sh
|
||||
|
||||
mkinstalldirs = $(SHELL) $(srcroot)/mkinstalldirs
|
||||
|
||||
CC = @CC@
|
||||
|
||||
#AS = @AS@
|
||||
AS = `if [ -f ${objroot}/../gas/as.new ] ; \
|
||||
then echo ${objroot}/../gas/as.new ; \
|
||||
else echo as ; fi`
|
||||
|
||||
AR = @AR@
|
||||
|
||||
#LD = @LD@
|
||||
LD = `if [ -f ${objroot}/../ld/ld.new ] ; \
|
||||
then echo ${objroot}/../ld/ld.new ; \
|
||||
else echo ld ; fi`
|
||||
|
||||
RANLIB = @RANLIB@
|
||||
|
||||
OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
|
||||
then echo ${objroot}/../binutils/objdump ; \
|
||||
else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
|
||||
OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
|
||||
then echo ${objroot}/../binutils/objcopy ; \
|
||||
else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
|
||||
|
||||
CRT0 = crt0.o
|
||||
|
||||
# Generic object files common to all targets.
|
||||
GENOBJS_NO_TRAP = close.o create.o crt0.o fstat.o getchar1.o \
|
||||
isatty.o lseek.o mem-layout.o misc.o open.o \
|
||||
read.o sbrk.o syscalls.o write.o
|
||||
GENOBJS = ${GENOBJS_NO_TRAP} trap_handle.o
|
||||
|
||||
# Object files specific to particular targets.
|
||||
EVALOBJS = ${GENOBJS}
|
||||
CYGMONOBJS = ${GENOBJS_NO_TRAP}
|
||||
|
||||
CFLAGS = -g
|
||||
|
||||
GCC_LDFLAGS = `if [ -d ${objroot}/../gcc ] ; \
|
||||
then echo -L${objroot}/../gcc ; fi`
|
||||
|
||||
SCRIPTS = @script_list@
|
||||
BSP = @bsp_list@
|
||||
|
||||
# Host specific makefile fragment comes in here.
|
||||
@host_makefile_frag@
|
||||
|
||||
#
|
||||
# build a test program for each target board. Just trying to get
|
||||
# it to link is a good test, so we ignore all the errors for now.
|
||||
#
|
||||
|
||||
all: ${CRT0} ${BSP}
|
||||
|
||||
#
|
||||
# here's where we build the board support packages for each target
|
||||
#
|
||||
|
||||
libeval.a: $(EVALOBJS)
|
||||
${AR} ${ARFLAGS} $@ $(EVALOBJS)
|
||||
${RANLIB} $@
|
||||
|
||||
libcygmon.a: $(CYGMONOBJS)
|
||||
${AR} ${ARFLAGS} $@ $(CYGMONOBJS)
|
||||
${RANLIB} $@
|
||||
|
||||
|
||||
doc:
|
||||
|
||||
clean mostlyclean:
|
||||
rm -f a.out core *.i *~ *.o *-test *.srec *.dis *.map *.x
|
||||
|
||||
distclean maintainer-clean realclean: clean
|
||||
rm -f Makefile config.status a.out
|
||||
|
||||
.PHONY: install info install-info clean-info
|
||||
install:
|
||||
${mkinstalldirs} ${DESTDIR}${tooldir}/lib${MULTISUBDIR}
|
||||
@for crt in ${CRT0}; do \
|
||||
$(INSTALL_PROGRAM) $${crt} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${crt}; \
|
||||
done
|
||||
@for bsp in ${BSP}; do \
|
||||
$(INSTALL_PROGRAM) $${bsp} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||||
done
|
||||
@for script in ${SCRIPTS}; do \
|
||||
$(INSTALL_DATA) ${srcdir}/$${script}.ld $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}/$${script}.ld; \
|
||||
done
|
||||
|
||||
info:
|
||||
install-info:
|
||||
clean-info:
|
||||
|
||||
# these are for the BSPs
|
||||
crt0.o: ${srcdir}/crt0.S
|
||||
|
||||
# target specific makefile fragment comes in here.
|
||||
@target_makefile_frag@
|
||||
|
||||
Makefile: Makefile.in ../config.status
|
||||
cd .. && $(SHELL) config.status
|
|
@ -1,20 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
.section .text
|
||||
.global __close
|
||||
__close:
|
||||
#ifdef __xc16xL__
|
||||
rets
|
||||
#else
|
||||
ret
|
||||
#endif
|
|
@ -1,39 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include<sys/stat.h>
|
||||
#include<sys/types.h>
|
||||
/*volatile int creatsys(char *name,int perms)
|
||||
{
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("push r10\n"
|
||||
" mov r10,r9 \n"
|
||||
" mov r9,#0x300 \n"
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
asm volatile("trap #7");
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("pop r10");
|
||||
#endif
|
||||
}
|
||||
*/
|
||||
volatile int _creat(char *name,int perms)
|
||||
{
|
||||
int temp;
|
||||
|
||||
temp=creatsys(name,perms);
|
||||
// putchar((char)temp);
|
||||
//printf("%d\n",temp);
|
||||
return temp;
|
||||
}
|
|
@ -1,41 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
.section .text
|
||||
.global _start
|
||||
.align 2
|
||||
_start:
|
||||
#if __xc16xL__
|
||||
mov dpp0,#0x2
|
||||
#else
|
||||
mov dpp0,#0x300
|
||||
#endif
|
||||
mov dpp1,#1
|
||||
mov dpp2,#2
|
||||
mov dpp3,#3
|
||||
mov sp,#0xfc00
|
||||
mov r0,#0xc000
|
||||
#if __xc16x__
|
||||
mov csp,#0x0
|
||||
mov dpp0,#0x0
|
||||
#else
|
||||
mov csp,#0xc0
|
||||
#endif
|
||||
|
||||
#if __xc16xL__
|
||||
calls #SEG:_main,#SOF:_main
|
||||
#else
|
||||
calla cc_UC,_main
|
||||
#endif
|
||||
mov r8,#0x0
|
||||
trap #0
|
||||
ret
|
|
@ -1,20 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
.section .text
|
||||
.global __fstat
|
||||
__fstat:
|
||||
#ifdef __xc16xL__
|
||||
rets
|
||||
#else
|
||||
ret
|
||||
#endif
|
|
@ -1,19 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
signed char getchar (void)
|
||||
{
|
||||
|
||||
asm(" trap #2");
|
||||
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
/* isatty.c */
|
||||
|
||||
/* Dumb implementation so programs will at least run. */
|
||||
|
||||
#include <sys/stat.h>
|
||||
|
||||
int
|
||||
isatty (int fd)
|
||||
{
|
||||
|
||||
|
||||
|
||||
return 1;
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
|
||||
int
|
||||
_lseek (int file, int ptr, int dir)
|
||||
{
|
||||
return trap_lseek (file,(unsigned long)ptr, dir);
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
/* Ideally this kind of stuff is specified in a linker script. It's not clear
|
||||
what the default linker script should do, so for now we have this. */
|
||||
|
||||
#ifndef STACK_SIZE
|
||||
/* Cache lines recycle at 4096 I think, and 4096 is listed as the page size,
|
||||
so we make the stack size a multiple of it. Not that it's relevant or
|
||||
anything, but why not base it on *something*? */
|
||||
#define STACK_SIZE (4096 * 4)
|
||||
#endif
|
||||
|
||||
int stack_size asm ("stack_size") = STACK_SIZE;
|
||||
|
||||
#ifndef SBRK_SIZE
|
||||
#define SBRK_SIZE (4096 * 32)
|
||||
#endif
|
||||
|
||||
int sbrk_size asm ("sbrk_size") = SBRK_SIZE;
|
|
@ -1,37 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include <_ansi.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
/* _raise(), getpid(), and kill() are required by abort().
|
||||
getpid/kill are prefixed with '_' because of MISSING_SYSCALL_NAMES. */
|
||||
|
||||
int _raise (int sig)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
}
|
||||
|
||||
int _getpid (void)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
}
|
||||
|
||||
int _kill (int pid,
|
||||
int sig)
|
||||
{
|
||||
errno = ENOSYS;
|
||||
return -1;
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include<sys/types.h>
|
||||
#include<sys/stat.h>
|
||||
/*volatile int opensys(char *name,int flags,int perms)
|
||||
{
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("push r11\n"
|
||||
"mov r11,r10 \n"
|
||||
" mov r10,r9 \n"
|
||||
" mov r9,#0x300 \n"
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
asm volatile("trap #5");
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("pop r11");
|
||||
#endif
|
||||
}*/
|
||||
|
||||
int _open(char *name,int flags,int perms)
|
||||
{
|
||||
int temp;
|
||||
|
||||
temp=opensys(name,flags,perms);
|
||||
return temp;
|
||||
}
|
|
@ -1,29 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include<sys/types.h>
|
||||
#include<sys/stat.h>
|
||||
|
||||
/*int trap1(int file, unsigned long ptr,int len)
|
||||
{
|
||||
asm volatile("TRAP #4");
|
||||
|
||||
}*/
|
||||
|
||||
int _read(int file, char *ptr,int len)
|
||||
{
|
||||
|
||||
return trap1(file,(unsigned long)ptr,1);
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,36 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
|
||||
#include <_ansi.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
char *stack_ptr ;
|
||||
|
||||
caddr_t
|
||||
_sbrk(incr)
|
||||
int incr;
|
||||
{
|
||||
extern char end; /* Defined by the linker */
|
||||
static char *heap_end=&end;
|
||||
char *prev_heap_end;
|
||||
|
||||
|
||||
|
||||
prev_heap_end = heap_end;
|
||||
|
||||
|
||||
heap_end += incr;
|
||||
return (caddr_t)prev_heap_end;
|
||||
}
|
||||
|
|
@ -1 +0,0 @@
|
|||
|
|
@ -1,33 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/syscall.h>
|
||||
#include <_ansi.h>
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdarg.h>
|
||||
#include <reent.h>
|
||||
|
||||
|
||||
|
||||
void _exit(int n)
|
||||
{
|
||||
asm volatile("trap #0");
|
||||
}
|
||||
|
||||
int isatty(file)
|
||||
int file;
|
||||
{
|
||||
return 1;
|
||||
}
|
|
@ -1,67 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
int trap0(int file, unsigned long ptr,int len)
|
||||
{
|
||||
asm volatile("TRAP #3");
|
||||
return len;
|
||||
}
|
||||
|
||||
|
||||
int trap1(int file, unsigned long ptr,int len)
|
||||
{
|
||||
asm volatile("TRAP #4");
|
||||
|
||||
}
|
||||
|
||||
int trap_lseek(int file, unsigned long ptr,int len)
|
||||
{
|
||||
asm volatile("TRAP #8");
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
volatile int opensys(char *name,int flags,int perms)
|
||||
{
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("push r11\n"
|
||||
"mov r11,r10 \n"
|
||||
" mov r10,r9 \n"
|
||||
" mov r9,#0x300 \n"
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
asm volatile("trap #5");
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("pop r11");
|
||||
#endif
|
||||
}
|
||||
|
||||
volatile int creatsys(char *name,int perms)
|
||||
{
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("push r10\n"
|
||||
" mov r10,r9 \n"
|
||||
" mov r9,#0x300 \n"
|
||||
);
|
||||
|
||||
#endif
|
||||
|
||||
asm volatile("trap #7");
|
||||
#ifndef __xc16xL__
|
||||
asm volatile("pop r10");
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
@ -1,25 +0,0 @@
|
|||
/*
|
||||
* Copyright (C) 2006 KPIT Cummins
|
||||
* Copyright (C) 2009 Conny Marco Menebröcker
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms is permitted
|
||||
* provided that the above copyright notice and following paragraph are
|
||||
* duplicated in all such forms.
|
||||
*
|
||||
* This file is distributed WITHOUT ANY WARRANTY; without even the implied
|
||||
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
*/
|
||||
#include<sys/types.h>
|
||||
#include<sys/stat.h>
|
||||
|
||||
/*int trap0(int file, unsigned long ptr,int len)
|
||||
{
|
||||
asm volatile("TRAP #3");
|
||||
return len;
|
||||
}
|
||||
*/
|
||||
int _write(int file, char *ptr,int len)
|
||||
{
|
||||
return trap0(file,(unsigned long)ptr,len);
|
||||
}
|
Loading…
Reference in New Issue