Commit Graph

63 Commits

Author SHA1 Message Date
Ron Pinkas
d4b1d4c1fd 20000502-23:15 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* include/hbcomp.h
     - Removed members cParamTypes and iParamCount from COMSYMBOL
     + Added member USHORT iStackSize to FUNCTION structure
     * Modified member pStack of FUNCTION to not pre allocate any memory.
     + Added new structure COMDECLARED
     + Added: extern PCOMDECLARED hb_compDeclaredAdd( char * ) and extern PCOMDECLARED hb_compDeclaredFind( char * );
     + Adede: extern PCOMDECLARED  hb_comp_pFirstDeclared and extern PCOMDECLARED  hb_comp_pLastDeclared

   * include/hberrors.h
     + Added:
        #define HB_COMP_DUP_DECLARATION                 17
        #define HB_COMP_DECLARATION_CONFLICT            18

   * source/compiler/genc.c
     * Modified hb_compGenCCode() to free the Declared Function linked list.

   * source/compiler/harbour.c
     + Added: PCOMDECLARED hb_compDeclaredAdd( char * ) and PCOMDECLARED hb_compDeclaredFind( char * );
     + Adede: PCOMDECLARED  hb_comp_pFirstDeclared and PCOMDECLARED  hb_comp_pLastDeclared

   * source/compiler/harbour.y
     * Modified parsing of DECLARE FUNCTION to use new PCOMDECLARED rather than PCOMSYMBOL

   * source/compiler/hbgenerr.c
     + Added:
       "3Duplicate Declaration of Function %s"
       "3Function \'%s\' conflicting with its declaration"

   * source/compiler/hbpcode.c
     * Modifief hb_compStrongType() to utilize PCOMDECLARED rather than PCOMSYMBOL
     * Modifief hb_compStrongType() to increase the pFunc->pStack as needed.

   * tests/testwarn.prg
     + Added code to demonstrate more warnings.
2000-05-03 06:32:02 +00:00
Viktor Szakats
4f4de292f3 20000502-10:41 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-02 08:41:18 +00:00
Viktor Szakats
382f8da021 20000502-01:14 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-01 23:11:11 +00:00
Viktor Szakats
d2baf5dbfc 20000501-18:48 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-01 16:49:56 +00:00
Viktor Szakats
778c316fa5 20000501-16:08 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-05-01 14:05:47 +00:00
Ryszard Glab
91e200477b ChangeLog 20000426-13:15 GMT+1 2000-04-26 11:10:44 +00:00
Viktor Szakats
94ffc45414 20000425-03:38 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-25 01:38:22 +00:00
Ryszard Glab
2fb49392b4 ChangeLog 20000424-19:15 GMT+1 2000-04-24 17:09:30 +00:00
Viktor Szakats
523eb5e21d 20000423-04:02 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-23 01:59:52 +00:00
Viktor Szakats
7140870656 20000422-22:47 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-22 20:44:26 +00:00
Viktor Szakats
2d7f222ed0 20000422-21:36 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-22 19:33:37 +00:00
Viktor Szakats
28a4c0837e 20000422-20:37 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-22 18:34:36 +00:00
Viktor Szakats
12fcab20d5 20000422-18:41 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-22 16:38:48 +00:00
Viktor Szakats
09bb6f21b2 20000422-16:16 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-22 14:13:56 +00:00
Ron Pinkas
220b114c3e 20000421-14:20 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hvm.c
     + Added support for new PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE
     + Added void hb_vmPushOne( void ), void hb_vmPushZero( void ) and void hb_vmPushByte( BYTE )
     * Optimized HB_P_ZERO by using hb_vmPushZero()

   * source/compiler/harbour.c
     - REMMED not used hb_compGenPushInteger()
     * Optimized hb_compGenPushLong() to USE HB_P_ZERO, HB_P_ONE, HB_P_PUSHBBYTE, HB_P_PUSHBINT, or , HB_P_PUSHLONG as needed.
     * Optimized few pairs of hb_compGenPCode1() to use hb_compGenPCode2() instead.

   * source/compiler/genc.c
     + Added support for PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE

   * source/compiler/hbpcode.c
     + Added hb_compGenPCode2( BYTE, BYTE )

   * source/compiler/harbour.y
     * Optimized few pairs of hb_compGenPCode1() to use hb_compGenPCode2() instead.

   * source/include/hbpcode.h
     + Added PCodes HB_P_PUSHBYTE, and HB_P_PUSHONE

   * source/include/hbvm.h
     + Added:
        extern void    hb_vmPushOne( void ); /* pushes a 0 onto the stack */
        extern void    hb_vmPushZero( void ); /* pushes a 1 onto the stack */
        extern void    hb_vmPushByte( BYTE bNumber ); /* pushes a integer number onto the stack */

   * include/hbcomp.h
     - Removed #ifef of GenObj32
