From 27bfcd88f7e65c81b406afa85d81b060e2ea24e3 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 25 Jan 2017 14:32:02 +0100 Subject: score: Delete _CPU_Context_Fp_start() Since the FP area pointer is passed by reference in _CPU_Context_Initialize_fp() the optional FP area adjustment via _CPU_Context_Fp_start() is superfluous. It is also wrong with respect to memory management, e.g. pointer passed to _Workspace_Free() may be not the one returned by _Workspace_Allocate(). Close #1400. --- cpukit/score/cpu/or1k/rtems/score/cpu.h | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) (limited to 'cpukit/score/cpu/or1k') diff --git a/cpukit/score/cpu/or1k/rtems/score/cpu.h b/cpukit/score/cpu/or1k/rtems/score/cpu.h index 4a643c7e0e..3d4a6e003a 100644 --- a/cpukit/score/cpu/or1k/rtems/score/cpu.h +++ b/cpukit/score/cpu/or1k/rtems/score/cpu.h @@ -620,10 +620,11 @@ void _CPU_Context_Initialize( _CPU_Context_restore( (_the_context) ); /* - * The purpose of this macro is to allow the initial pointer into - * a floating point context area (used to save the floating point - * context) to be at an arbitrary place in the floating point - * context area. + * This routine is responsible to initialize the FP context. + * + * The FP area pointer is passed by reference to allow the initial pointer + * into a floating point context area (used to save the floating point + * context) to be at an arbitrary place in the floating point context area. * * This is necessary because some FP units are designed to have * their context saved as a stack which grows into lower addresses. @@ -631,14 +632,9 @@ void _CPU_Context_Initialize( * from the base of the context area. Finally some FP units provide * a "dump context" instruction which could fill in from high to low * or low to high based on the whim of the CPU designers. - * */ - -#define _CPU_Context_Fp_start( _base, _offset ) \ - ( (void *) _Addresses_Add_offset( (_base), (_offset) ) ) - -#define _CPU_Context_Initialize_fp( _destination ) \ - memset( *( _destination ), 0, CPU_CONTEXT_FP_SIZE ); +#define _CPU_Context_Initialize_fp( _fp_area_p ) \ + memset( *( _fp_area_p ), 0, CPU_CONTEXT_FP_SIZE ) /* end of Context handler macros */ -- cgit v1.2.3