Commit Graph

5 Commits

Author SHA1 Message Date
Przemyslaw Czerpak
7f1dcb2a81 2009-03-29 19:20 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/include/hbstack.h
  * harbour/source/vm/estack.c
  * harbour/source/vm/fm.c
    + added support for thread local memory allocators by using MSPACE
      mechanism in DLALLOC.
      It can be enabled by compiling Harbour with HB_FM_DLMT_ALLOC macro.
      By default up to 16 (HB_MSPACE_COUNT macro) independent memory
      allocators is dynamically created for new threads. When more threads
      is used then allocators are shared between them and HVM tries to
      balance used allocators to reduce number of threads using the
      same allocator.
      It should give noticeable scalability improvement in some OS-es
      where default memory manages has pure MT performance.
      Please try to compiler speedtst.prg with Harbour compiled with
      and without HB_FM_DLMT_ALLOC and compare results in this test:
         speedtst --thread=2 --scale
      using real multiCPU machine.

  * harbour/source/vm/dlmalloc.c
    * pacified warning when FOOTERS are enabled

  * harbour/source/vm/garbage.c
    * cleanup comment
2009-03-29 17:13:52 +00:00
Przemyslaw Czerpak
caf47b7238 2008-11-10 14:41 UTC+0100 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/include/hbapi.h
  * harbour/source/common/hbstr.c
    + added hb_numToStr()

  * harbour/source/vm/estack.c
  * harbour/source/compiler/genc.c
  * harbour/source/compiler/gencc.c
    * use hb_numToStr() for integer number conversions

  * harbour/source/vm/dlmalloc.c
    * disable #pragma warning ... in MinGW builds. If some newer MinGW
      versions support it and it's useful then it can be enabled after
      checking MinGW version
2008-11-10 13:40:43 +00:00
Viktor Szakats
3876864996 2008-10-31 02:14 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/vm/dlmalloc.c
    ! Fixed minor MinGW warning. This fix also exists 
      as part of the next dlmalloc version (2.8.4b).
2008-10-31 01:14:51 +00:00
Viktor Szakats
79708d30b0 2008-10-26 22:25 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* source/common/hbfopen.c
    * Changed hb_fopen() to use fopen_s(), secure version of 
      fopen() for MSVS 2005 and upper.

  * source/common/hbstr.c
    + Added hb_snprintf() Harbour wrapper for snprintf() which 
      terminates the buffer with a '\0' char for CRTLs that 
      need this (like MSVC).
      MSVC _snprintf() doesn't do so.
    * hb_snprintf() used _snprintf_s(), secure version of 
      _snprintf() for MSVS 2005 and upper.
    ; TOFIX: There is still one strcpy() marked as non-secure 
             in debug lib. Could someone please take a look 
             at it and replace it with hb_strncpy() or something 
             else secure? The code is cryptic and as someone 
             not using the debugger, I didn't dare to touch it, 
             and this is the only one such call left.
    ; TODO: Change all snprintf() calls to hb_snprintf().
            When that happens, Harbour will no more use anything 
            depicted as "non-secure" by MSVS 2005/2008.
    ; NOTE: This function may need tweaking, pls review and 
            fix if/where needed.

  * source/vm/dlmalloc.c
    ! Fixed MSVC C++ mode compile error. This fix also exists 
      as part of the next dlmalloc version (2.8.4b).

2008-10-26 07:27 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
  * contrib/hbdbgfx/dbgfx.prg
    * Minor cleanup.
 
  * contrib/hbdbgfx/dbgfxc.c
    ! Fixed GPF when non-string parameter passed to 
      hb_outdebug().
2008-10-26 21:43:34 +00:00
Przemyslaw Czerpak
5ec4b754b9 2008-09-18 01:17 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
* harbour/source/vm/fm.c
  + harbour/source/vm/dlmalloc.c
    + added alternative memory manager written by Doug Lea
      It can be activated by recompiling Harbour with HB_FM_DL_ALLOC macro.
      Please make test on different platforms with different C compilers.
      Linux users will not benefit from it because the default GLIBC MM
      is derived from a version of code.
      NOTE: the results may strongly depend on total memory allocation
      and will be different then in simple memory tests.
2008-09-17 23:17:45 +00:00