diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2005-04-28 16:17:39 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2005-04-28 16:17:39 +0000 |
commit | 27d619b86bd3ea6a36c8d3258ac6cba06b22a6e6 (patch) | |
tree | 676f2c9228a668ad9e8cdebc4fc10866204459da /c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc | |
parent | 2005-04-28 Jennifer Averett <jennifer.averett@oarcorp.com> (diff) | |
download | rtems-27d619b86bd3ea6a36c8d3258ac6cba06b22a6e6.tar.bz2 |
2005-04-28 Joel Sherrill <joel@OARcorp.com>
* acinclude.m4: Remove dmv177 and ppcn_60x.
* dmv177/.cvsignore, dmv177/ChangeLog, dmv177/Makefile.am,
dmv177/QUIRKS, dmv177/README, dmv177/README.net, dmv177/STATUS,
dmv177/bsp_specs, dmv177/cable.doc, dmv177/configure.ac,
dmv177/times, dmv177/clock/clock.c, dmv177/console/conscfg.c,
dmv177/console/debugio.c, dmv177/include/.cvsignore,
dmv177/include/bsp.h, dmv177/include/dmv170.h, dmv177/include/tm27.h,
dmv177/scv64/scv64.c, dmv177/sonic/dmvsonic.c, dmv177/start/start.S,
dmv177/startup/bspclean.c, dmv177/startup/bspstart.c,
dmv177/startup/genpvec.c, dmv177/startup/linkcmds,
dmv177/startup/setvec.c, dmv177/startup/vmeintr.c,
dmv177/timer/timer.c, dmv177/tod/todcfg.c, ppcn_60x/.cvsignore,
ppcn_60x/ChangeLog, ppcn_60x/Makefile.am, ppcn_60x/README,
ppcn_60x/STATUS, ppcn_60x/bsp_specs, ppcn_60x/configure.ac,
ppcn_60x/clock/clock.c, ppcn_60x/console/config.c,
ppcn_60x/console/console.c, ppcn_60x/console/console.h,
ppcn_60x/console/debugio.c, ppcn_60x/console/i8042.c,
ppcn_60x/console/i8042_p.h, ppcn_60x/console/i8042vga.c,
ppcn_60x/console/i8042vga.h, ppcn_60x/console/ns16550cfg.c,
ppcn_60x/console/ns16550cfg.h, ppcn_60x/console/vga.c,
ppcn_60x/console/vga_p.h, ppcn_60x/console/z85c30cfg.c,
ppcn_60x/console/z85c30cfg.h, ppcn_60x/include/.cvsignore,
ppcn_60x/include/bsp.h, ppcn_60x/include/extisrdrv.h,
ppcn_60x/include/nvram.h, ppcn_60x/include/pci.h,
ppcn_60x/include/tm27.h, ppcn_60x/network/amd79c970.c,
ppcn_60x/network/amd79c970.h, ppcn_60x/nvram/ds1385.h,
ppcn_60x/nvram/mk48t18.h, ppcn_60x/nvram/nvram.c,
ppcn_60x/nvram/prepnvr.h, ppcn_60x/nvram/stk11c68.h,
ppcn_60x/pci/pci.c, ppcn_60x/start/start.S,
ppcn_60x/startup/bspclean.c, ppcn_60x/startup/bspstart.c,
ppcn_60x/startup/bsptrap.S, ppcn_60x/startup/genpvec.c,
ppcn_60x/startup/linkcmds, ppcn_60x/startup/rtems-ctor.cc,
ppcn_60x/startup/setvec.c, ppcn_60x/startup/spurious.c,
ppcn_60x/startup/swap.c, ppcn_60x/timer/timer.c, ppcn_60x/tod/cmos.h,
ppcn_60x/tod/tod.c, ppcn_60x/universe/universe.c,
ppcn_60x/vectors/README, ppcn_60x/vectors/align_h.S,
ppcn_60x/vectors/vectors.S: Removed.
Diffstat (limited to 'c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc')
-rw-r--r-- | c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc b/c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc deleted file mode 100644 index 5978987858..0000000000 --- a/c/src/lib/libbsp/powerpc/ppcn_60x/startup/rtems-ctor.cc +++ /dev/null @@ -1,123 +0,0 @@ -/* - * rtems-ctor.cc - * - * Description: - * This file exists solely to (try to) ensure RTEMS is initialized - * before any global constructors are run. - * - * The problem: - * Global constructors might reasonably expect that new() will - * work, but since new() uses malloc() which uses RTEMS regions, - * it can not be called until after initialize_executive(). - * - * Global constructors are called in GNU systems one of 2 ways: - * - * an "invisible" call to __main() inserted by compiler - * This __main() calls __do_global_ctors() which - * walks thru the table and calls all global - * constructors. - * - * or - - * A special section is put into the linked binary. The - * system startup code knows to run the constructors in - * this special section before calling main(). - * - * By making RTEMS initialization a constructor, we avoid having - * too much about all this. All we have to guarantee is that - * this constructor is the first one run. - * - * - * So for the first case above, this is what happens - * - * host crt0 - * main() - * __main() - * __do_global_ctors() - * bsp_start() - * init_executive_early() - * <<any other constructors>> - * - * rtems_init_executive_late() - * bsp_cleanup() - * - * TODO: - * - * - * COPYRIGHT (c) 1989-1997. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may in - * the file LICENSE in this distribution or at - * http://www.rtems.com/license/LICENSE. - * - * $Id: - */ - -#include <bsp.h> - -/* - * RTEMS program name - * Probably not used by anyone, but it is nice to have it. - * Actually the UNIX version of CPU_INVOKE_DEBUGGER will probably - * need to use it - */ - -char *rtems_progname; -char **rtems_environp; - -#ifdef USE_CONSTRUCTORS_FOR_INIT_EXEC - -class RTEMS { - public: - RTEMS(); - ~RTEMS(); -}; - -RTEMS rtems_constructor; - -RTEMS::RTEMS() -{ - bsp_start(); -} - -RTEMS::~RTEMS() -{ - bsp_cleanup(); -} -#endif - -extern "C" { - int - main(int argc, - char **argv, - char **environp) - { - -#ifndef USE_CONSTRUCTORS_FOR_INIT_EXEC - bsp_start(); -#endif - - if ((argc > 0) && argv && argv[0]) - rtems_progname = argv[0]; - else - rtems_progname = "RTEMS"; - - rtems_environp = environp; - - /* - * Start multitasking - */ - rtems_initialize_executive_late( bsp_isr_level ); - -#ifndef USE_CONSTRUCTORS_FOR_INIT_EXEC - bsp_cleanup(); -#endif - - /* - * Returns when multitasking is stopped - * This allows our destructors to get run normally - */ - - return 0; - } -} |