peter
9f3de7e809
* -Xg generates a separate file with the debug info sections
...
git-svn-id: trunk@6628 -
2007-02-24 15:06:31 +00:00
michael
42f610f710
* Applied patch to preserve case in stabs info (-gp)
...
git-svn-id: trunk@6611 -
2007-02-23 10:42:20 +00:00
daniel
5aef9bc086
- Put gpc mode between ifdefs. The only thing it does it disable all
...
features, this is not gpc compatibility.
git-svn-id: trunk@6518 -
2007-02-16 23:13:28 +00:00
tom_at_work
106fe68ce6
* renamed TStringList to TCmdStrList, in general use TCmdStr instead of shortstrings to fix bug #6351
...
git-svn-id: trunk@6215 -
2007-01-26 22:29:39 +00:00
pierre
95b126b364
+ reinstate browser switches
...
git-svn-id: trunk@6138 -
2007-01-23 05:41:26 +00:00
florian
fd2032dab2
+ start of embedded rtl
...
+ feature support in the compiler
git-svn-id: trunk@5628 -
2006-12-17 18:40:36 +00:00
Legolas
96e1c482bc
* compiler part of first Nintendo DS port
...
git-svn-id: trunk@5592 -
2006-12-14 17:32:16 +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
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
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
a61abb25cb
* reorganized optimizer switch sets
...
git-svn-id: trunk@4862 -
2006-10-11 18:16:10 +00:00
florian
02d0ac4c3e
+ only procedures doing recursive calls are checked for tail recursivity
...
+ parameters are tested if they are usable with tail recursion removal
git-svn-id: trunk@4853 -
2006-10-10 20:29:48 +00:00
florian
82b7b785f7
+ TAILREC optimizer switch
...
git-svn-id: trunk@4849 -
2006-10-10 18:41:28 +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
d07f470b71
* remove ifdef fpc
...
git-svn-id: trunk@4819 -
2006-10-07 13:43:34 +00:00
peter
0bb22a2d17
* don't generate fwait by default anymore
...
* SAVEFPUEXCEPTIONS switch added to enable fwait inserts
git-svn-id: trunk@4733 -
2006-09-26 19:22:45 +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
Jonas Maebe
eccbc78e04
+ support for bitpacked arrays:
...
+ use {$bitpacking on/+} to change the meaning of "packed"
into "bitpacked" for arrays. This is the default for MacPas.
You can also define individual arrays as "bitpacked", but
this is not encouraged since this keyword is not known by
other compilers and therefore makes your code unportable.
+ pack(unpackedarray,index,packedarray) to pack
length(packedarray) elements starting at
unpackedarray[index] into packedarray.
+ unpack(packedarray,unpackedarray,index) to unpack
packedarray into unpackedarray, with the first
element being stored at unpackedarray[index]
* todo:
* "open packed arrays" and rtti for packed arrays are not
yet supported
* gdb does not properly support bitpacked arrays
git-svn-id: trunk@4449 -
2006-08-19 12:54:12 +00:00
marco
2a5332e3bd
* Link ordering working FreeBSD implementation
...
git-svn-id: trunk@3894 -
2006-06-19 14:17:45 +00:00
Jonas Maebe
e344ee3cd7
+ support for register variables which contain records
...
git-svn-id: trunk@3580 -
2006-05-19 15:49:07 +00:00
peter
d69ad5d84d
* cleanup external/nolink options
...
git-svn-id: trunk@3375 -
2006-04-29 21:49:37 +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
ecdb5df2d6
* fix alignment of tdoublearray by using a variant record
...
git-svn-id: trunk@3071 -
2006-03-29 06:40:47 +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
b6e35a200e
* rewrite of optimizer options
...
git-svn-id: trunk@2901 -
2006-03-13 09:05:50 +00:00
Jonas Maebe
72250d3954
* link_allways -> link_always (forgot to commit)
...
git-svn-id: trunk@2597 -
2006-02-15 16:49:24 +00:00
daniel
fbc08c229d
+ Add m_property mode switch to allow per mode recognition of
...
property.
git-svn-id: trunk@2570 -
2006-02-14 17:11:18 +00:00
Jonas Maebe
ac24965242
* procedures which use goto/label revert to the older and less
...
efficient regvar allocation scheme
* also allocate regvars before the loops, not just afterwards
git-svn-id: trunk@2192 -
2006-01-05 23:45:00 +00:00
florian
f7d2c47f73
+ no stackframe is generated for i386 if possible
...
git-svn-id: trunk@2162 -
2006-01-04 19:19:06 +00:00
peter
80fef1e8ad
* fix parsing of typecasts in type declarations
...
git-svn-id: trunk@2026 -
2005-12-22 12:21:06 +00:00
peter
95879fe8a7
* basic support for generic classes
...
git-svn-id: trunk@2020 -
2005-12-21 10:11:15 +00:00
peter
632bdcd149
* $W switch sets the localswitch cs_generate_stackframes that can be
...
used in the future
git-svn-id: trunk@1487 -
2005-10-19 05:50:26 +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
florian
21cc9597f2
+ fpcylix unit
...
+ -Sk option
git-svn-id: trunk@1106 -
2005-09-18 08:34:51 +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
daniel
d57c048696
* Remove ifdef 1_0
...
* Add expirimental 32-bit x86_64 target to systems
git-svn-id: trunk@729 -
2005-07-23 08:37:26 +00:00
florian
aa66f735ca
* increased significant id len to 127 because there are unicode character constant names longer than 64 char
...
git-svn-id: trunk@659 -
2005-07-18 21:38:47 +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
peter
408bba521a
* support constset in $if
...
git-svn-id: trunk@538 -
2005-06-30 08:19:01 +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
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
Jonas Maebe
bfa2301575
* const record parameters > 8 bytes are now passed by reference for non
...
cdecl/cppdecl procedures on Mac OS/Mac OS X to fix compatibility with
GPC (slightly more efficient than Metrowerks behaviour below, but
less efficient in most cases than our previous scheme)
+ "mwpascal" procedure directive to support the const record parameter
behaviour of Metrowerks Pascal, which passes all const records by
reference
2005-03-27 14:10:52 +00:00
peter
0ae80eea41
* allow enum arithmetics inside an enum def, compatible with delphi
2005-02-17 17:52:39 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
ad9d04f104
* removed $threading
2005-02-06 11:15:31 +00:00
florian
cc9534cf41
+ added pi bit pattern to the compiler, so pi should always be correct
2005-01-23 21:09:11 +00:00
florian
bb096fcec6
* fixed nan et al. handling on arm
2005-01-04 16:20:51 +00:00