2010-03-26 00:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)

* harbour/src/vm/hvmall.c
  * harbour/include/hbstack.h
    * reactivated for tests inline ASM code which can be used to access
      HVM stack pointer in MT HVM builds. It can be enabled in 32bit
      desktop windows Harbour builds by setting HB_ASM_TLS build time macro.
This commit is contained in:
Przemyslaw Czerpak
2010-03-25 23:12:28 +00:00
parent b393b8edff
commit 8b5b161083
3 changed files with 18 additions and 4 deletions

View File

@@ -17,6 +17,13 @@
past entries belonging to author(s): Viktor Szakats.
*/
2010-03-26 00:12 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/src/vm/hvmall.c
* harbour/include/hbstack.h
* reactivated for tests inline ASM code which can be used to access
HVM stack pointer in MT HVM builds. It can be enabled in 32bit
desktop windows Harbour builds by setting HB_ASM_TLS build time macro.
2010-03-25 23:19 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
! bin/postinst.bat
Fixed to not make unnecessary hbmk2 calls and warnings for

View File

@@ -203,7 +203,11 @@ typedef struct
extern HB_TLS_KEY hb_stack_key;
# endif
# if defined( __BORLANDC__ ) && defined( HB_STACK_PRELOAD ) && \
!defined( HB_OS_WIN_64 ) && !defined( HB_OS_WIN_CE ) && 0
!defined( HB_OS_WIN_64 ) && !defined( HB_OS_WIN_CE ) && \
defined( HB_ASM_TLS )
# if defined( HB_STACK_LOCAL_MACROS )
static HB_TLS_KEY hb_stack_key;
# endif
static __inline void * hb_stack_ptr_from_tls( void )
{
/* mov ecx,hb_stack_key */
@@ -216,8 +220,11 @@ typedef struct
return (void*) _EAX;
}
# define hb_stack_ptr_get() hb_stack_ptr_from_tls()
# elif defined( __MINGW32__ ) && \
!defined( HB_OS_WIN_64 ) && !defined( HB_OS_WIN_CE ) && 0
# elif defined( __MINGW32__ ) && defined( HB_ASM_TLS ) && \
!defined( HB_OS_WIN_64 ) && !defined( HB_OS_WIN_CE )
# if defined( HB_STACK_LOCAL_MACROS )
static HB_TLS_KEY hb_stack_key;
# endif
static __inline__ __attribute__ ((pure, malloc)) void * hb_stack_ptr_from_tls( void )
{
void * p;

View File

@@ -92,7 +92,7 @@
# else
static HB_TLS_ATTR PHB_STACK hb_stack_ptr = NULL;
# endif
# else
# else if !defined( hb_stack_ptr_get )
static HB_TLS_KEY hb_stack_key;
# endif
# else