2000-04-21 21:51:21 +00:00
Ron Pinkas
9e13451dde 20000420-20:10 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.c
     + Added hb_compOptimizeFrames() - Resolves and or removes HB_P_FRAME & HB_P_SFRAME.
     * Modified hb_compFixReturns() to call hb_compOptimizeFrames()

   * source/compiler/genc.c
     - Removed the SWITCH LOOP from hb_compGenCCompact()

   * source/compiler/genhrb.c
     - Removed the SWITCH LOOP from hb_compGenCCompact()

   * source/compiler/genjava.c
     - Removed the SWITCH LOOP from hb_compGenCCompact()

   * source/compiler/genobj32.c
     - Removed the SWITCH LOOP from hb_compGenCCompact()
2000-04-21 03:22:00 +00:00
Viktor Szakats
e327eca7ee 20000421-00:34 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-20 22:31:42 +00:00
Viktor Szakats
caac685f3e 20000420-23:58 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-20 21:56:17 +00:00
Viktor Szakats
503b9a920e 20000420-23:33 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-20 21:41:47 +00:00
Ryszard Glab
a14bd974c9 ChangeLog 20000419-18:40 GMT+1 2000-04-19 16:29:42 +00:00
Ron Pinkas
68f8243cbe 20000419-05:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hvm.c
     + Added PCodes HB_P_JAMPSHORT, HB_P_JAMPSHORTFALSE and HB_P_JAMPSHORTTRUE

   * source/compiler/harbour.c
     + Added hb_compOptimizeJumps() - Jumps Optimizer.
     + Added hb_compSort_ULONG() Call back function for qsort - used in the Jump Optimizer.
     + Added support for new elements of _FUNC.
     * Modified hb_compGen*Jump*() to support Short Normal and Far Jumps.

   * source/include/hbexprb.c
     * Reverted handling of .OR. .AND. and IIF() to use default (FAR) JUMPs - note the use of (0) when calling hb_compGenJump*().

   * source/compiler/genc.c
     + Added support for HB_P_JAMPSHORT, HB_P_JAMPSHORTFALSE and HB_P_JAMPSHORTTRUE

   * source/compiler/cmdcheck.c
     + Added support for new switch -J[0|1] default is J1 which enables the Jump Optimizer - Use -J0 to disable.

   * source/compiler/hbgenerr.c
     - Removed following errors:
        "Jump offset too long for HB_P_JUMP needed HB_P_JUMPFAR",
        "Jump offset too long for HB_P_JUMPTRUE needed HB_P_JUMPFARTRUE",
        "Jump offset too long for HB_P_JUMPFALSE needed HB_P_JUMPFARFALSE",

     * Changed "HB_P_JUMPx not found when fixing offset" to "Jump PCode not found"

   * source/include/hberrors.h
     - Removed following defines:
   	#define HB_COMP_ERR_INVALID_JUMPTRUE            46
   	#define HB_COMP_ERR_INVALID_JUMPFALSE           47
   	#define HB_COMP_ERR_JUMP_NOT_FOUND              48

   * source/include/hberrors.h
     + Added following to __FUNC
   	ULONG  * pNOOPs;                 /* pointer to the NOOP array */
   	ULONG  * pJumps;                 /* pointer to the Jumps array */
   	int    iNOOPs;                   /* NOOPs Counter */
   	int    iJumps;                   /* Jumps Counter */

   * source/include/hbpcode.h
     + Added HB_P_JAMPSHORT, HB_P_JAMPSHORTFALSE and HB_P_JAMPSHORTTRUE
2000-04-18 12:41:08 +00:00
Viktor Szakats
8440262da1 20000415-12:38 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-15 10:36:42 +00:00
Ron Pinkas
aa77b49532 20000414-17:57 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/harbour.c
     * Corrected few Compiler warnings about type format

   * source/compiler/genc.c
     * Corrected few Compiler warnings about possible unitilized iBytes.
2000-04-15 00:57:56 +00:00
Ron Pinkas
d5fdbc0e34 20000413-19:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/compiler/hvm.c
     * Added FAR support to HB_P_SEQBEGIN and HB_P_SEQEND

   * source/compiler/harbour.c
     * Modified hb_compGenJumpThere() to revert back to "short" JUMPs when fixing the jumps, it will than use HB_P_NOOP for the unused 3rd byte.
     * It now supports all variations of JUMP including SEQBEGIN and  SEQEND as well as the logig to not interfere with "short" JUMPs.
     + Added more error handling to hb_compGenJumpThere()

   * source/include/hbexprb.c
     * Modified handling of .OR. .AND. and IIF() to use "short" JUMPs - note the use of -1 when calling hb_compGenJumpXXX().

   * source/compiler/genc.c
     + Added support for HB_P_NOOP (was missing!)
     * Modified HB_P_SEQBEGIN and HB_P_SEQEND to support FAR jumps

   * source/compiler/hbgenerr.c
     + Added following errors:
        "Jump offset too long for HB_P_JUMP needed HB_P_JUMPFAR",
        "Jump offset too long for HB_P_JUMPTRUE needed HB_P_JUMPFARTRUE",
        "Jump offset too long for HB_P_JUMPFALSE needed HB_P_JUMPFARFALSE",
        "HB_P_JUMPx not found when fixing offset"

   * source/include/hbexprb.c
     + Added following defines:
	#define HB_COMP_ERR_INVALID_JUMP                45
	#define HB_COMP_ERR_INVALID_JUMPTRUE            46
	#define HB_COMP_ERR_INVALID_JUMPFALSE           47
	#define HB_COMP_ERR_JUMP_NOT_FOUND              48
