Commit Graph

64 Commits

Author SHA1 Message Date
florian
07783d2a0d * powerpc target fixed, very simple units can be compiled
* some basic stuff for better callparanode handling, far from being finished
2002-07-07 09:52:32 +00:00
carl
9fe207578a + more SPARC patches from Mazen 2002-07-06 20:18:47 +00:00
florian
479a745096 * first x86-64 patches 2002-07-04 20:43:00 +00:00
peter
68ce5a00e5 * cg64 patch
* basics for currency
  * asnode updates for class and interface (not finished)
2002-07-01 16:23:52 +00:00
peter
06ebac4e27 * readded missing revisions 2002-05-18 13:34:04 +00:00
carl
21b3a10f02 + defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup
2002-05-16 19:46:34 +00:00
peter
2992e1819c * removed old logs and updated copyright year 2002-05-14 19:34:38 +00:00
peter
4dcd96747e * moved entry and exitcode to ncgutil and cgobj
* foreach gets extra argument for passing local data to the
    iterator function
  * -CR checks also class typecasts at runtime by changing them
    into as
  * fixed compiler to cycle with the -CR option
  * fixed stabs with elf writer, finally the global variables can
    be watched
  * removed a lot of routines from cga unit and replaced them by
    calls to cgobj
  * u32bit-s32bit updates for and,or,xor nodes. When one element is
    u32bit then the other is typecasted also to u32bit without giving
    a rangecheck warning/error.
  * fixed pascal calling method with reversing also the high tree in
    the parast, detected by tcalcst3 test
2002-05-12 16:53:04 +00:00
Jonas Maebe
2b3898aeff * adapted ranges of native types to int64 (e.g. high cardinal is no
longer longint($ffffffff), but just $fffffff in psystem)
  * small additional fix in 64bit rangecheck code generation for 32 bit
    processors
  * adaption of ranges required the matching talgorithm used for selecting
    which overloaded procedure to call to be adapted. It should now always
    select the closest match for ordinal parameters.
  + inttostr(qword) in sysstr.inc/sysstrh.inc
  + abs(int64), sqr(int64), sqr(qword) in systemh.inc/generic.inc (previous
    fixes were required to be able to add them)
  * is_in_limit() moved from ncal to types unit, should always be used
    instead of direct comparisons of low/high values of orddefs because
    qword is a special case
2002-01-24 12:33:52 +00:00
peter
faf78ea813 * overloading supported in child classes
* fixed parsing of classes with private and virtual and overloaded
    so it is compatible with delphi
2001-11-18 18:43:13 +00:00
marco
7215d46735 * Make new/dispose system functions instead of keywords 2001-10-24 11:51:39 +00:00
peter
f88f6eb571 * rtti/init table updates
* rttisym for reusable global rtti/init info
  * support published for interfaces
2001-08-30 20:13:52 +00:00
peter
c4b84ce276 * m68k updates from v10 merged 2001-07-30 20:59:27 +00:00
peter
db87f86f00 * Length made internal
* Add array support for Length
2001-07-09 21:15:40 +00:00
peter
68c1559651 * m68k doesn't support double (merged) 2001-05-09 19:58:45 +00:00
peter
a7cf57524e * symtable change to classes
* range check generation and errors fixed, make cycle DEBUG=1 works
  * memory leaks fixed
2001-04-13 01:22:06 +00:00
peter
4e2655cdc5 * resulttype rewrite 2001-04-02 21:20:29 +00:00
florian
0ca35bb1ee * cwidechar was loaded with a chardef, fixed 2001-03-25 12:40:00 +00:00
florian
82a6a7ed95 + basic variant type support in the compiler 2001-03-22 00:10:58 +00:00
Jonas Maebe
c91a23c27d * new constant handling: from now on, hex constants >$7fffffff are
parsed as unsigned constants (otherwise, $80000000 got sign extended
    and became $ffffffff80000000), all constants in the longint range
    become longints, all constants >$7fffffff and <=cardinal($ffffffff)
    are cardinals and the rest are int64's.
  * added lots of longint typecast to prevent range check errors in the
    compiler and rtl
  * type casts of symbolic ordinal constants are now preserved
  * fixed bug where the original resulttype wasn't restored correctly
    after doing a 64bit rangecheck
