From f171a1e0a63bfd88367cfa5e97d265c981473667 Mon Sep 17 00:00:00 2001 From: Michael Frysinger Date: Tue, 24 Jan 2012 04:41:10 +0000 Subject: [PATCH] libgloss: bfin: add a better default _exit --- libgloss/ChangeLog | 7 ++++++- libgloss/bfin/Makefile.in | 2 +- libgloss/bfin/_exit.c | 25 +++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 libgloss/bfin/_exit.c diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 4e72045e8..b2e125f30 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,9 +1,14 @@ +2012-01-23 Stuart Henderson + + * bfin/_exit.c: New file. + * bfin/Makefile.in (BOARD_OBJS): Add _exit.o. + 2012-01-17 Bin Cheng * arm/linux-crt0.c: Use ldr instead of adr to get address of _start_thumb. -2011-12-18 Mike Frysinger +2011-12-18 Steve Kilbane * bfin/clear_cache_range.c: New file. * bfin/Makefile.in (SIM_OBJS): Add clear_cache_range.o. diff --git a/libgloss/bfin/Makefile.in b/libgloss/bfin/Makefile.in index 7dd2b14aa..1e336c9fb 100644 --- a/libgloss/bfin/Makefile.in +++ b/libgloss/bfin/Makefile.in @@ -74,7 +74,7 @@ BOARD_LDFLAGS = BOARD_BSP = libbfinbsp.a BOARD_CRT0S = basiccrt.o basiccrts.o BOARD_CRT0S += basiccrt561.o basiccrt561s.o basiccrt561b.o -BOARD_OBJS = clear_cache_range.o +BOARD_OBJS = clear_cache_range.o _exit.o BOARD_TEST = BOARD_INSTALL = install-board diff --git a/libgloss/bfin/_exit.c b/libgloss/bfin/_exit.c new file mode 100644 index 000000000..d7fb9e033 --- /dev/null +++ b/libgloss/bfin/_exit.c @@ -0,0 +1,25 @@ +/* + * C library support files for the Blackfin processor + * + * Copyright (C) 2012 Analog Devices, Inc. + * + * The authors hereby grant permission to use, copy, modify, distribute, + * and license this software and its documentation for any purpose, provided + * that existing copyright notices are retained in all copies and that this + * notice is included verbatim in any distributions. No written agreement, + * license, or royalty fee is required for any of the authorized uses. + * Modifications to this software may be copyrighted by their authors + * and need not follow the licensing terms described here, provided that + * the new terms are clearly indicated on the first page of each file where + * they apply. + */ + +#include <_ansi.h> + +_VOID +_DEFUN (_exit, (rc), + int rc) +{ + while (1) + asm volatile ("EXCPT 0;"); +}