diff VMS.h @ 243:227cd4d33d94

fixed pointing slave to a TLF, added ones that don't trash stack fixed names
author Sean <seanhalle@yahoo.com>
date Thu, 17 May 2012 20:39:44 +0200
parents 7ed97c961901
children f1267bc7b342
line diff
     1.1 --- a/VMS.h	Tue May 08 18:58:41 2012 +0200
     1.2 +++ b/VMS.h	Thu May 17 20:39:44 2012 +0200
     1.3 @@ -10,11 +10,12 @@
     1.4  #define	_VMS_H
     1.5  #define _GNU_SOURCE
     1.6  
     1.7 -#include "VMS_primitive_data_types.h"
     1.8  #include "DynArray/DynArray.h"
     1.9  #include "Hash_impl/PrivateHash.h"
    1.10  #include "Histogram/Histogram.h"
    1.11  #include "Queue_impl/PrivateQueue.h"
    1.12 +
    1.13 +#include "VMS_primitive_data_types.h"
    1.14  #include "Services_Offered_by_VMS/Memory_Handling/vmalloc.h"
    1.15  
    1.16  #include <pthread.h>
    1.17 @@ -49,8 +50,8 @@
    1.18  
    1.19  //============================ HW Dependent Fns ================================
    1.20  
    1.21 -#include "Hardware_Dependent/VMS__HW_measurement.h"
    1.22 -#include "Hardware_Dependent/VMS__primitives.h"
    1.23 +#include "HW_Dependent_Primitives/VMS__HW_measurement.h"
    1.24 +#include "HW_Dependent_Primitives/VMS__primitives.h"
    1.25  
    1.26  
    1.27  //============= Request Related ===========
    1.28 @@ -156,9 +157,9 @@
    1.29   */
    1.30  typedef struct
    1.31   {    //The offsets of these fields are hard-coded into assembly
    1.32 -   void            *coreCtlrReturnPt;    //offset of field used in asm
    1.33 +   void            *coreCtlrReturnPt;    //offset to this field used in asm
    1.34     int8             falseSharePad1[256 - sizeof(void*)];
    1.35 -   int32            masterLock;          //offset of field used in asm
    1.36 +   int32            masterLock;          //offset to this field used in asm
    1.37     int8             falseSharePad2[256 - sizeof(int32)];
    1.38        //============ below this, no fields are used in asm =============
    1.39  
    1.40 @@ -289,9 +290,17 @@
    1.41                                  void      *dataParam, void           *stackLocs );
    1.42  
    1.43  inline void
    1.44 -VMS_int__point_slaveVP_to_Fn( SlaveVP *slaveVP, TopLevelFnPtr fnPtr,
    1.45 +VMS_int__reset_slaveVP_to_TopLvlFn( SlaveVP *slaveVP, TopLevelFnPtr fnPtr,
    1.46                                void    *dataParam);
    1.47  
    1.48 +inline void
    1.49 +VMS_int__point_slaveVP_to_OneParamFn( SlaveVP *slaveVP, void *fnPtr,
    1.50 +                              void    *param);
    1.51 +
    1.52 +inline void
    1.53 +VMS_int__point_slaveVP_to_TwoParamFn( SlaveVP *slaveVP, void *fnPtr,
    1.54 +                              void    *param1, void *param2);
    1.55 +
    1.56  void
    1.57  VMS_int__dissipate_slaveVP( SlaveVP *slaveToDissipate );
    1.58  #define VMS_PI__dissipate_slaveVP VMS_int__dissipate_slaveVP