2000-12-07 17:19:42 +00:00
florian
b9796f6a7f * unused units removed from uses clause
* some changes for widestrings
2000-11-29 00:30:30 +00:00
florian
68c1a1e3e6 * System.TypeInfo fixed
+ System.Finalize implemented
  + some new keywords for interface support added
2000-11-09 17:46:54 +00:00
peter
451723647e * symtable splitted, no real code changes 2000-10-31 22:02:46 +00:00
florian
f80c24177a * a lot of changes:
- basic dyn. array support
     - basic C++ support
     - some work for interfaces done
     ....
2000-10-21 18:16:11 +00:00
peter
e171f341a0 * moehrendorf oct 2000 rewrite 2000-10-14 10:14:45 +00:00
peter
a71e44ac49 * use defines.inc 2000-09-24 15:06:10 +00:00
peter
bec1c5cdf9 * store strings with case in ppu, when an internal symbol is created
a '$' is prefixed so it's not automatic uppercased
2000-08-27 20:19:38 +00:00
florian
244fc53520 + support of 64 bit integer constants 2000-08-16 13:06:06 +00:00
michael
650fbb86aa + removed logs 2000-07-13 11:32:24 +00:00
michael
e7aca136a1 + Initial import 2000-07-13 06:29:38 +00:00
florian
b2efa0f338 * disable FIXED data type per default 2000-02-15 14:36:45 +00:00
peter
4a4a24b6e8 * log truncated 2000-02-09 13:22:42 +00:00
peter
e525797c51 * updated copyright to 2000 2000-01-07 01:14:18 +00:00
florian
89c403c529 * very basic widestring support 1999-12-18 14:54:34 +00:00
peter
0512ba80fb + ttype, tsymlist 1999-11-30 10:40:42 +00:00
peter
0887060ff2 * truncated log to 20 revs 1999-11-06 14:34:16 +00:00
florian
fbbf8a505c * m68k compiler is again compilable (only gas writer, no assembler reader) 1999-09-16 23:05:51 +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
peter
ed8eb13d59 * moved bitmask constants to sets
* some other type/const renamings
1999-08-03 22:02:29 +00:00
peter
248826aa81 * removed temp defines 1999-07-05 20:13:06 +00:00
florian
c615fcdbbb * int64/qword type release
+ lo/hi for int64/qword
1999-07-01 15:49:09 +00:00
peter
bc903063c1 * removed R_DEFAULT_SEG
* uniform float names
1999-05-12 00:19:34 +00:00
peter
1c96916943 * generic write_float and str_float
* fixed constant float conversions
1999-05-06 09:05:05 +00:00
peter
c36956fffe * better read/write array 1999-04-26 18:28:12 +00:00
peter
dc1f9b5bbb * addr() internal 1999-04-17 13:10:23 +00:00
pierre
5f410c2cd3 * all formaldefs are now a sinlge definition
cformaldef (this was necessary for double_checksum)
  + small part of double_checksum code
1999-04-07 15:31:12 +00:00
peter
6a802e85d7 * released valintern
+ deffile is now removed when compiling is finished
  * ^( compiles now correct
  + static directive
  * shrd fixed
1999-03-26 00:05:26 +00:00
Jonas Maebe
1e6d667c3b * changes for internal Val code (do a "make cycle OPT=-dvalintern" to test)
* in cgi386inl: also range checking for subrange types (compile with "-dreadrangecheck")
  * in cgai386: also small fixes to emitrangecheck
1999-03-16 17:52:52 +00:00
peter
c5e45b576b + stabs support for binary writers
* more fixes and missing updates from the previous commit :(
1999-03-02 02:56:08 +00:00
peter
6ee9d913cd + farpointer type
* absolutesym now also stores if its far
1998-12-30 22:15:45 +00:00