[PATCH 2/5 v2] SPARC BSPs: remove BSP_fatal_return unreached code
Joel Sherrill
joel.sherrill at oarcorp.com
Thu Jul 3 14:33:04 UTC 2014
This looks good to me.
Also looks like you found one of those odd dead routines
I mentioned against the first patch in this series.
On 7/3/2014 2:29 AM, Daniel Hellstrom wrote:
> PATCHv2: unreachable code after SMP secondary CPU init or boot_card
> calls, is now removed instead of cleaned-up.
> ---
> c/src/lib/libbsp/sparc/erc32/include/bsp.h | 2 --
> c/src/lib/libbsp/sparc/leon2/include/bsp.h | 2 --
> c/src/lib/libbsp/sparc/leon3/include/bsp.h | 2 --
> c/src/lib/libbsp/sparc/shared/start/start.S | 9 ++-------
> 4 files changed, 2 insertions(+), 13 deletions(-)
>
> diff --git a/c/src/lib/libbsp/sparc/erc32/include/bsp.h b/c/src/lib/libbsp/sparc/erc32/include/bsp.h
> index 775a19f..fbe8988 100644
> --- a/c/src/lib/libbsp/sparc/erc32/include/bsp.h
> +++ b/c/src/lib/libbsp/sparc/erc32/include/bsp.h
> @@ -92,8 +92,6 @@ rtems_isr_entry set_vector( /* returns old vector */
> int type /* RTEMS or RAW intr */
> );
>
> -void BSP_fatal_return( void );
> -
> void bsp_spurious_initialize( void );
>
> /* Allocate 8-byte aligned non-freeable pre-malloc() memory. The function
> diff --git a/c/src/lib/libbsp/sparc/leon2/include/bsp.h b/c/src/lib/libbsp/sparc/leon2/include/bsp.h
> index 0bb0eef..63af19e 100644
> --- a/c/src/lib/libbsp/sparc/leon2/include/bsp.h
> +++ b/c/src/lib/libbsp/sparc/leon2/include/bsp.h
> @@ -113,8 +113,6 @@ rtems_isr_entry set_vector( /* returns old vector */
> int type /* RTEMS or RAW intr */
> );
>
> -void BSP_fatal_return( void );
> -
> void bsp_spurious_initialize( void );
>
> /* Allocate 8-byte aligned non-freeable pre-malloc() memory. The function
> diff --git a/c/src/lib/libbsp/sparc/leon3/include/bsp.h b/c/src/lib/libbsp/sparc/leon3/include/bsp.h
> index cb15796..ce4fe09 100644
> --- a/c/src/lib/libbsp/sparc/leon3/include/bsp.h
> +++ b/c/src/lib/libbsp/sparc/leon3/include/bsp.h
> @@ -131,8 +131,6 @@ rtems_isr_entry set_vector( /* returns old vector */
> int type /* RTEMS or RAW intr */
> );
>
> -void BSP_fatal_return( void );
> -
> void bsp_spurious_initialize( void );
>
> /* Allocate 8-byte aligned non-freeable pre-malloc() memory. The function
> diff --git a/c/src/lib/libbsp/sparc/shared/start/start.S b/c/src/lib/libbsp/sparc/shared/start/start.S
> index 070387f..e621c39 100644
> --- a/c/src/lib/libbsp/sparc/shared/start/start.S
> +++ b/c/src/lib/libbsp/sparc/shared/start/start.S
> @@ -252,8 +252,6 @@ SYM(hard_reset):
>
> call SYM(bsp_start_on_secondary_processor) ! does not return
> sub %sp, CPU_MINIMUM_STACK_FRAME_SIZE, %sp
> - ba SYM(bsp_reset) ! just in case
> - nop
> cpu0:
> #endif
>
> @@ -364,14 +362,11 @@ zerobss:
> nop
>
> mov %0, %o0 ! command line
> - call SYM(boot_card)
> - sub %sp, 0x60, %sp ! room for boot_card to save args
> - nop
> + call SYM(boot_card) ! does not return
> + sub %sp, 0x60, %sp ! room for boot_card to save args
>
> #if !defined(START_LEON3_ENABLE_SMP)
> - PUBLIC(BSP_fatal_return)
> PUBLIC(bsp_reset)
> -SYM(BSP_fatal_return):
> SYM(bsp_reset):
> mov 1, %g1
> ta 0 ! Halt if _main returns ...
--
Joel Sherrill, Ph.D. Director of Research & Development
joel.sherrill at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the devel
mailing list