2000-04-14 02:59:49 +00:00
Viktor Szakats
9815009a5c 20000413-12:32 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-04-13 10:35:42 +00:00
Ron Pinkas
be8587e794 20000413-01:30 GMT-8 Ron Pinkas <Ron@Profit-Master.com>
* source/include/hbpcode.h
     + Added HB_P_JUMPFAR, HB_P_JUMPFARFALSE, and HB_P_JUMPFARTRUE

   * source/compiler/hvm.c
     + Added support for HB_P_JUMPFAR, HB_P_JUMPFARFALSE, and HB_P_JUMPFARTRUE to support longer than 2^15 jumps.

   * source/compiler/harbour.c
     * Enhanced hb_compGenJump(), hb_compGenJumpFalse(), hb_compGenJumpTrue(), hb_compGenJumpHere() and hb_compGenJumpThere()
       to utilize HB_P_JUMPFAR, HB_P_JUMPFARFALSE, and HB_P_JUMPFARTRUE to support longer than 2^15 jumps.

   * source/compiler/genc.c
     + Added support for HB_P_JUMPFAR, HB_P_JUMPFARFALSE, and HB_P_JUMPFARTRUE to support longer than 2^15 jumps.
2000-04-13 09:46:07 +00:00
Paul Tucker
ba63909eca 20000401-03:20 EST Paul Tucker <ptucker@sympatico.ca> 2000-04-01 08:23:40 +00:00
Paul Tucker
fc1dd5c2de 20000331-15:20 2000-03-31 20:28:51 +00:00
Paul Tucker
f099c88357 20000331-15:20 est 2000-03-31 20:21:15 +00:00
Viktor Szakats
859d976666 20000321-12:32 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-21 11:40:25 +00:00
Viktor Szakats
d30c00ebbe 20000315-16:23 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-15 15:23:49 +00:00
Viktor Szakats
28d912ee09 20000315-14:28 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-15 13:32:17 +00:00
Viktor Szakats
6b72938dee 20000313-15:57 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-13 15:03:53 +00:00
Viktor Szakats
3f335033d4 20000306-13:25 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-06 12:38:23 +00:00
Viktor Szakats
6cb05c3a78 20000302-17:45 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-02 16:50:38 +00:00
Viktor Szakats
3e3819e705 20000302-11:21 GMT+1 Victor Szakats <info@szelvesz.hu> 2000-03-02 11:58:22 +00:00
Ryszard Glab
d1209bb4bc ChangeLog 20000210-13:20 GMT+1 2000-02-10 12:05:07 +00:00
Ryszard Glab
af8fd924ff ChangeLog 20000201-13:00 GMT+1 2000-02-01 12:40:29 +00:00
Antonio Linares
11c9ad9118 2000-01-19 08:28 GMT+1 Antonio Linares <alinares@fivetech.com> 2000-01-19 07:34:14 +00:00
Ryszard Glab
e579205654 ChangeLog 20000115-15:15 2000-01-15 14:02:08 +00:00
Ryszard Glab
7a9444924f ChangeLog 19991209-17:10 1999-12-09 16:15:00 +00:00
Viktor Szakats
ef400b31cb 19991209-01:05 GMT+1 Victor Szel <info@szelvesz.hu> 1999-12-09 01:20:07 +00:00
Viktor Szakats
a4ec35927e 19991122-16:12 GMT+1 Victor Szel <info@szelvesz.hu> 1999-11-22 15:29:17 +00:00
Viktor Szakats
648b4b5a9d 19991122-01:14 GMT+1 Victor Szel <info@szelvesz.hu> 1999-11-22 00:27:07 +00:00
Ryszard Glab
97988f31a2 ChangeLog 19991120-14:35 GMT+1 1999-11-20 13:40:26 +00:00
Viktor Szakats
4da30aad87 19991119-10:02 GMT+1 Victor Szel <info@szelvesz.hu> 1999-11-19 09:14:23 +00:00
Ryszard Glab
ee515d4717 ChangeLog 19991116-21:55 1999-11-16 21:06:31 +00:00
Viktor Szakats
9479c19324 19991021-01:37 GMT+1 1999-10-20 23:48:44 +00:00
Viktor Szakats
f35ae58efd 19991020-12:59 GMT+1 1999-10-20 11:21:08 +00:00
Viktor Szakats
33a4b8ab19 19991014-18:17 GMT+1 1999-10-14 16:28:52 +00:00