Commit Graph

2326 Commits

Author SHA1 Message Date
peter
2a12c5f1da * define INCLUDEOK, which seems to work correct 1999-10-26 13:13:47 +00:00
peter
503d5a1cfa * const parameter is now checked
* better and generic check if a node can be used for assigning
  * export fixes
  * procvar equal works now (it never had worked at least from 0.99.8)
  * defcoll changed to linkedlist with pparaitem so it can easily be
    walked both directions
1999-10-26 12:30:40 +00:00
peter
a905c026f2 * fixed os2 linker 1999-10-26 12:25:04 +00:00
peter
4a74f18756 * fixed bug #301 1999-10-25 12:18:11 +00:00
peter
44a1fdfa7e * ansistring 2 chararray support
* optimized ansitring 2 pchar
1999-10-25 10:32:43 +00:00
Jonas Maebe
9feb0d4b0e + entry/exitcode for SystemV (Linux) and AIX/Mac from the Altivec
PIM (no AltiVec support yet though)
  * small fix to the a_cmp_* methods
1999-10-24 09:22:18 +00:00
Jonas Maebe
a9b5e27bc1 * finally got around making GetNextInstruction return false when
the current pai object is a AsmBlockStart marker
  * changed a loop in aopt386 which was incompatible with this change
1999-10-23 14:44:24 +00:00
peter
863f35e72b * reset linklibc 1999-10-22 14:42:40 +00:00
peter
8e7dd52200 * error when properties are passed to var parameters 1999-10-22 14:37:25 +00:00
peter
461430ad5c * fixed esi reload with as 1999-10-22 14:36:04 +00:00
peter
89b677a0ee * split type reading from pdecl to ptype unit
* parameter_dec routine is now used for procedure and procvars
1999-10-22 10:39:34 +00:00
florian
0dd2b51943 * problems with readln fixed: esi wasn't restored correctly when
reading ordinal fields of objects futher the register allocation
    didn't take care of the extra register when reading ordinal values
  * enumerations can now be used in constant indexes of properties
