florian
43ba7cfe6f
* correct name of set packing directive is PACKSET
...
git-svn-id: trunk@5313 -
2006-11-10 19:56:19 +00:00
florian
e619bd3235
* enabled SETALLOC=1 for the compiler
...
git-svn-id: trunk@5300 -
2006-11-09 20:46:11 +00:00
florian
667baf433d
+ new switch -CPSETALLOC=<y> to influence set sizes
...
git-svn-id: trunk@5299 -
2006-11-09 20:41:33 +00:00
florian
a13d358f1e
* first partially working implementation of variant com invoking
...
git-svn-id: trunk@5247 -
2006-11-05 15:34:15 +00:00
florian
4cbb67aa00
* some fpu emulation code from arm to generic code generator moved
...
* several m68k fixes
git-svn-id: trunk@5218 -
2006-11-04 10:23:35 +00:00
peter
658c46b903
* remove tdictionary and tindexarray
...
* symtables based on TFPHashObjectList and TFPObjectList
* rename torddef.typ to torddef.ordtype
* rename tfloatdef.typ to tfloatdef.floattype
* rename tdef.deftype to tdef.typ
* remove obsolete browser code, browcol is kept so the ide
can still be compiled
git-svn-id: trunk@5192 -
2006-11-03 00:30:30 +00:00
Jonas Maebe
5acc8b44a8
* activated internal get_frame for x86
...
* turn off stackframe optimizations on x86 if get_frame is called
in the current routine, or if the address of a nested function
is taken in the current routine
+ test for the above
* this fixes the IDE when compiled with stackframe optimizations
on x86
git-svn-id: trunk@5146 -
2006-11-01 12:48:53 +00:00
florian
5c9b39549a
* fixed olevariant -> variant conversion
...
git-svn-id: trunk@5131 -
2006-10-31 19:45:08 +00:00
peter
d21842fe61
* fixed linux compile
...
git-svn-id: trunk@5117 -
2006-10-31 11:35:54 +00:00
peter
7a2e0da7bd
* extra parameter for file searching functions
...
that indicate if the cache shall be used or not
* fixed compile of non-x86 targets
git-svn-id: trunk@5115 -
2006-10-31 10:56:58 +00:00
peter
cb246eb781
* Remove dos,strings units, use SysUtils instead
...
* replace split* functions with Extract* functions
* Add Directory caching
git-svn-id: trunk@5102 -
2006-10-30 23:29:35 +00:00
florian
85d63d9fa9
* settings refactored
...
git-svn-id: trunk@5094 -
2006-10-30 18:02:58 +00:00
florian
edf01e4460
+ support for -Xp to path the compiler executables to fpc
...
git-svn-id: trunk@5040 -
2006-10-28 14:06:55 +00:00
Jonas Maebe
36c6879581
+ -Sx command line switch to turn on exception keywords in non-Delphi/ObjFPC
...
modes (mainly for MacPas, to replace nested gotos with exceptions)
git-svn-id: trunk@4984 -
2006-10-20 12:54:47 +00:00
florian
67aa148602
* fixed softfpu support
...
+ softfpu enabled for arm-gba
git-svn-id: trunk@4939 -
2006-10-15 21:31:27 +00:00
florian
fb5e396881
+ experimental -Sv option to support vector arithmetics
...
git-svn-id: trunk@4825 -
2006-10-07 21:39:48 +00:00
peter
2f0ce31751
* string concat changed from function to procedure to
...
allow runtime optimization if the destination is the
same as a source parameter
* tassignmentnode now sets aktassignmentnode global that can be used
to use the left node as a destination parameter and
skip the assignment
* disabled all cpu specific shortstr concat/append
git-svn-id: trunk@4770 -
2006-10-02 20:00:06 +00:00
Marc Weustink
48340d291e
* splitup dwarf2/dwarf3
...
* changed cpu64bit define into isdwarf64 boolean
* generate info for methods
git-svn-id: trunk@4759 -
2006-09-30 15:21:17 +00:00
peter
d0156354a6
* inline directive enabled by default for fpc,objfpc,delphi modes
...
* -Si and $inline directive control are now local switches and
have finer control on whether a function will really inlined or not
git-svn-id: trunk@4553 -
2006-09-04 19:54:21 +00:00
florian
239a7a5d9c
* do default replacements for -o, fixes #7198
...
git-svn-id: trunk@4304 -
2006-07-30 07:37:40 +00:00
Jonas Maebe
5f699c7838
+ -gt, -gtt, -gttt and -gtttt switches to trash local variables with
...
different values (resp. $55, $AA, $EF and $00) in function/procedure
prologs to help find uninitialized uses. Should still be extended
for "out" parameters.
git-svn-id: trunk@4271 -
2006-07-20 22:54:23 +00:00
Tomas Hajny
419ab6aeac
+ allow output of full version in QuickInfo
...
git-svn-id: trunk@4165 -
2006-07-13 23:06:46 +00:00
marco
2a5332e3bd
* Link ordering working FreeBSD implementation
...
git-svn-id: trunk@3894 -
2006-06-19 14:17:45 +00:00
marco
179451dcfd
* Initial linkordering subsystem. Not active (need t_* mods which I want in a different revision to ease merging)
...
git-svn-id: trunk@3788 -
2006-06-04 12:44:48 +00:00
peter
0bb57006e5
* fix setting of internal/external linker
...
git-svn-id: trunk@3612 -
2006-05-21 10:52:23 +00:00
daniel
1d9b6ed5f0
* Disable internal_backtrace again
...
git-svn-id: trunk@3526 -
2006-05-14 13:58:00 +00:00
daniel
3048a98a6f
* Fix and activate internal backtrace routines
...
git-svn-id: trunk@3524 -
2006-05-14 13:04:03 +00:00
daniel
4d37c919cc
* Internal implementations of get_frame, get_caller_frame and get_caller_addr.
...
Not yet activated.
git-svn-id: trunk@3517 -
2006-05-14 08:39:19 +00:00
florian
b698d6eb02
* fixed bootstrapping on 64 bit CPUs
...
git-svn-id: trunk@3461 -
2006-05-09 13:15:22 +00:00
florian
ab1660c9c2
+ tf_winlikewidestring
...
git-svn-id: trunk@3457 -
2006-05-08 18:20:26 +00:00
peter
d69ad5d84d
* cleanup external/nolink options
...
git-svn-id: trunk@3375 -
2006-04-29 21:49:37 +00:00
florian
aa2e2a2829
* fix for -Oa parsing, by Roozbeh GHolizadeh
...
git-svn-id: trunk@3372 -
2006-04-29 21:34:02 +00:00
peter
f9a741df23
* CPU386 define for Delphi compatibility
...
git-svn-id: trunk@3276 -
2006-04-19 06:46:54 +00:00
peter
fc6e4adf74
Merged revisions 3068,3070,3114 via svnmerge from
...
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler
r3068 | peter | 2006-03-28 15:02:06 +0100 (Tue, 28 Mar 2006) | 2 lines
* Add new TFPHashList and TFPHashObjectList
r3070 | peter | 2006-03-29 07:39:04 +0100 (Wed, 29 Mar 2006) | 2 lines
* fix compile
r3114 | peter | 2006-04-01 23:47:50 +0100 (Sat, 01 Apr 2006) | 3 lines
* remove debug writelns
* enable vtable optimizer with -Xv
git-svn-id: trunk@3116 -
2006-04-02 00:13:03 +00:00
peter
f26e214fe9
* fix warning that reports incompatibility of assembler and target
...
git-svn-id: trunk@3095 -
2006-03-31 10:34:50 +00:00
peter
37c81492ad
Merged revisions 2827,2831,2837,2932-2980 via svnmerge from
...
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler
r2827 (peter)
* smartlinking of resourcestrings
r2831 (peter)
* process_ea 64bit fixes
r2837 (peter)
* linker script
git-svn-id: trunk@2981 -
2006-03-19 22:12:52 +00:00
tom_at_work
6d99152f4b
* fixed wrong method of disabling stabs debug info in 2956
...
git-svn-id: trunk@2965 -
2006-03-19 10:54:52 +00:00
tom_at_work
496c31ac29
* DWARF debug info is now default on ppc64/linux
...
* disallow stabs debug info generation on ppc64/linux.
git-svn-id: trunk@2956 -
2006-03-18 20:48:04 +00:00
peter
2888a21593
* list supported optimization options in -i
...
* support $OPTIMIZATION and $O+
git-svn-id: trunk@2904 -
2006-03-13 11:17:56 +00:00
peter
17bc033747
Merged revisions 2791-2793,2798-2800,2806-2825,2829-2830,2833,2839,2898 via svnmerge from
...
http://svn.freepascal.org/svn/fpc/branches/linker/compiler
........
r2791 | peter | 2006-03-06 14:57:20 +0100 (Mon, 06 Mar 2006) | 3 lines
* disable internal linker if -s is used
* enable section smartlink by default for internal linker
........
r2792 | peter | 2006-03-06 14:58:23 +0100 (Mon, 06 Mar 2006) | 2 lines
* support long sectionnames
........
r2793 | peter | 2006-03-06 15:04:12 +0100 (Mon, 06 Mar 2006) | 2 lines
* register symbols in section also when reading .o files
........
r2798 | peter | 2006-03-07 10:08:07 +0100 (Tue, 07 Mar 2006) | 2 lines
* symbolrefs need to be loaded from relocations when loading a .o
........
r2799 | peter | 2006-03-07 16:17:52 +0100 (Tue, 07 Mar 2006) | 3 lines
* remove unreferenced sections
* set stacksize in peopthaeder
........
r2800 | peter | 2006-03-07 17:02:46 +0100 (Tue, 07 Mar 2006) | 2 lines
* objsection.fullname added
........
........
r2807 | peter | 2006-03-08 08:18:04 +0100 (Wed, 08 Mar 2006) | 2 lines
* powerpc64 fixes
........
r2808 | peter | 2006-03-08 08:35:53 +0100 (Wed, 08 Mar 2006) | 2 lines
* register x86_64_pecoff
........
r2809 | peter | 2006-03-08 11:26:38 +0100 (Wed, 08 Mar 2006) | 2 lines
* optimize and cleanup matches()
........
r2810 | peter | 2006-03-08 12:25:28 +0100 (Wed, 08 Mar 2006) | 2 lines
* small tweak to readdata to copy values direct without calling move()
........
r2811 | peter | 2006-03-08 15:55:21 +0100 (Wed, 08 Mar 2006) | 2 lines
* compile fix
........
........
........
........
........
........
r2817 | peter | 2006-03-09 14:20:52 +0100 (Thu, 09 Mar 2006) | 2 lines
* more readable with long secnames
........
........
........
........
........
........
........
........
r2825 | peter | 2006-03-10 09:52:05 +0100 (Fri, 10 Mar 2006) | 2 lines
* don't initialize/finalize external variables
........
r2829 | peter | 2006-03-10 10:58:08 +0100 (Fri, 10 Mar 2006) | 2 lines
* merge 64bit assembler
........
r2830 | peter | 2006-03-10 12:25:08 +0100 (Fri, 10 Mar 2006) | 2 lines
* TElfAssembler rename
........
r2833 | peter | 2006-03-10 15:22:27 +0100 (Fri, 10 Mar 2006) | 3 lines
* support & prefix to force identifier parsing, used to access fields that
have the names of a register
........
r2839 | peter | 2006-03-10 19:37:11 +0100 (Fri, 10 Mar 2006) | 2 lines
* merge stabs section flags
........
r2898 | peter | 2006-03-12 23:18:18 +0100 (Sun, 12 Mar 2006) | 2 lines
* reorder instructions for better first match
........
git-svn-id: trunk@2902 -
2006-03-13 09:29:57 +00:00
peter
b6e35a200e
* rewrite of optimizer options
...
git-svn-id: trunk@2901 -
2006-03-13 09:05:50 +00:00
Jonas Maebe
a90e3b3e1d
* fixed argc/argv/envp catching for darwin/x86 (not really nice, but
...
works)
git-svn-id: trunk@2848 -
2006-03-10 23:45:37 +00:00
peter
785550d7e3
Merged revisions 2669,2673,2677,2683,2696,2699-2702,2704,2708,2712-2715,2718,2722-2723,2728-2730,2740,2769 via svnmerge from
...
svn+ssh://peter@www.freepascal.org/FPC/svn/fpc/branches/linker/compiler
........
r2669 | peter | 2006-02-23 09:31:21 +0100 (Thu, 23 Feb 2006) | 2 lines
* add compiler dir
........
r2673 | peter | 2006-02-23 17:08:56 +0100 (Thu, 23 Feb 2006) | 2 lines
* enabled more code
........
r2677 | peter | 2006-02-24 17:46:29 +0100 (Fri, 24 Feb 2006) | 2 lines
* pe stub and headers
........
r2683 | peter | 2006-02-25 23:13:24 +0100 (Sat, 25 Feb 2006) | 2 lines
* section options cleanup
........
r2696 | peter | 2006-02-26 20:27:41 +0100 (Sun, 26 Feb 2006) | 2 lines
* fixed typecasts
........
r2699 | peter | 2006-02-26 23:04:32 +0100 (Sun, 26 Feb 2006) | 2 lines
* simple linking works
........
r2700 | peter | 2006-02-27 09:44:50 +0100 (Mon, 27 Feb 2006) | 2 lines
* internal linker script
........
r2701 | peter | 2006-02-27 12:05:12 +0100 (Mon, 27 Feb 2006) | 2 lines
* make elf working again
........
r2702 | peter | 2006-02-27 14:04:43 +0100 (Mon, 27 Feb 2006) | 3 lines
* disable dwarf for smartlinking with .a
* fix section start in new .a file
........
r2704 | peter | 2006-02-27 18:30:43 +0100 (Mon, 27 Feb 2006) | 2 lines
* stab section fixes
........
r2708 | peter | 2006-02-28 19:29:17 +0100 (Tue, 28 Feb 2006) | 2 lines
* basic work to merge stabs sections
........
r2712 | peter | 2006-02-28 23:17:48 +0100 (Tue, 28 Feb 2006) | 2 lines
* unload tmodules before linking
........
r2713 | peter | 2006-02-28 23:18:51 +0100 (Tue, 28 Feb 2006) | 2 lines
* fixed stabs linking
........
r2714 | peter | 2006-02-28 23:19:19 +0100 (Tue, 28 Feb 2006) | 2 lines
* show code and data size
........
r2715 | peter | 2006-02-28 23:25:35 +0100 (Tue, 28 Feb 2006) | 2 lines
* unload .stabs from objdata after it is merged
........
r2718 | peter | 2006-03-01 12:24:38 +0100 (Wed, 01 Mar 2006) | 3 lines
* memsize/datasize cleanup
* check for exports/resources when adding module to linker
........
r2722 | peter | 2006-03-03 09:12:20 +0100 (Fri, 03 Mar 2006) | 2 lines
* new TObjSymbol splitted from TAsmSymbol
........
r2723 | peter | 2006-03-03 14:08:55 +0100 (Fri, 03 Mar 2006) | 2 lines
* coff fixes after recent objsymbol changes
........
r2728 | peter | 2006-03-03 22:43:04 +0100 (Fri, 03 Mar 2006) | 2 lines
* fixed coff writer
........
r2729 | peter | 2006-03-04 01:10:32 +0100 (Sat, 04 Mar 2006) | 2 lines
* fix read-only opening
........
r2730 | peter | 2006-03-04 01:11:16 +0100 (Sat, 04 Mar 2006) | 2 lines
* Read edata from DLLs, basic work
........
r2740 | peter | 2006-03-04 21:13:43 +0100 (Sat, 04 Mar 2006) | 3 lines
* deletedef added
* don't remove defs from index when we are already clearing everything
........
r2769 | peter | 2006-03-05 21:42:33 +0100 (Sun, 05 Mar 2006) | 4 lines
* moved TObj classes to ogbase
* ObjSection.SymbolRefs and SymbolDefines list
* DLL importing
........
git-svn-id: trunk@2771 -
2006-03-05 21:10:37 +00:00
peter
9566255122
* allow out file parameters
...
* assign has out file
git-svn-id: trunk@2717 -
2006-03-01 10:18:47 +00:00
peter
232555904e
* symtablestack cleanup and rewrite
...
git-svn-id: trunk@2448 -
2006-02-05 22:24:18 +00:00
peter
abc49206fc
* section smartlink for win32 added, disabled by default because ld.exe
...
ignores the --gc-sections for pe-i38
git-svn-id: trunk@2305 -
2006-01-16 10:50:02 +00:00
florian
a76d26bcb1
* according to errore.msg -gw generates dwarf debugging info, this wasn't the case, fixed
...
git-svn-id: trunk@2298 -
2006-01-15 16:08:43 +00:00
peter
daa0be6ed1
* use not unsetbool for -WI-
...
git-svn-id: trunk@2277 -
2006-01-13 17:27:47 +00:00
peter
66f8276445
* refactor booleans in systeminfo structure, they are now flags
...
* support for case aware filesystems (Windows), they do now only
one lookup if a file exists
* add -WI option to generate import section for DLL imports or
let the linker handle it. Default is still import section until
the Makefiles are fixed, then the generation can be left to the
linker
git-svn-id: trunk@2274 -
2006-01-13 15:13:26 +00:00
florian
3ccec3fbdd
* proper error if a directory is passed as configuration file
...
git-svn-id: trunk@2134 -
2006-01-02 21:07:15 +00:00
michael
0362fa505d
+ -o now sets output path only if a path is explicitly specified
...
git-svn-id: trunk@1698 -
2005-11-08 20:25:04 +00:00
michael
9b59f0675f
+ Fixed -o option
...
git-svn-id: trunk@1669 -
2005-11-05 23:26:23 +00:00
peter
539b7dc220
* setting the compile mode should set the preprocessor symbol directly
...
git-svn-id: trunk@1457 -
2005-10-18 06:57:39 +00:00
tom_at_work
28381b1287
* new assembler symbol type AT_LABEL needed for PowerPc64 target
...
+ added automatic definition of FPC_REQUIRES_PROPER_ALIGNMENT define for PowerPC64 target
git-svn-id: trunk@1278 -
2005-10-03 22:13:45 +00:00
peter
89297d2c39
* move all stabs ($ifdef gdb) code to dbgstabs
...
git-svn-id: trunk@1255 -
2005-10-02 11:17:05 +00:00
peter
ec4d287fd8
* aktoutputformat removed, add new paraXX vars for target
...
assembler and debuginfo and use these vars to override
the defaults for the target after the parameters are read
* remove not-maintained and tested gdb code
git-svn-id: trunk@1201 -
2005-09-25 21:17:37 +00:00
peter
6bf3269b41
* powerpc64 port from Thomas Schatzl
...
git-svn-id: trunk@1193 -
2005-09-25 17:19:44 +00:00
florian
21cc9597f2
+ fpcylix unit
...
+ -Sk option
git-svn-id: trunk@1106 -
2005-09-18 08:34:51 +00:00
michael
7184d30fc1
+ Fixed bootstrap problem for resources
...
git-svn-id: trunk@1013 -
2005-09-01 16:57:03 +00:00
florian
d9f6a5a374
* support of apptype native for windows after a suggestion of Brian Bi
...
git-svn-id: trunk@977 -
2005-08-29 19:03:12 +00:00
florian
a53c9e2666
* fixed stupid copy/paste which turned softfloat always off
...
* fixed wince softfloat compiler proc. to be correctly named also when used outside the system unit
git-svn-id: trunk@966 -
2005-08-28 21:08:23 +00:00
florian
adb193497d
+ softfloat support for wince
...
* more units are build for wince
git-svn-id: trunk@959 -
2005-08-28 12:40:43 +00:00
olle
2a5e6d7b92
+ compile time variables can be given on the command line
...
git-svn-id: trunk@923 -
2005-08-22 19:34:54 +00:00
florian
9a624dd82f
* proper displaying of arm targets
...
git-svn-id: trunk@853 -
2005-08-13 16:57:06 +00:00
florian
0f671b0962
* default apptype for wince is gui
...
git-svn-id: trunk@852 -
2005-08-13 16:48:00 +00:00
Jonas Maebe
8bc4e0a32f
* inline and compilerproc are now procoptions instead of proccall types
...
(so both can be combined with each other, as well as with other calling
conventions)
* defined COMPPROCINLINEFIXED so SYSTEMINLINE is again activated
git-svn-id: trunk@658 -
2005-07-18 15:27:14 +00:00
Jonas Maebe
9d9fd923d9
* the 'main' procedure for darwin is now placed in the main program instead
...
of in the system unit
+ ability to rename this 'main' symbol (-XM<x>, e.g. -XMSDL_main for SDL), for
all OS'es
+ mention the -Xm parameter in the help
git-svn-id: trunk@503 -
2005-06-26 13:24:12 +00:00
Jonas Maebe
4292e7f939
- removed obsolete FPC_MTFSB0_CORRECTED macro
...
git-svn-id: trunk@487 -
2005-06-24 18:34:58 +00:00
Jonas Maebe
6a8eddb6ce
* fixed compilation with -dUSE_SYSUTILS
...
git-svn-id: trunk@486 -
2005-06-24 18:34:14 +00:00
florian
7cd67ea3f0
* node optimizer branch merged
...
* gotonode and gotolabel refactored
* -Nu added to enable for loop unrolling
git-svn-id: trunk@446 -
2005-06-19 17:42:10 +00:00
florian
ec6d5ff211
+ utf-8 support for string constants added
...
git-svn-id: trunk@428 -
2005-06-16 20:16:37 +00:00
michael
7449f99d5f
+ Removed all compatibility defines from compiler
...
git-svn-id: trunk@335 -
2005-06-09 21:14:22 +00:00
florian
21ae782854
* fixed more xmm stuff
...
+ some win64 stuff added
git-svn-id: trunk@330 -
2005-06-09 20:50:17 +00:00
florian
ebcb69478f
* fixed a lot of stuff for fpu/mm register variables
...
git-svn-id: trunk@199 -
2005-06-04 21:23:15 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
83fa3bd0cb
+ output of supported instruction sets in info page
2005-05-05 14:53:55 +00:00
florian
f6442b758c
* overloading of assignment operator by different unique result types now possible
2005-04-28 19:32:11 +00:00
peter
9843416e70
* always use exceptions to stop the compiler
...
- remove stop, do_stop
2005-04-24 21:01:37 +00:00
peter
9db3d9e07c
* -Fe on commandline redirects now all output
2005-04-15 15:43:54 +00:00
olle
878c56bad6
* Cleaned up handling of source file extension.
...
+ Added support for .p extension for macos and darwin
2005-03-20 22:36:45 +00:00
florian
eeaded577a
* fixed copy(dyn. array,...);
2005-03-05 16:37:28 +00:00
peter
abb3f82ceb
* getheapstatus fixes
2005-03-04 16:49:22 +00:00
florian
534b11cfb1
* userdata in file/textrecs now 32 bytes
2005-02-26 15:42:45 +00:00
florian
83b04efbc3
* defaultreplacement expansion for -XP and -Xr
2005-02-19 18:32:16 +00:00
florian
16718b81e4
* cross compiliation defines
2005-02-19 18:10:57 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
c5488ea6b1
* -Fa option added, it'll load the units before the uses
...
line is parsed. Can be used to load cthreads from the commandline.
Example '-g -Faheaptrc,lineinfo' is the same as '-ghl'
2005-02-06 21:33:28 +00:00
florian
e995e131bd
*** empty log message ***
2005-02-05 10:24:17 +00:00
peter
79c20ebf7d
* use val() for decoding integers
2005-01-20 17:05:53 +00:00
olle
7572f3a539
* rework of macro subsystem
...
+ exportable macros for mode macpas
2005-01-09 20:24:43 +00:00
peter
eae6d4fc8b
* Allow #include ~/.fpc.cfg
2005-01-08 23:14:50 +00:00
florian
a90585b5a4
* arm sets FPUFPA by default for now
2005-01-04 16:19:52 +00:00
peter
b34de6861f
fix outline of 3rd level of options (-SI option mainly)
2005-01-03 20:27:47 +00:00
Tomas Hajny
f290fbb299
* 8.3 fixes (short target name in paths)
2004-12-28 20:43:00 +00:00
marco
e79fb753bc
* slash typo
2004-12-16 08:06:42 +00:00
marco
9dec5c3179
* introduction "cleanpath" (=fexpand), fixfilename(paramstr(0)) + search $PREFIX/etc/fpc.cfg
2004-12-15 16:06:47 +00:00
peter
a263b1d40e
* GetHeapStatus added, removed MaxAvail,MemAvail,HeapSize
2004-11-22 19:34:58 +00:00
peter
14d25d278b
mangledname setting moved to place after the complete proc declaration is read
...
import generation moved to place where body is also parsed (still gives problems with win32)
2004-11-17 22:21:35 +00:00
peter
f80f3fc0fa
* shortstr compare with empty string fixed
...
* removed special i386 code
2004-11-01 12:43:28 +00:00
peter
7d745c0483
* default paths fixed
2004-10-31 19:09:54 +00:00
peter
759c010f6a
* -Ch for heapsize added again
...
* __heapsize contains the heapsize
2004-10-26 15:11:01 +00:00
peter
e7459f5466
* heap and heapsize removed
...
* checkpointer fixes
2004-10-25 15:38:41 +00:00
peter
705868e816
* remove saveregister calling convention
2004-10-24 20:01:08 +00:00
mazen
581b52422c
- remove $IFDEF DELPHI and related code
...
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
mazen
75363a20b0
* Merge is complete for this file, cycles !
2004-10-14 14:03:02 +00:00
florian
feeba0ede6
* bootstrapping with rtti alignment fixed
2004-10-05 20:21:02 +00:00
Tomas Hajny
5df0c00360
* better PathExists, fix for too long command line, correction of message
2004-09-21 23:33:43 +00:00
peter
33a834821f
* paraloc branch merged
2004-09-21 17:25:12 +00:00
peter
90c280a42d
* Use FExpand on paths passed to compiler
2004-09-16 16:31:53 +00:00
Jonas Maebe
1c0fb6a6ea
* exit with exit code 0 instead of 1 after writing out quick options
...
(such as -iV)
2004-09-10 21:00:23 +00:00
michael
41f7fa8c37
+ Check if outputdir exists, Fix exitcode when displaying help pages
2004-09-08 11:23:30 +00:00
peter
d763f9e142
browser disabled
...
uf_local_symtable ppu flag when a localsymtable is stored
2004-08-27 21:59:26 +00:00
olle
4b0b17a5aa
+ allow fileextension .p, in mode macpas
2004-07-05 21:26:28 +00:00
Jonas Maebe
bfe36fde4d
* fixed "-g-l" (and other "-g-*" combinations)
2004-07-04 12:24:04 +00:00
florian
8a9758c5e2
* logs truncated
2004-06-20 08:55:28 +00:00
florian
588e2c38bf
* dwarf branch merged
2004-06-16 20:07:06 +00:00
florian
5168141540
* m68k compiler compilation fixed
2004-05-06 20:30:51 +00:00
olle
46451e4662
+ added $APPTYPE TOOL for MPW tools on MacOS
2004-04-04 18:46:09 +00:00
florian
aae508c277
+ arm floating point register saving implemented
...
* hopefully stabs generation for MacOSX fixed
+ some defines for arm added
2004-03-29 19:19:35 +00:00
florian
3554fac953
+ added FPC_COMP_IS_INT64 define
2004-03-27 23:23:03 +00:00
peter
e46cdcea48
* constants ordinals now always have a type assigned
...
* integer constants have the smallest type, unsigned prefered over
signed
2004-03-23 22:34:49 +00:00
florian
f3c4d487e7
+ added interface support for the arm
...
* added FPC_REQUIRES_PROPER_ALIGNMENT define for targets which require proper alignment
2004-03-21 22:40:15 +00:00
florian
292aa0175c
+ cross compilation dir search added
2004-03-20 22:57:07 +00:00
peter
37f3f95b59
* more stabs fixes
...
* special mode -gv for valgrind compatible stabs
2004-03-10 22:52:57 +00:00
florian
61f15e4ec4
* make cycle fixed
...
+ pic support for darwin
+ support of importing vars from shared libs on darwin implemented
2004-03-02 17:32:12 +00:00
florian
00dbe6655d
+ nx86set added
...
* some more x86-64 fixes
2004-02-22 12:04:04 +00:00
marco
9a83a21c64
* pthread on -CURRENT related fixes.
2004-02-15 16:34:18 +00:00
florian
0874e96a94
+ FPC_PREFETCH defined
2004-02-03 00:42:08 +00:00
florian
37454274bc
* fixed several arm floating point issues
2004-01-24 18:12:40 +00:00
peter
fa9e45b7cb
* decrrefcount resets temps to nil
2004-01-21 22:13:20 +00:00
Jonas Maebe
4c7c8b9c3a
* fixed mtfsb0 instruction for assembler reader/writer
...
* fixed initialisation of fpscr register to avoid spurious SIGPFE's
(uses mtfsb0 instruction, so added extra define in options.pas to avoid
requiring to start with a cross compiler)
2004-01-10 00:16:20 +00:00
Jonas Maebe
2af569745c
* if currency = int64, FPC_CURRENCY_IS_INT64 is defined
...
+ round and trunc for currency and comp if FPC_CURRENCY_IS_INT64 is
defined
* if currency = orddef, prefer currency -> int64/qword conversion over
currency -> float conversions
* optimized currency/currency if currency = orddef
* TODO: write FPC_DIV_CURRENCY and FPC_MUL_CURRENCY routines to prevent
precision loss if currency=int64 and bestreal = double
2004-01-02 17:19:04 +00:00
Tomas Hajny
73bd91bfc3
* fixed incorrect error message
2003-12-17 22:50:42 +00:00
florian
6793170b72
* HASGLOBALPROPERTY define introduce
2003-12-11 18:15:06 +00:00
florian
96000de6d9
* variants and interfaces on powerpc released
2003-12-10 01:54:44 +00:00
peter
765b1b51b6
* define REGCALL when pocall_default=pocall_register
2003-11-11 21:10:34 +00:00
florian
bbf7300a0c
* Florian's culmutative nr. 1; contains:
...
- invalid calling conventions for a certain cpu are rejected
- arm softfloat calling conventions
- -Sp for cpu dependend code generation
- several arm fixes
- remaining code for value open array paras on heap
2003-11-07 15:58:32 +00:00
marco
d4a94d9294
* -Xc -Xr support
2003-10-22 15:40:44 +00:00
Tomas Hajny
4c5f5382a1
* upper limit for heapsize removed
2003-10-18 09:14:18 +00:00
olle
4b274401b8
* compiler now defines cpum68k instead of cpu68k (as is used in rtl)
2003-10-17 21:05:27 +00:00
florian
57a2fe6ddb
+ some code for PIC support added
2003-10-14 00:30:48 +00:00
marco
d841f44994
* -Xd
2003-10-11 19:32:04 +00:00
peter
f187323816
* -P to -ap
...
* -V to -vv
2003-10-08 19:17:43 +00:00
marco
487650ab51
* -XP<prefix> support
2003-10-03 14:16:48 +00:00
olle
41fda4ee40
+ added command line option for language mode -M<x>
2003-09-17 21:37:07 +00:00
peter
1fcc82e61a
* don't check exepath when linking on target
2003-09-14 21:33:11 +00:00
olle
82e40f6506
+ compiler now define abi macros for powerpc FPC_ABI_AIX or FPC_ABI_SYSV
2003-09-06 10:41:54 +00:00
florian
22f1ff8da4
* merged Wiktor's Watcom patches in 1.1
2003-09-05 17:41:12 +00:00
peter
b4d54b1889
* powerpc needs software int64 to double
2003-09-03 21:06:05 +00:00
peter
6a8d5eb25d
* NEWRA branch merged
2003-09-03 15:55:00 +00:00
florian
220e05dd5e
* fixed arm concatcopy
...
+ arm support in the common compiler sources added
* moved some generic cg code around
+ tfputype added
* ...
2003-09-03 11:18:36 +00:00
peter
05c05f2555
* failn removed
...
* inherited result code check moven to pexpr
2003-05-13 19:14:41 +00:00
florian
fa27f77a17
* FPC_LITTLE_ENDIAN and FPC_BIG_ENDIAN is now defined as well
2003-05-11 19:17:16 +00:00
florian
9612e57805
* introduced defaultordconsttype to decribe the default size of ordinal constants
...
on 64 bit CPUs it's equal to cs64bitdef while on 32 bit CPUs it's equal to s32bitdef
+ added defines CPU32 and CPU64 for 32 bit and 64 bit CPUs
* int64s/qwords are allowed as for loop counter on 64 bit CPUs
2003-05-01 07:59:42 +00:00
florian
59906e4e7c
* fixed defines for x86-64
2003-04-30 16:35:00 +00:00
florian
88f3ab569c
+ HAS_TYPE_* defines for floats on i386 and powerpc added
2003-04-24 11:21:45 +00:00
peter
c4ddcc78a8
* generic constructor working for i386
...
* remove fixed self register
* esi added as address register for i386
2003-03-28 19:16:56 +00:00
Tomas Hajny
8e7124f9f8
+ emx target added
2003-03-23 23:11:17 +00:00
daniel
e8f649f5c2
+ $define newra will enable new register allocator
...
+ getregisterint will return imaginary registers with $newra
+ -sr switch added, will skip register allocation so you can see
the direct output of the code generator before register allocation
2003-03-08 08:59:07 +00:00
peter
cab4c8879f
* only compile cs_fp_emulation support when cpufpuemu is defined
...
* define cpufpuemu for m68k only
2002-12-06 16:56:57 +00:00
carl
dc22ce1415
- removed cs_fp_emulation checking for m68k, its now controled
...
by a global switch
+ added powerpc/sparc/vis message options support
2002-11-30 23:14:55 +00:00
carl
f8d831d6ce
+ -Ce for softfpu
2002-11-30 21:29:56 +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
peter
5805755619
* fix -n that was broken in the previous commit
2002-10-23 17:07:40 +00:00
peter
3f3b1f8912
* first search for fpc.cfg instead of deprecated ppc386.cfg
...
* parse commandline options first before searching configfile so -vt
can be used to display the searched files
2002-10-23 16:57:16 +00:00
peter
0538dce044
* define HASTHREADVAR
2002-10-13 21:33:01 +00:00
peter
d774c8d988
* Copy() is now internal syssym that calls compilerprocs
2002-10-02 18:20:52 +00:00
carl
8733061c78
* stack checking cannot be called before system unit is initialized
...
* MC68020 define
2002-09-22 14:02:34 +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
carl
1ef442f4bf
- removed newcg define
2002-08-09 19:15:41 +00:00
florian
1b5435381b
* several PowerPC related fixes to get forward with system unit compilation
2002-07-26 22:22:10 +00:00
florian
eb2ca8d10f
* rewrote the system handling
2002-07-26 21:15:37 +00:00
florian
4f7b35be5b
+ source code page support
2002-07-20 17:11:48 +00:00
florian
479a745096
* first x86-64 patches
2002-07-04 20:43:00 +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
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
peter
6320530bdd
* removed newn and disposen nodes, the code is now directly
...
inlined from pexpr
* -an option that will write the secondpass nodes to the .s file, this
requires EXTDEBUG define to actually write the info
* fixed various internal errors and crashes due recent code changes
2002-04-21 19:02:03 +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
d5e772d8a4
+ CPU defines now depends on current target
2002-04-07 10:22:35 +00:00
peter
5e7a1e3729
* removed unused units
...
* use tlocation.size in cg.a_*loc*() routines
2002-04-04 19:05:54 +00:00
carl
0ee2ac7451
+ added wdosx support (patch from Pavel)
2002-04-04 18:30:22 +00:00
peter
e45bb82d81
* freemem change to value parameter
...
* torddef low/high range changed to int64
2001-12-03 21:48:41 +00:00
carl
41c3b07113
* Renamed ppc.cfg -> fpc.cfg
2001-11-24 02:05:21 +00:00
carl
f113d708d8
+ ppc.cfg is now configuration file for compiler.
...
(first tries loading ppc386.cfg for backward compatibility)
2001-11-23 02:48:46 +00:00
peter
17d62feebe
* $calling directive and -Cc commandline patch added
...
from Pavel Ozerski
2001-10-23 21:49:42 +00:00
peter
45dab81414
* merged netbsd, fpu-overflow from fixes branch
2001-09-17 21:29:10 +00:00
marco
3b9df162d1
* fix from peter
2001-09-12 12:46:54 +00:00
peter
2d610e9be3
* asbsd merged
2001-08-30 20:57:09 +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
florian
07495c8526
* renamed messages unit to cmsgs to avoid conflicts with the
...
win32 messages unit
2001-08-20 10:58:48 +00:00
peter
fd8e5fa78c
* palmos support from v10 merged
2001-08-19 11:22:22 +00:00
peter
19e153abd3
* under development flag for targets
2001-08-12 17:57:06 +00:00
peter
7d45ac61de
* list targets with -i
2001-08-07 18:42:46 +00:00
Jonas Maebe
367f7a0362
+ "compilerproc" directive support, which turns both the public and mangled
...
name to lowercase(declaration_name). This prevents a normal user from
accessing the routine, but they can still be easily looked up within
the compiler. This is used for helper procedures and should facilitate
the writing of more processor independent code in the code generator
itself (mostly written by Peter)
+ new "createintern" constructor for tcal nodes to create a call to
helper exported using the "compilerproc" directive
+ support for high(dynamic_array) using the the above new things
+ definition of 'HASCOMPILERPROC' symbol (to be able to check in the
compiler and rtl whether the "compilerproc" directive is supported)
2001-08-01 15:07:29 +00:00
peter
899f2ad0bb
* removed fpu_in_rtl define (merged)
2001-07-31 19:38:46 +00:00
peter
121f1a09a0
* declare fpu in rtl for m68k linux
2001-07-30 21:39:26 +00:00
peter
db87f86f00
* Length made internal
...
* Add array support for Length
2001-07-09 21:15:40 +00:00
peter
ca8d604964
* various widestring updates, it works now mostly without charset
...
mapping supported
2001-07-08 21:00:14 +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
05e12f6894
* patch from Pavel Ozerski to support +/- better
2001-06-29 19:41:54 +00:00
Jonas Maebe
ea7b4b5367
* fixed typo in NOBOUNDCHECK define
2001-06-19 14:55:45 +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
8ee0413cf7
* extradefines field added to target_info, so that targets don't
...
need to put code in options.pas for it
2001-06-02 19:21:45 +00:00
peter
25e006b364
* endian define
2001-05-18 22:28:59 +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
0c03535b5b
* registration of targets and assemblers
2001-04-18 22:01:53 +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
b2c26bdd42
* fixed -Se (merged)
2001-03-25 12:27:31 +00:00
florian
e964449b71
+ some stuff to compile FreeCLX added
2001-03-23 00:16:07 +00:00
peter
939f49375f
* message loading fixes from Sergey (merged)
2001-03-13 20:59:56 +00:00
peter
9be4aa216f
* don't check messagefile for numbers, this allows the usage of
...
1.1 msgfiles with a 1.0.x compiler
2001-03-10 13:19:10 +00:00
peter
e49f13a393
* press enter moved to errore.msg
2001-03-05 21:50:28 +00:00
Jonas Maebe
af38291233
* simplified and optimized range checking code, FPC_BOUNDCHECK is no longer necessary
2001-03-03 12:41:22 +00:00
peter
684970ea22
* merged generic m68k updates from fixes branch
2001-02-26 19:44:52 +00:00
Jonas Maebe
c7af813c76
* fixed bug in type checking for compatibility of set elements (merged)
...
* released fix in options.pas from Carl also for FPC (merged)
2001-02-26 12:47:46 +00:00
michael
71e170f80f
* option_help_pages:
...
allow to omit an option (use one space char insteed an option)
but to indent a continuation line as if option is present. For lines:
3*2CX_first line
3*2 _second line
3*2*_third line
we could get:
-CX first line
second line
third line
2001-02-26 08:08:39 +00:00
michael
c6f78731ed
Support replacements for all -F<x> options
2001-02-26 07:49:50 +00:00
peter
6656025337
* applied patches from Sergey Korshunoff
2001-02-05 21:26:36 +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
9964f294bd
* fixed writing of quickinfo when no ppc386.cfg is available
2001-01-12 19:21:09 +00:00
florian
00917cb46f
* the info about exception frames is stored now on the stack
...
instead on the heap
2001-01-05 17:35:50 +00:00
peter
32b9cdb7cf
+ new tlinkedlist class (merge of old tstringqueue,tcontainer and
...
tlinkedlist objects)
2000-12-25 00:07:25 +00:00
peter
6d8398ab9f
* use system.paramstr()
2000-12-24 12:21:41 +00:00
peter
be95b0758b
* object to class conversion
...
* more verbosity for -vt and -vd
* -i options can be put after eachother so the Makefiles only need
to call fpc once for all info (will be twice as the first one will
be to check the version if fpc supports multiple info)
2000-12-23 19:46:49 +00:00
Jonas Maebe
4f791d04b4
- removed all ifdef cardinalmulfix code
2000-12-16 15:56:18 +00:00
Jonas Maebe
0a70f9b06e
* only return int64's from functions if it int64funcresok is defined
...
+ added int64funcresok define to options.pas
2000-12-15 13:26:01 +00:00
florian
9107f49c03
* opts386 renamed
2000-11-30 22:48:23 +00:00
florian
b9796f6a7f
* unused units removed from uses clause
...
* some changes for widestrings
2000-11-29 00:30:30 +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
marco
e85fea41f5
* Define UNIX for FreeBSD and Linux. Checked crosscompile thingy.
2000-11-07 15:09:27 +00:00
marco
54897380bd
* FreeBSD defines (FreeBSD,Linux,BSD,Unix) Linux defines (Linux,Unix)
2000-11-07 14:25:08 +00:00
peter
8df98007d6
* more fixes to get make cycle working
2000-11-06 20:30:54 +00:00
florian
51527ba1c9
+ merged Attila's changes for interfaces, not tested yet
2000-11-04 14:25:19 +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
a71e44ac49
* use defines.inc
2000-09-24 15:06:10 +00:00
marco
0b7a6a9a6a
* Definition of multiple FreeBSD target defines moved to after error check
...
commandline parsing
2000-09-18 12:28:41 +00:00
peter
4003cdb728
* freebsd support merged
2000-09-16 12:22:52 +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
Jonas Maebe
cca5461149
* fixed bug in type conversions between enum subranges (it didn't take
...
the packenum directive into account)
+ define PACKENUMFIXED symbol in options.pas
(merged from fixes branch)
2000-08-07 11:31:04 +00:00
michael
2949824a69
+ Patch to 1.1
2000-07-14 05:11:48 +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