Commit Graph

208 Commits

Author SHA1 Message Date
peter
c9ecdb1a24 * fix previous commit for unix 2003-05-23 15:03:31 +00:00
peter
24e4003aa3 * FindFilePChar added to allow PATH variables > 256 chars 2003-05-23 14:39:56 +00:00
peter
92ee1804b6 * removed selfpointer_offset, vmtpointer_offset
* tvarsym.adjusted_address
  * address in localsymtable is now in the real direction
  * removed some obsolete globals
2003-05-15 18:58:53 +00:00
peter
60978ba89c * aktprocdef renamed to current_procdef
* procinfo renamed to current_procinfo
  * procinfo will now be stored in current_module so it can be
    cleaned up properly
  * gen_main_procsym changed to create_main_proc and release_main_proc
    to also generate a tprocinfo structure
  * fixed unit implicit initfinal
2003-04-27 11:21:32 +00:00
peter
7f14891d66 * aktprocdef cleanup, aktprocdef is now always nil when parsing
a new procdef declaration
  * aktprocsym removed
  * lexlevel removed, use symtable.symtablelevel instead
  * implicit init/final code uses the normal genentry/genexit
  * funcret state checking updated for new funcret handling
2003-04-27 07:29:50 +00:00
peter
f4b818fc1d * removed funcretn,funcretsym, function result is now in varsym
and aliases for result and function name are added using absolutesym
  * vs_hidden parameter for funcret passed in parameter
  * vs_hidden fixes
  * writenode changed to printnode and released from extdebug
  * -vp option added to generate a tree.log with the nodetree
  * nicer printnode for statements, callnode
2003-04-25 20:59:33 +00:00
peter
9ed2ce8c12 * removed some notes/hints 2003-04-22 14:33:38 +00:00
Tomas Hajny
8e7124f9f8 + emx target added 2003-03-23 23:11:17 +00:00
peter
7391487daa * amiga path fix (merged) 2003-01-30 21:45:53 +00:00
peter
71e2d34b5a * m68k pathexist update from 1.0.x
* palmos res update from 1.0.x
2003-01-12 15:42:23 +00:00
marco
04b80d3123 * more hasunix fixes 2003-01-10 21:49:00 +00:00
Tomas Hajny
7248252a23 * modified to make use of the common GetEnv code under OS/2 2003-01-04 16:20:44 +00:00
peter
78213ee091 * delphi also has pointer archimetic 2002-12-25 01:26:17 +00:00
carl
081a4aab35 * 3% memory optimization
* changed some types
  + added type checking with different size for call node and for
     parameters
2002-12-07 14:27:07 +00:00
peter
2183d2edde * amiga fixes merged 2002-12-06 17:50:00 +00:00
carl
eeea5fdae0 * warning of portabilitiy problems with parasize / localsize
+ some added documentation
2002-12-01 22:07:41 +00:00
carl
6f5c977415 - cs_fp_emulation is no longer automatic for m68k target 2002-11-30 23:13:48 +00:00
carl
a62998ff03 * fix bug n last commit (this bug was only detected gby 1.0.x, fixed) 2002-11-30 11:08:46 +00:00
pierre
a47e4fb345 * remove double in delphimodeswitches to allow compilation with -Cr option 2002-11-30 00:34:20 +00:00
carl
5c5db0e0a3 + unimplemented hint directive added
* hint directive parsing implemented
  * warning on these directives
2002-11-29 22:31:19 +00:00
mazen
11b3fa6d81 + TSearchPathList.AddPath supports a local path in addition to file name 2002-11-20 10:11:46 +00:00
carl
cd256ebfb4 - browser information is off by default 2002-11-16 14:49:12 +00:00
peter
bfd72ad5d5 * merged changes from 1.0.7 up to 04-11
- -V option for generating bug report tracing
    - more tracing for option parsing
    - errors for cdecl and high()
    - win32 import stabs
    - win32 records<=8 are returned in eax:edx (turned off by default)
    - heaptrc update
    - more info for temp management in .s file with EXTDEBUG
2002-11-15 01:58:45 +00:00
carl
fd24f60a1c + added var_align/const_align routines 2002-11-09 15:38:39 +00:00
peter
83dae76625 + $IMPLICITEXCEPTIONS switch to turn on/off generation of the
implicit exception frames for procedures with initialized variables
    and for constructors. The default is on for compatibility
2002-10-16 19:01:43 +00:00
peter
8b5e92cb3c * removed repetitive pass counting
* display heapsize also for extdebug
2002-09-05 19:28:29 +00:00
peter
91b49914f6 * More fixes for cross unit inlining, all tnodes are now implemented
* Moved pocall_internconst to po_internconst because it is not a
    calling type at all and it conflicted when inlining of these small
    functions was requested