1999-10-21 16:41:37 +00:00
peter
fefc839b29 * redesigned linker object
+ library support for linux (only procedures can be exported)
1999-10-21 14:29:32 +00:00
peter
46b5193e9b * tp7 fix 1999-10-21 14:18:54 +00:00
Jonas Maebe
6de203e9dc * fixed a_loadaddress_ref_reg (mentioned as ToDo in rev. 1.5)
* small bugfix in a_load_store
1999-10-20 12:23:24 +00:00
Jonas Maebe
8f3c1464d5 * changed scratch_registers to (R_11,_R12,R_30) because R_0 is a special
case and R_31 is used as some kind of frame pointer under LinuxPPC
1999-10-20 12:21:34 +00:00
michael
9a3d560559 Added rtlinstall target 1999-10-15 20:47:52 +00:00
florian
fa19f0aa09 - removed the hcodegen use in the new cg, use cgbase instead 1999-10-14 14:57:51 +00:00
pierre
ff8ba9c049 * fix for uggly bug of Marco 1999-10-13 22:09:29 +00:00
peter
9f49a743ee * cgmessagepos functions 1999-10-13 10:42:15 +00:00
peter
c439829c5d * subscript support for tp_procvar 1999-10-13 10:40:55 +00:00
peter
19aa88a729 * moved mangledname creation of normal proc so it also handles a wrong
method proc
1999-10-13 10:37:36 +00:00
peter
851ad1af06 * var must match exactly error msg extended with got and expected type
* array constructor type check now gives error on wrong types
1999-10-13 10:35:23 +00:00
peter
1e940ee840 * dpmi can only be set after reading the options 1999-10-13 10:24:49 +00:00
florian
51b96fabc3 * compiler didn't complain about l1+l2:=l1+l2; it gave only an assembler
error, fixed
1999-10-12 22:35:48 +00:00
florian
8b9633266b * new codegenerator compiles again 1999-10-12 21:20:41 +00:00
pierre
281c77f2b1 * error if calling interrupt procedure 1999-10-12 15:50:54 +00:00
michael
fc4e4bc74a Nieuw error file from Michael Baikov 1999-10-12 14:41:23 +00:00
Jonas Maebe
9a8ecfc76b * fixed bug which sometimes caused a crash when optimizing blocks of code with
assembler blocks (didn't notice before because of lack of zero page protection
    under Win9x :( )
1999-10-11 11:11:31 +00:00
pierre
7bf3213a01 * use and remember that C functions with complex data results use ret $4 1999-10-08 15:40:47 +00:00
pierre
a7992b0232 * library list keeps doubles 1999-10-08 15:38:42 +00:00
Jonas Maebe
2ad775b888 * small bugfix in ArrayRefsEq 1999-10-07 16:07:35 +00:00
peter
e10d770cc3 * fixed stabs writting for forward types 1999-10-06 17:39:14 +00:00
peter
755fc18c07 * fixed empty const ansistring 2 pchar 1999-10-06 08:32:00 +00:00
peter
c61bb81b5e * new tool 1999-10-06 06:29:03 +00:00
pierre
781429264d * bug exit('test') + fail for classes 1999-10-05 22:01:52 +00:00
peter
5726bd1684 * fixed first pass for if branches if the expression got an error 1999-10-04 20:27:41 +00:00
michael
35feded070 * patch from peter for classes 1999-10-04 13:46:04 +00:00
peter
2d21165dd8 * removed objpasunit reference, tvarrec is now searched in systemunit
where it already was located
1999-10-03 19:44:41 +00:00
peter
1a52969bdd * inittable for record fixed (it was only checking for classes) 1999-10-03 19:41:38 +00:00
peter
b2ae851b20 * error check after pass1 of second for argument 1999-10-03 19:39:40 +00:00
peter
6b6fc5aac4 * fixed forward decl check for tp7/delphi 1999-10-03 19:38:39 +00:00
Jonas Maebe
6ca2b6e276 * CSE now updates the RegAlloc's 1999-10-01 13:51:40 +00:00
peter
ca15c4c4fb * class/record type forward checking fixed 1999-10-01 11:18:02 +00:00
peter
b444d6fbe8 * fixed forward checking within class/record 1999-10-01 11:15:57 +00:00
peter
532d85cd50 + procedure directive support in const declarations, fixes bug #232 1999-10-01 10:05:37 +00:00
peter
78246cf227 * fixed is_equal for proc -> procvar which didn't check the
callconvention and type anymore since the splitting of procoptions
1999-10-01 10:04:07 +00:00
peter
49fcd8aceb * forward type declaration rewritten 1999-10-01 08:02:45 +00:00
peter
e838769af8 * fixed object field parsing 1999-10-01 07:59:20 +00:00
Jonas Maebe
47b0fcf922 * fixed small efficiency which caused some missed optimizations (saves 1
assembler instruction on the whole compiler/RTL source tree! :)
1999-09-30 14:43:13 +00:00
Jonas Maebe
167f8d654f * fixes from daopt386.pas integrated 1999-09-29 13:50:34 +00:00
Jonas Maebe
e62d58ea51 * writing to a position in an array now only destroys registers
containing a reference pointing somewhere in that array (since my last
    fix, it behaved like a write to a pointer location)
1999-09-29 13:49:53 +00:00
florian
796234f596 * fixed bug #292 from bugs directory 1999-09-29 11:46:18 +00:00
peter
4e9c029777 * reinserted 1999-09-28 22:40:12 +00:00
florian
1bad993700 * fixed bug #608 1999-09-28 21:07:53 +00:00
florian
ed7dd22b82 * fixed bug #610
+ added $D- for TP in symtable.pas else it can't be compiled anymore
    (too much symbols :()
1999-09-28 20:48:23 +00:00
florian
f050faa02b * bug #617 fixed 1999-09-28 19:48:45 +00:00
florian
9f62eb480b * the maybe_push fix of Pierre wasn't 100%, the tree parameter
must contain a valid location (which is saved if necessary)
1999-09-28 19:43:45 +00:00
peter
6b2a0a3a5c * fixed result access in 'if result = XXX then'
* fixed const cr=chr(13)
1999-09-28 11:03:54 +00:00
peter
6b1ab5eb31 * procinfo is now a pointer
* support for result setting in sub procedure
1999-09-27 23:44:46 +00:00
peter
eb72952214 * fixed macro within macro endless-loop 1999-09-27 23:40:10 +00:00
peter
1936476701 * bracket support for macro define 1999-09-27 23:38:17 +00:00
peter
e45b7754be * fixed push/restore bug in div/mod 1999-09-27 23:37:26 +00:00
peter
1664cb06a1 * fixed -al with macro's 1999-09-27 23:36:33 +00:00
peter
0f8f8e8ff4 * fix for pointer reading in const with @type.method 1999-09-27 11:59:42 +00:00
peter
2687d75c38 + constant pointer support which can happend with typecasting like
const p=pointer(1)
  * better procvar parsing in typed consts
1999-09-26 21:30:15 +00:00
peter
dc7dcdd2a6 * short jmp with alignment problems fixed 1999-09-26 21:13:40 +00:00
florian
d6c22004f4 * exception patch of Romio nevertheless the excpetion handling
needs some corections regarding register saving
  * gettempansistring is again a procedure
1999-09-26 13:26:01 +00:00
peter
3c1d12b5c4 * fixed temp allocation for short->ansi 1999-09-23 21:20:37 +00:00
florian
00b063c621 * fixed 1/s problem from mailing list 1999-09-21 20:53:21 +00:00
Jonas Maebe
552b86f85b * fixed bug in destroyrefs (indexes are now handled as pointers) 1999-09-21 15:46:58 +00:00
peter
71f28ed588 * cs_create_smart instead of cs_smartlink
* -CX is create smartlink
  * -CD is create dynamic, but does nothing atm.
1999-09-20 16:38:51 +00:00
peter
bc62d96930 * restored old alignment, saves 40k on ppc386 1999-09-20 16:35:43 +00:00
florian
b8efed648c * fixed calls to procedures with manglednames=255 chars
(taking the address of such a procedure would still cause a problem!)
1999-09-19 20:55:11 +00:00
peter
7f63615b43 * @procvar fixes for tp mode
* @<id>:= gives now an error
1999-09-17 17:14:02 +00:00
florian
a0badc3a30 * initial revision 1999-09-17 09:59:19 +00:00
peter
1512794c0f * removed uses globals 1999-09-17 09:17:49 +00:00
peter
5db2ac22e5 * ppu header writting now uses currentppuversion 1999-09-17 09:14:56 +00:00
florian
fbbf8a505c * m68k compiler is again compilable (only gas writer, no assembler reader) 1999-09-16 23:05:51 +00:00
pierre
40777cd66e + warning if truncate unit name found 1999-09-16 14:18:12 +00:00
peter
870895b72b * better error checking 1999-09-16 13:41:37 +00:00
peter
956eb97743 * arrayconstructor 2 set conversion is now called always in the
beginning of firstadd
1999-09-16 13:39:14 +00:00
peter
64dcafcf80 * updated 1999-09-16 13:35:56 +00:00
pierre
fc0d67a752 + error if PPU modulename is different from what is searched
(8+3 limitations!)
  + cond ORDERSOURCES to allow recompilation of FP
    if symppu.inc is changed (need PPUversion change!)
1999-09-16 13:27:08 +00:00
pierre
910372616a * typo correction 1999-09-16 11:34:44 +00:00
pierre
a9b15a7344 * firstexit must now set procinfo.funcret_is_valid 1999-09-16 10:44:30 +00:00
pierre
84507b72ad + old_compiled_module to avoid wrong file info when load PPU files 1999-09-16 08:02:39 +00:00
pierre
b184fc0d75 + compiled_module to avoid wrong file info when load PPU files 1999-09-16 08:00:50 +00:00
pierre
beb97ee1d5 + problems with unit names longer than 8 letters 1999-09-16 07:59:32 +00:00
pierre
b5f43cf97b + RESULT pseudo var added in GDB debug info 1999-09-16 07:58:14 +00:00
pierre
1ef3c84bb8 * double del_reference removed 1999-09-16 07:56:46 +00:00
pierre
e4d44f4281 * BuildSourceList allways called for dependency in FP 1999-09-16 07:54:48 +00:00
pierre
cac8e59f0f * FLDPI must increment fpuvaroffset 1999-09-16 07:52:37 +00:00
florian
863df30860 + rtti is now automatically generated for published classes, i.e.
they are handled like an implicit property
1999-09-15 22:09:15 +00:00
florian
1c638f2952 * small fix to operator overloading when in MMX mode
+ the compiler uses now fldz and fld1 if possible
  + some fixes to floating point registers
  + some math. functions (arctan, ln, sin, cos, sqrt, sqr, pi) are now inlined
  * .... ???
1999-09-15 20:35:37 +00:00
daniel
2d925677e5 + Dw switch now does something. 1999-09-15 20:24:56 +00:00
florian
134030a529 * only small updates to work with the current compiler 1999-09-14 11:16:09 +00:00
florian
e73862f10d * per default a property is stored, fixed 1999-09-14 11:09:08 +00:00
florian
78977be752 * finally!? fixed
with <function with result in temp> do
    My last and also Peter's fix before were wrong :(
1999-09-14 07:59:46 +00:00
peter
0308dbcbfa * fixed crashes under plain dos 1999-09-13 22:56:17 +00:00
florian
c549646c95 * hopefully an error in Peter's previous commit fixed 1999-09-13 20:49:41 +00:00
peter
8a941c2568 * typo in previous commit open_array -> chararray :( 1999-09-13 16:28:05 +00:00
peter
1163717044 * fix for jmps to be always near
* string writing fixed
1999-09-13 16:27:24 +00:00
peter
8a6774104d * fix crash with empty object as childs 1999-09-13 16:26:32 +00:00
peter
0004218ade * remvoed unused var 1999-09-13 16:23:42 +00:00
florian
e8f6d4e836 * fixed a crash under Linux. Why doesn't have the damned Windows DPMI nil pointer
protection???
1999-09-12 21:35:38 +00:00
florian
6bbd06b90c * tnamedindexobject._name should be never accessed direct! Use the
function name instead
1999-09-12 15:45:11 +00:00
florian
c3b3c19887 + implemented creation of methodname/address tables 1999-09-12 14:50:50 +00:00
florian
02c2611b20 * bugs 593 and 607 fixed
* some other potential bugs with array constructors fixed
  * for classes compiled in $M+ and it's childs, the default access method
    is now published
  * fixed copyright message (it is now 1993-99)
1999-09-12 08:48:03 +00:00
florian
35eef74308 * bug fix for @tobject.method, fixes bug #557, 605 and 606 1999-09-11 19:47:26 +00:00
florian
6165d59dfd * bug #603 fixed 1999-09-11 11:23:58 +00:00
florian
a42799b4f2 * fix of my previous commit, make cycle was broken 1999-09-11 11:10:39 +00:00
florian
1609dde2ca * fixed bug #596
* fixed some problems with procedure variables and procedures of object,
    especially in TP mode. Procedure of object doesn't apply only to classes,
    it is also allowed for objects !!
1999-09-11 09:08:31 +00:00
florian
4c2361303c * some more fixes for stored properties 1999-09-10 20:57:33 +00:00
florian
a9d8bfa1f7 * some bug fixes (e.g. must_be_valid and procinfo.funcret_is_valid)
* most things for stored properties fixed
1999-09-10 18:48:00 +00:00
peter
9ef54daf28 * fixed with <calln> do
* fixed finalize/initialize call for new/dispose
1999-09-10 15:42:50 +00:00
peter
96bd939047 * added symbol_end 1999-09-10 15:41:18 +00:00
peter
40291ee626 * fixed array check for operators, becuase array can also be a set 1999-09-10 15:40:46 +00:00
michael
118a99513d * Stored specifier for properties is now correctly parsed 1999-09-08 21:06:06 +00:00
peter
dd0d54cdef * added pointer and asm field axx 1999-09-08 16:07:21 +00:00
peter
be49731850 * pointer add/sub is now as expected and the same results as inc/dec 1999-09-08 16:05:29 +00:00
peter
05f2be0455 * better support for object fields and more error checks for
field accesses which create buggy code
1999-09-08 16:04:01 +00:00
peter
91962591f3 * tokendat compiles for tp
* tokens.dat supplied by default
1999-09-08 16:02:03 +00:00
Jonas Maebe
d8cce3f25a * some small changes so the new optimizer is again compilable 1999-09-08 15:05:43 +00:00
Jonas Maebe
28ddb689cb * some small changes so the noew optimizer is again compilable 1999-09-08 15:01:29 +00:00
peter
d2fd1ea874 * fixed bug #248 1999-09-08 08:05:44 +00:00
pierre
79f1833059 * runerror => do_halt 1999-09-07 15:22:20 +00:00
pierre
7439aa4828 * use do_internalerror insetead of runerror 1999-09-07 15:11:00 +00:00
pierre
a5c2aa5df8 * use do_halt instead of halt 1999-09-07 15:10:04 +00:00
pierre
1540c674d3 * runerror => do_internalerror 1999-09-07 15:08:51 +00:00
pierre
9d5205f1e9 * avoid some infinite recursions 1999-09-07 15:07:49 +00:00
pierre
eca64b4ab6 * use do_halt instead of runerror 1999-09-07 15:05:19 +00:00
pierre
aaba6f160a * powerpc default was alpha !! 1999-09-07 15:02:41 +00:00
pierre
ee98742add * elem in set_type did not work yet 1999-09-07 15:01:33 +00:00
pierre
c528cf639f * bugfix for 237 and 244 1999-09-07 14:59:40 +00:00
Jonas Maebe
88306ed3f3 * framepointer cannot be changed to esp for methods 1999-09-07 14:12:35 +00:00
pierre
b72dcb6d51 * arraytokeninfo type set to ttokenarray 1999-09-07 14:06:49 +00:00
pierre
f5d21809d7 * halt removed in do_lowhigh 1999-09-07 14:05:11 +00:00
pierre
2e65e6a618 + added do_halt procedure 1999-09-07 14:03:48 +00:00
peter
6f3c128959 * better OFFSET support for reference reading 1999-09-07 13:03:10 +00:00
peter
7fd914d24c * @(<x>) support 1999-09-07 08:01:20 +00:00
peter
ea753c5807 * reload esi in except block to allow virtual methods 1999-09-07 07:56:37 +00:00
peter
2c94850f4c * small array push to open array fixed, open array always needs addr
pushing
1999-09-07 07:54:23 +00:00
peter
f89f09413b * > < >= <= support for boolean
* boolean constants are now calculated like integer constants
1999-09-07 07:52:19 +00:00
peter
453773ecb2 * TYPE support 1999-09-07 07:45:29 +00:00
florian
ac20c15ef4 + fld reg;fxxx to fxxxr reg optimization 1999-09-05 14:27:19 +00:00
Jonas Maebe
9793c4eee9 * fixed typo's in -darithopt 1999-09-05 12:37:50 +00:00
florian
96dd7c82fa * bug #580 fixed 1999-09-04 20:50:08 +00:00
florian
f7af47f31f * bug #577 fixed 1999-09-04 20:29:11 +00:00
Jonas Maebe
56ddb9a0af + implemented most necessary methods 1999-09-03 13:15:47 +00:00
Jonas Maebe
f4180329fc + implemented some parameter passing methods, but they require\n some more helper routines\n * fix for loading symbol addresses (still needs to be done in a_loadaddress)\n * several changes to the way conditional branches are handled 1999-09-03 13:14:11 +00:00
Jonas Maebe
818885454f * several changes to the way conditional branches are handled\n * some typos fixed 1999-09-03 13:11:59 +00:00
Jonas Maebe
3086a9f355 * condition is now zeroed using fillchar\n because on powerpc it's a record now 1999-09-03 13:10:11 +00:00
Jonas Maebe
6be94d5604 * fixed typo regarding scratchregs pointer 1999-09-03 13:09:09 +00:00
Jonas Maebe
4abc13fd78 * defined some necessary virtual helper methods 1999-09-03 13:08:36 +00:00
pierre
781117b288 * message about conditionals changed to Hint 1999-09-03 10:54:22 +00:00
peter
0b396c0466 * $IFNDEF is 7 chars and not 6 chars 1999-09-03 10:02:48 +00:00
peter
6b25740f01 * included the 1.60 version of Pierre which was lost ! 1999-09-03 10:00:49 +00:00
peter
7ad9983cb7 * reading of search paths fixed to work as expected 1999-09-03 09:31:22 +00:00
pierre
29bdd631a1 * tokens.dat only used for TP, and also removed from
compiler dependencies
1999-09-03 08:37:34 +00:00
daniel
1777e0c901 * Could not compile with TP, some arrays moved to heap
* NOAG386BIN default for TP
  * AG386* files were not compatible with TP, fixed.
1999-09-02 18:47:41 +00:00
florian
63ceb87e8f * problems with -Or fixed: tdef.isfpuregable was wrong! 1999-09-02 17:07:38 +00:00
peter
bd55afa666 * fixed double dispose of propsymlist 1999-09-02 09:23:51 +00:00
peter
037319700d * moved parsing interface/implementation to -vu 1999-09-01 22:18:37 +00:00
peter
678aa200f1 * fixed crash with assigned() 1999-09-01 22:08:58 +00:00
peter
e767ef9897 * turn off stripping if profiling or debugging 1999-09-01 22:07:20 +00:00
daniel
6d332cfc77 * Vertalingsfouten verbeterd. 1999-09-01 19:08:20 +00:00
florian
860747346f * fixed writing of class rtti: vmt offset were written wrong 1999-09-01 13:44:56 +00:00
peter
c60bf19553 * update for new push_lea_loc 1999-09-01 09:42:13 +00:00
peter
4a9bbef37a * removed warning 1999-09-01 09:37:14 +00:00
peter
8e5c13cf47 * fixed temp allocation for arrayconstructor 1999-09-01 09:26:21 +00:00
pierre
72507a8397 + tmacrosym.is_used set 1999-08-31 15:55:45 +00:00
pierre
5b38d71a12 * in_second_compile cleaned up, in_compile and in_second_load added 1999-08-31 15:51:10 +00:00
pierre
5536344e9f + startup conditionnals stored in PPU file for debug info 1999-08-31 15:47:56 +00:00
pierre
6a5ee6b933 * do_crc must be false for all browser stuff
+ tmacrosym defined_at_startup set in def_macro and set_macro
1999-08-31 15:46:21 +00:00
pierre
f2f1fed583 + tmacrosym is_used and defined_at_startup boolean fields added 1999-08-31 15:42:24 +00:00
pierre
c2abde1296 * tempclosing of ppufiles under dos was wrong 1999-08-30 16:21:40 +00:00
pierre
20d1fb52b6 * problem with maybe_push/restore solved hopefully 1999-08-30 12:00:44 +00:00
peter
0274f3a08b * fixed crash in psub
* ansistringcompare fixed
  * support for #$0b8
1999-08-30 10:17:56 +00:00
pierre
6c8bdc4351 * last change undone because cycle was broken 1999-08-30 09:41:31 +00:00
peter
61bb479584 * fixed crash in restore 1999-08-28 17:48:34 +00:00
peter
c71963e885 * resources are working correct 1999-08-28 17:46:10 +00:00
florian
656d4330cd * bug #519 fixed 1999-08-28 15:34:16 +00:00
michael
76f28920e9 * Fixed small bug: next field in resourcelist was not initialized 1999-08-27 15:55:36 +00:00
pierre
55f6e70490 * double checksum problem solved 1999-08-27 14:52:56 +00:00
peter
e54801a2fe * fixed crash with typedconst array 1999-08-27 14:37:50 +00:00
pierre
71829524a2 + define SHORT_ON_FILE_HANDLES for DOS targets
causes tempclose of ppufiles
  + double_checksum code released
    (you can try with -dDONT_USE_DOUBLE_CHECKSUM to see the difference)
    this allow second compilation of compiler without any
    unit recompilation !!!!
1999-08-27 10:57:56 +00:00
pierre
92801b8a35 * some code adapted to CRC_only computation
+ main file is search in unitspathlist
    and triggers do_compile flag
  * some changes to get identical CRC vaules after
    interface and after implementation
1999-08-27 10:54:45 +00:00
pierre
7288d7bd89 + simplify_ppu code added :
sets all registers used at PPU writing
  * tprocdef mangledname writing is CRC relevant
1999-08-27 10:52:19 +00:00
pierre
3d12f8119a + tppufile.tempclose and tempopen added
* some changes so that nothing is writtedn to disk while
    calculating CRC only
1999-08-27 10:48:40 +00:00
pierre
03263b9285 + some EXTTEMPREGDEBUG code added 1999-08-27 10:46:26 +00:00
pierre
d585f0544f options -Ca sets simply_ppu to true 1999-08-27 10:45:00 +00:00
pierre
01c6ff7169 + interface CRC check with ifdef Test_double_checksum added 1999-08-27 10:43:20 +00:00
pierre
154386ac6a * pi_is_global was missing for global methods
+ code to restore overloaded list order
    (necessary to get same CRC values after interface and after
    implementation)
1999-08-27 10:41:46 +00:00
pierre
e1744c9db6 * uf_local_browser made problem when computing interface CRC 1999-08-27 10:39:24 +00:00
pierre
088f2ba6cc + EXTTEMPREGDEBUG code added 1999-08-27 10:38:31 +00:00
michael
ea0a5097c8 + Inittables should not contain fields which are classes 1999-08-27 10:24:34 +00:00
peter
2f95239feb * fixed crash when childof was nil 1999-08-26 21:17:39 +00:00
peter
cbd7de9e6f * write date of the compiler into the executable 1999-08-26 21:16:21 +00:00
peter
1ae7f425c5 * array elementsize of 0 doesn't crash anymore 1999-08-26 21:13:58 +00:00
peter
5e26e5d0c9 * better error recovery for case 1999-08-26 21:10:08 +00:00
michael
dc3cc78caa + Hopefuly last fixes for resourcestrings 1999-08-26 20:24:37 +00:00
Jonas Maebe
acc55a83c7 * first implementation of concatcopy (requires 4 scratch regs) 1999-08-26 14:53:41 +00:00
Jonas Maebe
6531f55008 * added segprefix field for i386 in tainstruction object 1999-08-26 14:52:59 +00:00
Jonas Maebe
fc6b6505fd * changed get_scratch_reg so it actually uses the\n scratch_reg_array_pointer 1999-08-26 14:51:54 +00:00
Jonas Maebe
bb974dc8aa * fixed small type in TP conditional 1999-08-26 14:50:52 +00:00
pierre
0e54531413 * remove trailing space in cfg files 1999-08-25 22:51:00 +00:00
peter
da93f32ae0 * resources are working again 1999-08-25 16:41:04 +00:00
peter
01fc4505c9 * symbol name is now written using separate asmwrite() calls to overcome
> 255 char strings
1999-08-25 16:03:46 +00:00
Jonas Maebe
5fc1435036 * changed pai386, paippc and paiapha (same for tai*) to paicpu (taicpu) 1999-08-25 11:59:32 +00:00
michael
9f61960ca1 * more resourcestring changes 1999-08-24 22:38:51 +00:00
peter
06a845c5e8 * MEMDEBUG to see the sizes of asmlist,asmsymbols,symtables 1999-08-24 13:13:57 +00:00
michael
85ff3e15db + changes for resourcestrings 1999-08-24 12:01:32 +00:00
pierre
87847fac70 * wrong testregisters32 placement corrected 1999-08-24 09:07:04 +00:00
pierre
2fe4c8b727 * hnewn location corrected 1999-08-23 23:49:21 +00:00
pierre
4fcd7adf4a * del_reference moved to respect registers32 in secondin 1999-08-23 23:46:42 +00:00
pierre
e7d56c97a8 * setelementn registers32 corrected 1999-08-23 23:44:05 +00:00
pierre
cf18a314d1 * hnewn reg allocation corrected 1999-08-23 23:42:52 +00:00
pierre
57c239961e * for reg allocation corrected 1999-08-23 23:41:45 +00:00
pierre
71bcdce000 * in_inc_x register allocation corrected 1999-08-23 23:41:04 +00:00
pierre
a7bc2dfb17 + TEMPREGDEBUG code added 1999-08-23 23:38:18 +00:00
pierre
1c9e86eb05 * firstnot register counting error corrected 1999-08-23 23:37:01 +00:00
pierre
f3c414e84a * one more register needed if hnewn with CREGISTER 1999-08-23 23:34:15 +00:00
pierre
0fb02e9155 * double del_location removed in add_set 1999-08-23 23:31:00 +00:00
pierre
009aaad4a9 + dummy InitCpu/DoneCpu 1999-08-23 23:27:54 +00:00
pierre
409b092c87 + TEMPREGDEBUG code, test of register allocation
if a tree uses more than registers32 regs then
    internalerror(10) is issued
  + EXTTEMPREGDEBUG will also give internalerror(10) if
    a same register is freed twice (happens in several part
    of current compiler like addn for strings and sets)
1999-08-23 23:25:58 +00:00
Jonas Maebe
1ec81566cc + checksequence (processor independent)\n + processor independent part of docse 1999-08-23 14:41:12 +00:00
michael
ec590068e2 * resourcestrings ams list needs unitname prepended 1999-08-23 11:48:23 +00:00
michael
d57e16aec2 * Hopefully final attempt at resourcestrings 1999-08-23 11:45:39 +00:00
Jonas Maebe
1ef759bc9a * fixed <= and >= for sets 1999-08-23 10:35:13 +00:00
Jonas Maebe
618547adf0 * fixed pop/push optmization 1999-08-23 10:20:46 +00:00
michael
f0fa79dad2 + Patch from pierre 1999-08-20 10:17:01 +00:00
michael
5f30aacb93 + Fixed ifdef NOAG386BIN bug 1999-08-19 20:05:09 +00:00
pierre
82999520e4 + faillabel for _FAIL 1999-08-19 13:10:18 +00:00
pierre
63608b6dbb * emit_??? used 1999-08-19 13:08:43 +00:00
pierre
1f1b9e7883 * _FAIL will now free memory correctly
and reset VMT field on static instances
    (not yet tested for classes, is it allowed ?)
  + emit_.... all variant defined here to avoid tons of
    exprasmlist^.concat(new(pai386,...) in cg386***
1999-08-19 13:06:45 +00:00
pierre
1c8a7a1924 + label faillabel added for _FAIL support 1999-08-19 13:02:08 +00:00
florian
2359c7c013 + initial revision 1999-08-18 19:29:39 +00:00
florian
c512d38256 + implemented initilizing of data for the new code generator
so it should compile now simple programs
1999-08-18 17:05:53 +00:00
Jonas Maebe
56524f33df + compilable!
+ dataflow analyzer finished
  + start of CSE units
  + aoptbase which contains a base object for all optimizer objects
  * some constants and type definitions moved around to avoid circular
    dependencies
  * moved some methods from base objects to specialized objects because
    they're not used anywhere else
1999-08-18 14:32:20 +00:00
Jonas Maebe
cd3160e0c2 + some constants for the new optimizer 1999-08-18 13:26:23 +00:00
Jonas Maebe
8dc154ce24 * minor fixes regarding the reading of operands 1999-08-18 13:25:54 +00:00
pierre
d04add7c9f * esp loading corrected 1999-08-18 11:35:59 +00:00
michael
94d0da0639 RTTI writing patch 1999-08-17 13:58:56 +00:00
peter
19c48bf75b * arrayconstructor -> arrayofconst fixed when arraycosntructor was not
variant.
1999-08-17 13:26:06 +00:00
peter
8e653af606 * arrayconstructor -> openarray type conversions for element types 1999-08-16 23:23:38 +00:00
peter
da93a8740e * range check for array of const 1999-08-16 23:20:28 +00:00
peter
63499d5cc5 * fixes from gabor 1999-08-16 18:25:49 +00:00
peter
f225a5f0bd * reset resourcestringlist in newmodule. 1999-08-16 18:23:56 +00:00
pierre
576a2e4f42 * error in stabs for tclassrefdef corrected 1999-08-16 16:26:04 +00:00
pierre
96fdcfb1f2 * fix for DLL relocation problems
* external bss vars had wrong stabs for pecoff
  + -WB11000000 to specify default image base, allows to
    load several DLLs with debugging info included
    (relocatable DLL are stripped because the relocation
     of the .Stab section is misplaced by ldw)
1999-08-16 15:35:20 +00:00
daniel
157bc635ce * Fixed bugs. 1999-08-16 12:54:02 +00:00
peter
7b5e8ad618 * fixed property writeaccess which was buggy after my previous
subscribed property access
1999-08-15 22:47:45 +00:00
michael
1fc54ed702 + No Intel and binary writer for linux=smaller executable 1999-08-15 22:16:51 +00:00
michael
f2513ba3cb Changes for resource strings 1999-08-15 21:57:58 +00:00
peter
926a6c2d3e + normalset,smallset writing 1999-08-15 10:47:48 +00:00
peter
8d9aa81d3a * hack to support property with record fields 1999-08-14 00:38:53 +00:00
peter
2e99c59182 * array constructor support 1999-08-14 00:36:05 +00:00
peter
d7a37edfbd * support for array constructors extended and more error checking 1999-08-13 21:33:09 +00:00
peter
ab8edb8970 * more reference types support
* arraydef size returns elementsize, also for multiple indexing array
1999-08-13 21:28:36 +00:00
peter
d03f29df08 * more fixes for push_addr 1999-08-13 21:27:08 +00:00
peter
54baf96873 * first things to include lineinfo in the executable 1999-08-13 15:44:57 +00:00
peter
be98f80d7f * fixed proc->procvar conversion for tp_procvar mode, it now uses
also the genload(method)call() function
1999-08-13 15:43:59 +00:00
peter
ceecb1c885 * fixed push_addr_param for records < 4, the array high<low range check
broke this code.
1999-08-13 15:38:23 +00:00
peter
13c7fed55d * fixed suffix writing for a_setcc 1999-08-13 15:36:30 +00:00
pierre
8b4c7f2402 + stabs for classes and classref working,
a class still needs an ^ to get that content of it,
    but the class fields inside a class don't result into an
    infinite loop anymore!
1999-08-13 14:24:17 +00:00
pierre
7d2b96d4d6 * added inherited init call to tstringcontainer.init_no_double for Peter 1999-08-12 23:19:05 +00:00
peter
bfe185d206 + KNI instructions 1999-08-12 14:36:01 +00:00
peter
631d19fc85 * tp_procvar mode call->loadn fixed 1999-08-12 14:34:28 +00:00
peter
420127efe6 * long line fix 1999-08-12 14:31:20 +00:00
peter
fc8211bbb8 * tlinker object is now inherited for win32 and dos
* postprocessexecutable is now a method of tlinker
1999-08-11 17:26:31 +00:00
peter
0b82a7dfd6 * fixed rva writting for section relocs
* fixed section flags for edata and idata
1999-08-11 17:17:38 +00:00
Jonas Maebe
25a7035988 - removed RefsHaveSymbol define (I think references on all processors can have a symbol) 1999-08-11 14:24:38 +00:00
Jonas Maebe
1d923a08ec * some fixes to RegReadByInstr 1999-08-11 14:23:39 +00:00
Jonas Maebe
265f3c09be + first version, added TAsmDFACpu object and CpuDFA method 1999-08-11 14:22:56 +00:00
Jonas Maebe
dbb0bebac9 * finished DoDFAPass2 1999-08-11 14:20:51 +00:00
Jonas Maebe
aa5615a2e1 * InstrSinceLastMod parameter added to destroy/modify methods 1999-08-11 14:20:11 +00:00
michael
3afbd99ce6 * RTTI fix from Sebastian Guenther 1999-08-11 08:56:53 +00:00
pierre
42faa483e2 * unitid changed to word 1999-08-10 16:25:42 +00:00
pierre
c63cfc6f7a * linking to C code with cdecl;external; was broken 1999-08-10 16:24:44 +00:00
pierre
7982d8c842 * vmtmethodoffset made cross target compatible 1999-08-10 13:22:08 +00:00
pierre
aca546d6d2 * fpuvaroffset not increased for f32bit float type 1999-08-10 13:21:08 +00:00
pierre
d85a8886fd * bind_win32_dll removed (Relocsection used instead)
* now relocsection is true by default ! (needs dlltool
    for DLL generation)
1999-08-10 12:51:14 +00:00
pierre
da2d4a76ce * fpuvaroffset problems solved 1999-08-10 12:47:53 +00:00
Jonas Maebe
2e53fd266b + implemented RegReadByInstr 1999-08-10 12:40:20 +00:00
pierre
88185b4be3 + procsym field of tprocdef set 1999-08-10 12:37:44 +00:00
pierre
be2b57963f * use of procsym field for correct gdb info in local procedures
* exported DLL vars made global to be able to use DLLTOOL with themz
1999-08-10 12:36:31 +00:00
pierre
01b728b188 + procsym field in tprocdef to allow correct gdb info generation 1999-08-10 12:34:49 +00:00
pierre
a435c90fc8 * pprocsym defined earlier for use in tprocdef 1999-08-10 12:33:36 +00:00
pierre
4565d76c4e * avoid overflow in tarraydef.size 1999-08-10 12:32:13 +00:00
pierre
e5df050607 * avoid unused locals 1999-08-10 12:30:00 +00:00
pierre
5d850161c0 * not stack check inside catch !! 1999-08-10 12:27:15 +00:00
pierre
a2b790cfa7 * avoid double .edata section if using DLLTOOL 1999-08-10 12:26:20 +00:00
peter
793b28882f * classes vmt changed to only positive addresses
* sharedlib creation is working
1999-08-09 22:19:46 +00:00
peter
67e1069659 * fixed crash after wrong para's with class contrustor 1999-08-09 22:16:29 +00:00
peter
4fbc3dbb9e * fixed disposing of tree node 1999-08-09 22:14:46 +00:00
peter
8b82809292 * fixed writing of lost memory which should be after donecompiler 1999-08-09 22:13:43 +00:00
peter
2e34ee62f3 * updated for symtable updates 1999-08-09 14:09:04 +00:00
Jonas Maebe
f45d657875 commit.msg 1999-08-09 14:07:22 +00:00
peter
f7dd7ed1ed * fixed pushing of self with methodpointer 1999-08-09 10:37:55 +00:00
Jonas Maebe
909329d3f2 * movzed all files to new directory 1999-08-08 13:34:42 +00:00
Jonas Maebe
ff29bf7480 + added copyright header/GNU license info
* made the assembler optimizer almost completely OOP
  * some code style clean up and extra comments
  * moved from the new/aopt to the /new and /new/i386 dirs
1999-08-08 13:24:50 +00:00
florian
e6c1b96cff * some small problems fixed 1999-08-07 14:20:55 +00:00
daniel
df07c1a0f5 * Recommitted the arraydef overflow bugfix. 1999-08-07 13:36:54 +00:00
daniel
347a47e588 * Fixed open arrays 1999-08-07 13:24:34 +00:00
peter
57cf1e75a7 * better fix for muln register allocation 1999-08-07 11:29:26 +00:00
peter
1d5226f856 * removed daniels changes, because it broke all 'array of ...' code 1999-08-06 23:36:42 +00:00
florian
8abdd311fd * implemented some stuff for assignments 1999-08-06 18:05:52 +00:00
florian
ef92444ffd + definition of concatcopy 1999-08-06 17:00:54 +00:00
Jonas Maebe
0284ece771 + first commit (nothing compilable, still needs to be made more OOP) 1999-08-06 16:49:15 +00:00
Jonas Maebe
ec34af8955 * PowerPC compiles again, several routines implemented in cgcpu.pas
* added constant to cpubase of alpha and powerpc for maximum
    number of operands
1999-08-06 16:41:10 +00:00
Jonas Maebe
35cac501c4 * declared getcopy virtual, since it's already declared as such
in cobjects.pas (FPC doesn't error on that, TP does)
1999-08-06 16:38:37 +00:00
Jonas Maebe
a1ff14ce89 * completed bugfix done by Florian o I wouldn't get conflicts :) 1999-08-06 16:37:45 +00:00
florian
fb39d568f2 * for Jonas: else he will get conflicts 1999-08-06 16:27:26 +00:00
florian
03b8a356ce + initial revision 1999-08-06 16:15:38 +00:00
michael
75a3aea72e + introduced tainstruction 1999-08-06 16:04:05 +00:00
florian
61523ae890 * made the alpha version compilable 1999-08-06 15:53:50 +00:00
florian
76a851a1d4 + cpu flags added, mainly for the new cg 1999-08-06 15:30:17 +00:00
florian
eca7460542 * made the alpha version compilable 1999-08-06 14:15:51 +00:00
michael
fe08a50b7e Empty Virtual methods inserted 1999-08-06 13:53:54 +00:00
florian
c5e988c9f9 * more changes ... 1999-08-06 13:26:49 +00:00
michael
97393a3370 * Removed C style comments. 1999-08-06 13:11:44 +00:00
Jonas Maebe
7e35b38254 * vo_fpuregable is now also removed in make_not_regable 1999-08-06 12:49:36 +00:00
Jonas Maebe
05fd76aeb6 * fix for regvars with the val code 1999-08-06 12:43:13 +00:00
peter
3b89a3c501 * fixed message which was wrong styled 1999-08-06 11:13:17 +00:00
daniel
9cb0d98188 + New error message: Segment too large 1999-08-06 09:25:32 +00:00
peter
c5faa84f92 * saveregister is now working and used for assert and iocheck (which has
been moved to system.inc because it's now system independent)
1999-08-05 23:45:09 +00:00
daniel
e7fd9b1dd8 * Fixed potential bug for open arrays (Their size is not known at
compilation time).
1999-08-05 22:42:49 +00:00
daniel
bf3fc7b96d *** empty log message *** 1999-08-05 22:41:34 +00:00
peter
30309fc962 * fixed register count ord*ord 1999-08-05 21:58:57 +00:00
peter
54880a6f23 * removed warning 1999-08-05 21:50:35 +00:00
daniel
3ec16374ab * Changes for new symtable. 1999-08-05 20:54:19 +00:00
daniel
3d7fe41229 * Use objects unit. 1999-08-05 20:49:15 +00:00
daniel
590de0e5d7 + Brand new symtable:
+ Less memory usage
  + Less code
  - No debug information yet
  - No unit support yet
1999-08-05 17:33:16 +00:00
florian
1c0b9034f4 * some more additions, especially procedure
exit code generation
1999-08-05 17:10:56 +00:00
peter
cb8aeb3fd6 * V_Fatal=1, all other V_ are also increased
* Check for local procedure when assigning procvar
  * fixed comment parsing because directives
  * oldtp mode directives better supported
  * added some messages to errore.msg
1999-08-05 16:52:53 +00:00
michael
5baa7ca467 * Added ait_frame, ait_ent 1999-08-05 15:51:01 +00:00
michael
de05bb1a56 * more changes 1999-08-05 15:50:31 +00:00
Jonas Maebe
aff06b2d4e * "add/sub const,%esp;sub $2,%esp" wasn't always optimized 1999-08-05 15:02:48 +00:00
Jonas Maebe
13bffb711a * fix in -darithopt code (sometimes crashed on 8/16bit regs) 1999-08-05 15:01:52 +00:00
florian
fdc1e9792c * some fixes for the floating point registers
* more things for the new code generator
1999-08-05 14:58:03 +00:00
florian
d66fdc645a * now every available fpu register is used for
fpu register variables
1999-08-04 14:21:07 +00:00
florian
ab66749e27 * new(...)^. is now allowed 1999-08-04 13:49:45 +00:00
florian
e53aceb9be + floating point register variables !!
* pairegalloc is now generated for register variables
1999-08-04 13:45:17 +00:00
Jonas Maebe
ace7ff6983 * all tokens now start with an underscore
* PowerPC compiles!!
1999-08-04 13:02:40 +00:00
Jonas Maebe
4a9d0a58d1 * all tokes now start with an underscore
* PowerPC compiles!!
1999-08-04 12:59:22 +00:00
florian
be3155fdde + initial revision 1999-08-04 11:13:38 +00:00
michael
b6cf3b2d68 + Added ait_frame 1999-08-04 00:39:56 +00:00
florian
defd66af97 - removed i386asm.pas and i386base.pas 1999-08-04 00:25:12 +00:00
florian
ca53eee67e * renamed i386asm and i386base to cpuasm and cpubase 1999-08-04 00:22:34 +00:00
Jonas Maebe
89b7d18f54 + initial implementation for PowerPC based on the Alpha stuff 1999-08-03 23:37:52 +00:00
florian
3bce2e5c20 * initial revision 1999-08-03 22:39:46 +00:00
peter
ed8eb13d59 * moved bitmask constants to sets
* some other type/const renamings
1999-08-03 22:02:29 +00:00
florian
53000e181d * reduced memory usage by factor 2-3 (it
improved also the speed) by reducing the
    growsize of the symbol tables
1999-08-03 17:51:45 +00:00
Jonas Maebe
6e07359718 * fix for sar/shr-shl optimization 1999-08-03 17:13:28 +00:00
florian
1cf1665d73 * the alpha compiler can be compiled now 1999-08-03 17:09:34 +00:00
michael
c474f11a46 * Additional changes 1999-08-03 15:52:40 +00:00
michael
d8e93dd9fd * changed shortname for linux alpha 1999-08-03 15:52:00 +00:00
michael
eba7f7c4ed + Changes for alpha 1999-08-03 13:50:16 +00:00
michael
12cac201d5 + Initial implementation 1999-08-03 13:48:50 +00:00
florian
efa5031010 * initial revision for the alpha 1999-08-03 13:20:53 +00:00
michael
d941eee5f6 + Added varregs 1999-08-03 00:35:54 +00:00
michael
d14de4009e + Added cpuasm for alpha 1999-08-03 00:33:23 +00:00
florian
13dd5edfc6 * reg_vars and reg_pushes is now in tgobj 1999-08-03 00:32:13 +00:00
florian
fabcb5b105 * again a fix for the alpha 1999-08-03 00:30:36 +00:00
florian
90c3d92173 - removed the stuff of the last commit :) 1999-08-03 00:28:24 +00:00
florian
0316203723 * some updates to compile for the alpha 1999-08-03 00:28:03 +00:00
florian
3a6062e7a6 * added reg var stuff 1999-08-03 00:25:28 +00:00
michael
382edb8cb4 + Initial implementation 1999-08-03 00:24:01 +00:00
florian
4c6bd565bf * initial revision 1999-08-03 00:07:16 +00:00
florian
92a8f2af97 * added bestrealdef for alpha and powerpc 1999-08-03 00:03:24 +00:00
michael
20e0eaf145 + Added alpha cpu and linux for alpha os 1999-08-02 23:56:51 +00:00
michael
010544014c Initial implementation 1999-08-02 23:19:53 +00:00
florian
cb114f1453 * more changes to compile for the Alpha 1999-08-02 23:13:19 +00:00
florian
eac806034d * the main branch psub.pas is now used for
newcg compiler
1999-08-02 21:28:56 +00:00
michael
4f74c54c09 * Moved toperand type back =( 1999-08-02 21:01:41 +00:00
michael
19b97ee4a4 * Alpha aware switch detection 1999-08-02 20:46:57 +00:00
michael
16afc140e9 * Moved toperand type to aasm 1999-08-02 20:45:47 +00:00
michael
9419ee8611 + Completed descriptions 1999-08-02 17:53:15 +00:00
florian
ab5461ac75 * initial revision 1999-08-02 17:23:23 +00:00
florian
2b7f36e255 * small changes for the new code generator 1999-08-02 17:17:09 +00:00
michael
d8ad003a09 + Changes for alpha 1999-08-02 17:16:41 +00:00
florian
98ad42cb87 + dummy implementation 1999-08-02 17:15:43 +00:00
florian
55c10a0343 * dummy implementation 1999-08-02 17:15:05 +00:00
michael
d87f99e54b + CPU check better 1999-08-02 17:15:03 +00:00
florian
a1fd4ac628 + changed the temp. generator to an object 1999-08-02 17:14:07 +00:00
Jonas Maebe
e2302d38bc * bugfix in DestroyRefs 1999-08-02 14:35:21 +00:00
Jonas Maebe
77fef43fda * also add arithmetic operations to instruction sequences contained in registers
(compile with -darithopt, very nice!)
1999-08-02 12:12:53 +00:00
michael
1d346206a9 * alpha has no index 1999-08-02 00:34:06 +00:00
michael
198b3b5050 * Moved taitempalloc 1999-08-01 23:55:53 +00:00
florian
9fd7385c65 * some changes to compile the new code generator 1999-08-01 23:36:38 +00:00
michael
9dfff6d0fc * Alpha changes 1999-08-01 23:35:06 +00:00
florian
c13c6e8b74 + make a new makefile using the old compiler makefile 1999-08-01 23:19:58 +00:00
michael
f16acaf9b5 + Fixes for new code generator 1999-08-01 23:18:36 +00:00
florian
ac698386c5 + renamed ot tp cgcpu.pas 1999-08-01 23:11:24 +00:00
michael
09eaa20eb5 * procbase -> cpubase 1999-08-01 23:09:26 +00:00
michael
59f5168068 + Procbase- -> cpubase 1999-08-01 23:07:13 +00:00
florian
e311c0ddbf * changes to compile with FPC 1999-08-01 23:05:55 +00:00
michael
44fd09b5ec + Changes for Alpha 1999-08-01 23:04:48 +00:00
florian
b6c97cd733 * reorganisation of directory structure 1999-08-01 22:08:25 +00:00
florian
7e74642b02 * modifications for the new code generator 1999-08-01 18:28:09 +00:00
florian
8e9d97e1fe * made it again compilable 1999-08-01 18:22:31 +00:00
florian
36c8c81845 * more fixes for inittable call 1999-08-01 17:32:31 +00:00
florian
e7623db6df * tried to fix a bug with init table 1999-08-01 17:17:37 +00:00
michael
9600a0718a * Fix of initialization information generation 1999-07-31 22:37:17 +00:00
peter
ab7c74f60a * fixed smartlinking 1999-07-31 12:33:11 +00:00
peter
73151c592c * fixed placing of dynamiclinker in link.res (should be the last after
all other libraries)
1999-07-30 23:19:45 +00:00
Jonas Maebe
8dcdd36b13 * small bugfix in instructionsequal
* small bugfix in reginsequence
  * made regininstruction a bit more logical
1999-07-30 18:18:51 +00:00
Jonas Maebe
19e34088fa * fix so (,reg) gets optimized to (reg) 1999-07-30 18:17:55 +00:00
peter
538e677425 * fixed crash with unknown id and colon parameter in write 1999-07-30 12:28:40 +00:00
peter
a0e2991b6a * array is_equal disabled for tp,delphi mode 1999-07-30 12:26:42 +00:00
peter
4d419ef8d4 * write .size only for linux 1999-07-30 12:26:07 +00:00
peter
674e0cc879 * write .size also 1999-07-29 20:53:55 +00:00
peter
771996a9db * always output preprocstack when unexpected eof is found
* fixed tp7/delphi skipuntildirective parsing
1999-07-29 11:43:15 +00:00
peter
571c8d89bc * array is_equal extended 1999-07-29 11:41:51 +00:00
peter
9dda467212 * fixed shared library linking for glibc2 systems 1999-07-29 01:31:39 +00:00
peter
30be2bf063 * indirect type referencing is now allowed 1999-07-27 23:42:10 +00:00
peter
bdd61f119c * open array checks also for s32bitdef, because u32bit also has a
high range of -1
1999-07-27 23:39:15 +00:00
peter
0e0711e7a1 * try to determine the fpu type needed in assignment 1999-07-27 23:36:36 +00:00
peter
d119287aa6 * glibc 2.1.2 support 1999-07-27 11:05:51 +00:00
florian
929290a3c9 * $mode gives now a warning if an unknown mode keyword follows 1999-07-26 14:55:36 +00:00
florian
bf6bed1bf7 * exit in try..finally blocks needed a second fix
* a raise in a try..finally lead into a endless loop, fixed
1999-07-26 12:13:45 +00:00
florian
9cbaac5beb * bugs 494-496 fixed 1999-07-26 09:41:59 +00:00
michael
725246c6c5 + Fixed hash computing, now compatible with gnu .mo file 1999-07-25 19:27:15 +00:00
michael
5d101ee4f5 * Forgot to add unitname to resourcestring data 1999-07-24 18:35:41 +00:00
michael
f7284c4549 + Improved resourcestring handling 1999-07-24 16:22:10 +00:00
michael
d1e6915de3 changes for resourcestrings 1999-07-24 15:12:56 +00:00
michael
916859ebd7 * Fixed resourcestring writing to units 1999-07-24 13:36:23 +00:00
peter
382d5bd835 * directives are allowed in (* *)
* fixed parsing of (* between conditional code
1999-07-24 11:20:59 +00:00
peter
b84eb33013 * suffix parsing for at&t fixed for things like movsbl
* string constants are now handle correctly and also allowed in
    constant expressions
1999-07-24 11:17:12 +00:00
peter
4807c96d29 * also number units for program 1999-07-24 00:13:25 +00:00
peter
6dac94ac96 * resourcestring fix 1999-07-23 23:09:06 +00:00
peter
b09c315030 * fixed stabs for record which still used savesize 1999-07-23 23:07:03 +00:00
michael
f8643a3070 + Added HasResourceStrings define 1999-07-23 22:56:27 +00:00
peter
62273909ca * fixed crash with resourcestring 1999-07-23 21:31:42 +00:00
peter
6c00bfc702 * more C packing fixes 1999-07-23 20:59:23 +00:00
peter
07bb58295b * alignment is now saved in the symtable
* C alignment added for records
  * PPU version increased to solve .12 <-> .13 probs
1999-07-23 16:05:18 +00:00
peter
ca1ccd9221 * fixed crash in previous commit 1999-07-23 12:02:20 +00:00
peter
f380e3bd68 * error for illegal type reference, instead of 10998 1999-07-23 11:37:46 +00:00
peter
f9c4d1b3a7 * removed oldppu from propertysym 1999-07-23 11:33:23 +00:00
michael
d21b73460a + Added computehashvalue 1999-07-22 20:04:58 +00:00
peter
ca4715fee8 * merged 1999-07-22 16:12:28 +00:00
florian
35f636dea1 + resourcestring implemented
+ start of longstring support
1999-07-22 09:37:28 +00:00
florian
8929222311 + initial revision 1999-07-22 09:34:04 +00:00
florian
774df6096e * bug #487 fixed, (inc(<property>) isn't allowed)
* more fixes to compile with Delphi
1999-07-18 14:47:19 +00:00
florian
bba137b4e6 * handling of integer and shortint in case was wrong, if a case
label was negative and a jump table was generated
1999-07-18 14:01:16 +00:00
florian
a873f5a4a5 * fix of my previous commit nevertheless it doesn't work completly 1999-07-18 10:41:59 +00:00
florian
046acfb84b * made it compilable with Dlephi 4 again
+ fixed problem with large stack allocations on win32
1999-07-18 10:19:38 +00:00
peter
45bf051885 * merged 1999-07-16 10:04:32 +00:00
michael
d12b467d95 + Removed TV stuff from brwosercol 1999-07-15 08:42:22 +00:00