Commit Graph

4205 Commits

Author SHA1 Message Date
Martin Vogel
4ed4b8024d 2001-07-23 22:30 MEST Martin Vogel <vogel@inttec.de> 2001-07-23 19:23:34 +00:00
Dave Pearson
ba0478158a 2001-07-23 18:24 GMT Dave Pearson <davep@davep.org>
* source/rtl/profiler.prg
     * Access method `nSeconds' in class HB_ProfileEntity now used
       HB_CLOCKS2SECS to calculate seconds.
2001-07-23 18:27:35 +00:00
Dave Pearson
6527471cc0 2001-07-23 18:15 GMT Dave Pearson <davep@davep.org>
* source/rtl/seconds.c
      * Renamed CLOCKS2SECS() to HB_CLOCKS2SECS().
2001-07-23 18:18:09 +00:00
Martin Vogel
56cc6b6e68 2001-07-23 20:10 MEST Martin Vogel <vogel@inttec.de> 2001-07-23 18:08:56 +00:00
Dave Pearson
a3491da45e 2001-07-23 17:37 GMT Dave Pearson <davep@davep.org>
* source/rtl/profiler.prg
     * Replace old profile reporting code with an OO approach.
2001-07-23 17:41:41 +00:00
Martin Vogel
97d5d8386b 2001-07-23 18:40 MEST Martin Vogel <vogel@inttec.de> 2001-07-23 16:38:00 +00:00
Ron Pinkas
1d690a55d6 2001-07-23 04:20 UTC-0800 Ron Pinkas <ron@profit-master.com>
* contrib/dot/pp.prg
     ! Various refinments in matching and outputing due to new observations about Clipper.
2001-07-23 11:18:49 +00:00
Ron Pinkas
fc7c28a6b3 2001-07-23 04:15 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbexprop.h
     + Added #define  HB_ET_MACRO_PARE    64

   * source/vm/hvm.c
   * source/vm/macro.c
   * source/macro/macro.y
   * include/hbexprb.c
     + Added support for HB_P_MACROPUSHPARE aand HB_P_MACROPUSHINDEX

   * include/hbmacro.h
     + Added #define HB_MACRO_GEN_PARE     16  /* generate parentesized list */

   * source/common/expropt1.c
   * source/common/expropt2.c

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added new opcode HB_P_MACROPUSHPARE

   /* This should complete macro list support for ( &cMacro ) and aArray[ &cMacro ] syntaxes. */
2001-07-23 11:13:06 +00:00
Ron Pinkas
e2e1eeb028 2001-07-22 14:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     * Changed 2nd parameter to BYTE iContext in hb_macroGetValue( HB_ITEM_PTR pItem, BYTE iContext )

   * include/hbexprop.h
     + Added #define  HB_ET_MACRO_LIST    16   /* &variable used as in literal arrays or parentesised expressions. */
     + Added #define  HB_ET_MACRO_INDEX   32   /* &variable used as arrays index. */

   * include/hbexprb.c
     + Added macro list support logic to hb_compExprUseArray()
     + Added generation of HB_P_MACROLIST,  HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX in hb_compExprUseMacro()

       /* HB_P_MACROLIST and HB_P_MACROLISTEND are only generated as an enevelope if array contains a one or more macro element
          which will generate an HB_P_MACROPUSHLIST. */

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added: new opcodes HB_P_MACROLIST, HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX.

   * source/vm/hvm.c
   * source/vm/macro.c
     + Added: support for new opcodes HB_P_MACROLIST, HB_P_MACROPUSHLIST, HB_P_MACROLISTEND, and HB_P_MACROPUSHINDEX.

       /* HB_P_MACROPUSHINDEX not completed yet.*/

   /* NOTE: This implements macro as literal array arguments list syntax <{ &cMacro }>.
           ( &Cmacro ) and Array[ &cMacro ] are not completed yet.

      *** All prgs must be recompiled due to new opcodes !!!
   */
2001-07-23 06:31:41 +00:00
Luiz Rafael Culik
a2e20a2882 See changelog 2001-07-22 18:25 GMT -3 2001-07-22 21:26:20 +00:00
Luiz Rafael Culik
1b1bc0135c See changelog 2001-07-22 18:00 GMT -3 2001-07-22 21:11:12 +00:00
Ryszard Glab
f6353a8674 ChangeLog 2001-07-22 20:15 UTC+0100 2001-07-22 19:03:52 +00:00
Luiz Rafael Culik
c6a41da2c6 See changelog 2001-07-22 08:40 GMT -3 2001-07-22 11:37:49 +00:00
Ryszard Glab
8e957ebe48 ChangeLog 2001-07-21 18:15 UTC+0100 2001-07-21 16:56:04 +00:00
Ryszard Glab
4f4a73e9f9 ChangeLog 2001-07-21 16:15 UTC+0100 2001-07-21 15:25:12 +00:00
Luiz Rafael Culik
18b756122d See changelog 2001-07-21 09:15 GMT -3 2001-07-21 12:14:07 +00:00
Luiz Rafael Culik
1867ce0fa5 See changelog 2001-07-20 20:00 GMT -3 2001-07-20 22:45:46 +00:00
Ron Pinkas
b42709f955 2001-07-20 22:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbexpra.c
    % Wrapped hb_compExprSetGetBlock() unneeded with simplex build, with #ifndef SIMPLEX

  * include/hbexprb.c
    * Disabled support for HB_PUSHMACROARG within hb_compExprUseAssign()

  * include/hbexprc.c
    * Disabled support for HB_PUSHMACROARG within hb_compExprPushOperEq()
2001-07-20 19:47:26 +00:00
Martin Vogel
7ff137b5c8 2001-07-20 15:10 GMT+2 Martin Vogel <vogel@inttec.de> 2001-07-20 13:04:40 +00:00
Martin Vogel
ad9e413e24 2001-07-20 13:10 GMT+2 Martin Vopgel <vogel@inttec.de> 2001-07-20 11:14:33 +00:00
Alexander S.Kresin
0f765fb8fb 2001-07-20 13:35 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-20 09:35:01 +00:00
Ron Pinkas
6f912ba2bd 2001-07-19 20:30 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     + Added #define HB_MAX_MACRO_ARGS 16

   * source/vm/hvm.c
   * source/vm/macro.c
     + Added support for nested HB_P_MACROPUSHARG

   * contrib/dot/pp.prg
     - Removed bSplit in PP_PreProLine(). Instead added logic to split the line unless line is a directive.
2001-07-20 03:32:06 +00:00
Luiz Rafael Culik
7695f4265c See changelog 2001-07-19 21:30 GMT -3 2001-07-20 00:24:26 +00:00
Ron Pinkas
59e84f3aa6 2001-07-19 12:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.sly
   * source/compiler/harbour.y
     + Added  "$$->value.asMacro.SubType = HB_ET_MACRO_SYMBOL" to "MacroVarAlias :" because in this context macro is a symbol.
2001-07-19 19:03:53 +00:00
Ron Pinkas
c099169a37 2001-07-19 02:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/compiler/harbour.slx
     * Changed storing of MACROTEXT from hb_compIdentifierNew() to hb_strdup().

   * tests/tstasort.prg
     ! Fixed R/T Error resulting from comparing unrelated types in sorting codeblock.
2001-07-19 08:58:53 +00:00
Alexander S.Kresin
fea0787cd7 2001-07-19 12:40 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-19 08:37:30 +00:00
Ron Pinkas
3928d386a1 2001-07-18 16:10 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/macro.c
   * source/vm/hvm.c
     % Simplified logic for suppoting macro lists. Removed global variables:
          int hb_vm_iFunCalls = 0, *hb_vm_aiMacroListParameters = NULL, hb_vm_iMacroListAllocated
       which are no longer needed. No longer using any logic in any PCODE case, other than HB_P_PUSHMACROARG.
       No longer using any arrays, or memory allocations.

   * include/hbexpra.c
   * include/hbexprb.c
     * HB_P_PUSHMACROARG will now be followed with a push symbol sequence, indicating its parrent function call.

   * include/hbpcode.h
     * Added decimal values into the description comments for readability.
2001-07-18 23:11:05 +00:00
Antonio Linares
036c3034ba local name dummy changed into lPrevProf 2001-07-18 10:27:44 +00:00
Antonio Linares
48514fe16b 2001-07-18 12:17 GMT+1 2001-07-18 10:19:26 +00:00
Antonio Linares
514d744c40 Added Clocks2Secs() function 2001-07-18 10:16:59 +00:00
Antonio Linares
b49dfd41f7 2001-07-18 11:45 GMT+1 2001-07-18 09:56:07 +00:00
Antonio Linares
967f0e4401 removed Patrick's copyright 2001-07-18 09:54:52 +00:00
Antonio Linares
e60a9295a8 Added __SetProfiler() call sample. 2001-07-18 09:53:05 +00:00
Antonio Linares
61fcc5cee3 Added hb_bProfiler support. 2001-07-18 09:49:52 +00:00
Antonio Linares
9a9e4a7804 Added (PRG level) __SetProfiler( On | Off ) 2001-07-18 09:46:42 +00:00
Maurilio Longo
bd80e8d997 2001-07-18 09:06 GMT+2 Maurilio Longo <maurilio.longo@libero.it>
* source/rtl/tbrowse.prg
     + activated scoping
   * include/hbapierr.h
     include/hbapiitm.h
     include/hbvm.h
     source/rtl/errorapi.c
     source/vm/hvm.c
     source/vm/itemapi.c
     ! fixed va_start() use or, better, changed it to be compatible with OS/2 EMX GCC
       compiler which REQUIRES that va_start() calls use a type which cannot be promoted
       to something bigger. That is, this call is correct:
       va_start(valist, ulUnsignedLongType)
       while this one is not:
       va_start(valist, usUnsignedShortType)
       Using a type which can be promoted to a bigger one leads to memory corruption.
       I think this requirement could exist even on other ANSI C compilers.
     ! Removed workaround inside hb_itemDo() and hb_itemDoC() to prevent this corruption.
2001-07-18 07:21:03 +00:00
Ron Pinkas
8abc351c51 2001-07-17 18:25 UTC-0800 Ron Pinkas <ron@profit-master.com>
* utils/hbpp/hbpp.c
     * Commented an exit() call in hb_compGenError() to continue processing after an error just like Harbour does.

   * include/hbapi.h
     + Added 2nd parameter BOOL bArg to hb_macroGetValue()

   * include/hbexpra.c
     + Added global BOOL hb_exp_bArgList = FALSE;

   * include/hbexprb.c
     + Added logic to generate HB_P_MACROPUSHARG rather than HB_MACROPUSH when pushed macro is a function call argument.

   * include/hbpcode.h
   * source/compiler/genc.c
   * source/compiler/hbfix.c
   * source/compiler/hbpcode.c
     + Added new HB_P_MACROPUSHARG

   * source/macro/macro.y
     + Added logic to generate an error if macro expression is list, unless servicing an HB_MACROPUSHARG.

   * source/vm/hvm.c
     + Added support for new HB_P_MACROPUSHARG calling hb_macroGetValue() with TRUE for bArg.

   * source/vm/macro.c
     + Added 2nd parameter BOOL bArg to hb_macroGetValue() to signify servicing of HB_P_MACROPUSHARG.

   * contrib/dot/pp.prg
     + Added bSplit 4th paramater to PP_PreProLine() defaulting to .T.. - Calls from PP_PreProFile() set it to .F..
2001-07-18 01:29:53 +00:00
Martin Vogel
c5b96dfe41 2001-07-17 22:30 MEST Martin Vogel <vogel@inttec.de> 2001-07-17 20:30:15 +00:00
Jean-Francois Lefebvre
5caa7066c1 2001-07-17 21:50 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-17 19:46:51 +00:00
Martin Vogel
354a417174 2001-07-17 20:00 MEST Martin Vogel <vogel@inttec.de> 2001-07-17 17:47:34 +00:00
Alexander S.Kresin
a2059fbe50 2001-07-17 18:35 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-17 14:37:29 +00:00
Jean-Francois Lefebvre
3ef4c3c4f9 2001-07-17 00:25 UTC+1 JFL (mafact) <jfl@mafact.com> 2001-07-16 22:23:35 +00:00
Alexander S.Kresin
4e9ffa1634 2001-07-16 22:55 GMT+3 Alexander Kresin <alex@belacy.belgorod.su> 2001-07-16 18:56:43 +00:00
Ron Pinkas
6ed48b5b25 2001-07-16 09:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
   * source/vm/macro.c
     + Wrapped macro statement support within #ifdef HB_MACRO_STATEMENTS (which is NOT defined).
2001-07-16 16:42:59 +00:00
Patrick Mast
efc6887efe 2001-07-16 15:19 GMT+1 Patrick Mast <harbour@PatrickMast.com>
* source/rtl/profiler.prg
     * Renamed function from Profiler() to HB_Profiler()
2001-07-16 13:21:37 +00:00
Patrick Mast
0ef3ee0a23 2001-07-16 13:00 GMT+1 Patrick Mast <harbour@PatrickMast.com>
* source/rtl/profiler.prg
     - Removed <lOnlyUsed> parameter
     + Added <cFile> parameter.
     + Added <lAll> parameter
     + Added Cunsumed time in seconds
     * Replaced MemoWrit() function with more controllable f* functions
     + profiler() returns a array with profiler info

       Profiler()
        => Writes NO info to file, returns Array of profiler info.
           Array only contains USED functions/classes.

       Profiler(,.t.)
        => Writes NO info to file, returns Array of profiler info.
           Array only contains ALL functions/classes.

       Profiler("profiler.txt")
        => Writes profiler info to <profiler.txt> and returns Array of
           profiler info. Array only contains USED functions/classes.

       Profiler("profiler.txt", .t.)
        => Writes ALL profiler info to <profiler.txt> and returns Array of
           profiler info. Array contains ALL functions/classes.
2001-07-16 12:16:32 +00:00
Ron Pinkas
d8977933fa 2001-07-16 03:40 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
   * source/vm/macro.c
     + Added missing #include "hbpp.h" to resolve strict compiler warnings.
2001-07-16 10:40:24 +00:00
Ron Pinkas
4454fbac5e 2001-07-16 03:00 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
     + Added call to hb_pp_Free() in hb_vmQuit() to release pp tables if loaded by macro evaluation.
2001-07-16 10:03:05 +00:00
Ron Pinkas
6c5369f4f8 2001-07-16 02:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* source/vm/hvm.c
     * Few improvements to recent support for lists in macro expansion

   * source/vm/macro.c
     + Added preprocessing support to hb_macroGetValue()

   * source/compiler/harbour.sly
   * source/compiler/harbour.y
     + Added rules to support MacroVar and MacroExpr as a standalone Statement.
2001-07-16 09:41:28 +00:00
Ron Pinkas
005cee072c 2001-07-15 20:45 UTC-0800 Ron Pinkas <ron@profit-master.com>
* include/hbapi.h
     + Added member iListElements to HB_MACRO structure.

   * source/macro/macro.y
     + Added rules to support a macro of a comma seperated list.

   * source/vm/hvm.c
     + Added: int hb_vm_iFunCalls = 0, *hb_vm_aiMacroListParameters = NULL, hb_vm_iMacroListAllocated
       to support new logic to track number of extra parameters introduced by means of a macro expanded to a list.

   * source/vm/macro.c
     + Added logic to track number of extra parameters introduced by means of a macro expanded to a list.
2001-07-16 03:43:13 +00:00