2002-08-19 19:36:42 +00:00
carl
9da171faf2 + stab register indexes for powerpc (moved from gdb to cpubase)
+ tprocessor enumeration moved to cpuinfo
  + linker in target_info is now a class
  * many many updates for m68k (will soon start to compile)
  - removed some ifdef or correct them for correct cpu
2002-08-12 15:08:39 +00:00
carl
18b102ce95 + moved target_cpu_string to cpuinfo
* renamed asmmode enum.
  * assembler reader has now less ifdef's
  * move from nppcmem.pas -> ncgmem.pas vec. node.
2002-08-10 14:46:29 +00:00
florian
3fe0229843 + added direct assembler reader for PowerPC 2002-07-28 20:45:22 +00:00
florian
4f7b35be5b + source code page support 2002-07-20 17:11:48 +00:00
peter
4285e99853 * internal linker
* reorganized aasm layer
2002-07-01 18:46:20 +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
carl
87aa88e9b7 + generic FPC_CHECKPOINTER
+ first parameter offset in stack now portable
* rename some constants
+ move some cpu stuff to other units
- remove unused constents
* fix stacksize for some targets
* fix generic size problems which depend now on EXTEND_SIZE constant
2002-04-20 21:32:23 +00:00
carl
86a068445b + moved constant from cpuinfo, these are NOT cpu specific
constant, but more related to compiler functionality.
2002-04-07 13:24:30 +00:00
peter
5b242f7741 * tlocation,treference update
* LOC_CONSTANT added for better constant handling
  * secondadd splitted in multiple routines
  * location_force_reg added for loading a location to a register
    of a specified size
  * secondassignment parses now first the right and then the left node
    (this is compatible with Kylix). This saves a lot of push/pop especially
    with string operations
  * adapted some routines to use the new cg methods
2002-04-02 17:11:27 +00:00
armin
ed209a3961 + initialize threadvars defined local in units 2002-03-28 16:07:52 +00:00
peter
fd2ad837e2 * implicit result variable generation for assembler routines
* removed m_tp modeswitch, use m_tp7 or not(m_fpc) instead
2002-01-24 18:25:48 +00:00
florian
b60666ae1f + parasym to tparaitem added 2001-12-06 17:57:33 +00:00
peter
e37dbf904d * calling convention rewrite 2001-10-25 21:22:32 +00:00
peter
17d62feebe * $calling directive and -Cc commandline patch added
from Pavel Ozerski
2001-10-23 21:49:42 +00:00
peter
cb06c9bcb8 * array access for properties added 2001-10-21 12:33:05 +00:00
peter
7781fca6bd * read only typed const support, switch $J- 2001-10-20 20:30:20 +00:00
Jonas Maebe
d8c104b25d * fixed goto/label/try bugs 2001-10-16 15:10:34 +00:00
peter
e178da120d * pathexists fix (merged) 2001-10-12 16:06:17 +00:00
michael
f959a590fe * Fixes win32 linking problems with import libraries
* LINKLIB Libraries are now looked for using C file extensions
* get_exepath fix
2001-09-18 11:30:47 +00:00
peter
45dab81414 * merged netbsd, fpu-overflow from fixes branch 2001-09-17 21:29:10 +00:00
peter
fd8e5fa78c * palmos support from v10 merged 2001-08-19 11:22:22 +00:00
peter
2a1adf0ee6 * updates so it works with the ide 2001-08-04 10:23:54 +00:00
peter
b10e754536 * alignmentinfo record added
* -Oa argument supports more alignment settings that can be specified
    per type: PROC,LOOP,VARMIN,VARMAX,CONSTMIN,CONSTMAX,RECORDMIN
    RECORDMAX,LOCALMIN,LOCALMAX. It is possible to set the mimimum
    required alignment and the maximum usefull alignment. The final
    alignment will be choosen per variable size dependent on these
    settings
2001-07-01 20:16:15 +00:00
peter
e24474d9ac * -Ur switch (merged)
* masm fixes (merged)
  * quoted filenames for go32v2 and win32
2001-06-18 20:36:23 +00:00
peter
f86ce17588 + hint directive parsing support 2001-06-03 21:57:35 +00:00
peter
add30a428e * Kylix fixes, mostly case names of units 2001-06-03 20:21:08 +00:00
peter
652a4b8aaa * netware patches for copyright, screenname, threadname directives 2001-05-30 21:35:48 +00:00
peter
b9cb031a39 * simplify_ppu is now the default, a recompile of the compiler now
only compiles pp.pas
2001-05-12 12:11:31 +00:00
peter
6c7708c1e0 * ppu object to class rewrite
* move ppu read and write stuff to fppu
2001-05-06 14:49:16 +00:00
peter
0c03535b5b * registration of targets and assemblers 2001-04-18 22:01:53 +00:00
peter
5677fbe1b4 * fixed crash in labelnode
* easier detection of goto and label in try blocks
2001-04-15 09:48:29 +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
florian
64d7d5682e * applied several fixes to get the DD8 Delphi Unit compiled
e.g. "forward"-interfaces are working now
2001-04-04 21:30:42 +00:00
peter
a7fe3cb6b9 * new fixfilename, findfile for unix. Look first for lowercase, then
NormalCase and last for UPPERCASE names.
2001-02-20 21:41:15 +00:00
peter
7bdc320697 * default packenum=1 for tp7 mode 2001-02-09 23:05:45 +00:00
peter
eda26e9190 * support linux unit for ver1_0 compilers 2001-02-05 20:46:59 +00:00
marco
ad6ba5dd70 * Renamefest. Compiler part. Not that hard. 2001-01-21 20:32:45 +00:00
Tomas Hajny
ee51dcc980 + APPTYPE support under OS/2, app_fs, GetEnvPChar for OS/2 2001-01-20 18:32:52 +00:00
peter
cac56fc13e * fixed findexe to also support already extension in name 2001-01-13 00:03:41 +00:00
peter
ff388a41e2 * use system.paramstr() 2000-12-26 15:57:25 +00:00
peter
32b9cdb7cf + new tlinkedlist class (merge of old tstringqueue,tcontainer and
tlinkedlist objects)
2000-12-25 00:07:25 +00:00
marco
b65958a61e * Renamefest 2000-11-13 15:26:12 +00:00
peter
5ac2599649 * create generic toutputsection for binary writers 2000-11-12 22:20:37 +00:00
florian
51527ba1c9 + merged Attila's changes for interfaces, not tested yet 2000-11-04 14:25:19 +00:00
peter
451723647e * symtable splitted, no real code changes 2000-10-31 22:02:46 +00:00
pierre
f95a082233 * IsExe restored 2000-10-04 14:51:08 +00:00
peter
5dc42d12ed * also set initlocalswitches in setcompilemode (merged) 2000-09-27 21:20:56 +00:00
Jonas Maebe
fa38093530 * initmodeswitches is changed is you change the compiler mode from the
command line (the -S<x> switches didn't work anymore for changing the
    compiler mode) (merged from fixes branch)
2000-09-26 10:50:41 +00:00
peter
24fc983597 * message updates merges 2000-09-24 21:33:46 +00:00
peter
5218af7926 * delphi compile fixes 2000-09-24 21:19:48 +00:00
peter
cd3f2c37e0 * fixed typo 2000-09-24 15:12:40 +00:00
peter
a71e44ac49 * use defines.inc 2000-09-24 15:06:10 +00:00
peter
0c94c56136 * searching of exe in path also for OS/2
* fixed searching of exe in path.
2000-09-24 10:33:07 +00:00
florian
6159f4535f + first implementation of Netware Module support, thanks to
Armin Diehl (diehl@nordrhein.de) for providing the patches
2000-09-11 17:00:22 +00:00
peter
4c94659743 * moved some util functions from globals,cobjects to cutils
* splitted files into finput,fmodule
2000-08-27 16:11:48 +00:00
peter
8f20bd887d * ELF writer works now also with -g
* ELF writer is default again for linux
2000-08-12 19:14:58 +00:00
peter
fac523d7f6 * IDE patch for stream reading (merged) 2000-08-12 15:30:44 +00:00
peter
227e983397 * first things for default parameters 2000-08-02 19:49:58 +00:00
michael
665c1f6410 + patched to 1.1.0 with former 1.09patch from peter 2000-07-13 12:08:24 +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
pierre
ee9d8f5248 * smart link is default on win32 2000-06-19 19:57:19 +00:00
peter
2b1d92cb5c * no binary value reading with % if not fpc mode
* extended illegal char message with the char itself (Delphi like)
2000-06-18 18:05:54 +00:00
peter
0d58e53bfc * first look for ppu in cwd and outputpath and after that for source
in cwd
  * fixpath() for not linux makes path now lowercase so comparing paths
    with different cases (sometimes a drive letter could be
    uppercased) gives the expected results
  * sources_checked flag if there was already a full search for sources
    which aren't found, so another scan isn't done when checking for the
    sources only when recompile is needed
2000-06-15 18:10:11 +00:00
peter
42bdcb649b * fixed pchar->string conversion for delphi mode 2000-06-11 07:00:21 +00:00
pierre
7c324b13b2 * adapted to Delphi 3 2000-05-12 08:58:51 +00:00
pierre
a77b264bd0 * * get it to compile with Delphi by Kovacs Attila Zoltan 2000-05-12 05:55:04 +00:00
pierre
3697d3c985 * do not use upcase for strings, reported by Kovacs Attila Zoltan 2000-05-11 09:37:25 +00:00
peter
325b9acfa2 * ansistrings are now default on for delphi mode, as most ppl expect
this
2000-05-04 20:46:17 +00:00
pierre
eb59e0b11c * fix for tests/test/testrang.pp bug 2000-05-03 14:36:57 +00:00