Jonas Maebe
226b0268e8
* savefpuexceptions directive renamed to safefpuexceptions
...
git-svn-id: trunk@7017 -
2007-03-28 18:05:40 +00:00
florian
fb1afe0ea4
+ set FPU* define properly
...
git-svn-id: trunk@6785 -
2007-03-11 17:16:23 +00:00
Legolas
96e1c482bc
* compiler part of first Nintendo DS port
...
git-svn-id: trunk@5592 -
2006-12-14 17:32:16 +00:00
florian
d47dc38f2c
* ignore PIC directive on windows and warn about it
...
git-svn-id: trunk@5479 -
2006-11-25 22:58:52 +00:00
peter
55f9758c25
* only add resext if no extension was specified
...
* default resext for windows changed to .res
git-svn-id: trunk@5193 -
2006-11-03 08:51:23 +00:00
peter
242113b873
* fix * support for resources
...
git-svn-id: trunk@5149 -
2006-11-01 15:53:13 +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
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
florian
569c4871fc
+ first batch of varset support, as long as packset isn't changed, it doesn't change anything
...
git-svn-id: trunk@4710 -
2006-09-24 14:40:11 +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
441d5a3c12
* use constant called C_alignment instead of -1 to denote C-style
...
packrecords
git-svn-id: trunk@4477 -
2006-08-20 16:37:10 +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
florian
57f097a710
* made dir_warn code more clear, no implementation yet
...
git-svn-id: trunk@4200 -
2006-07-14 21:45:21 +00:00
florian
dc2bef3875
+ implemented directives $setpeflags, $maxstacksize, $minstacksize and $imagebase, fixes #6349 and #6714
...
git-svn-id: trunk@3935 -
2006-06-25 10:22:42 +00:00
peter
e53cd4735a
* replace * in $R with main source instead of modulename
...
git-svn-id: trunk@3845 -
2006-06-11 12:45:45 +00:00
Jonas Maebe
05540cad44
* give an error for {$calling } (i.e., when a procedure directive is
...
missing)
git-svn-id: trunk@3193 -
2006-04-12 07:58:25 +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
5f3e0b5398
* link_allways -> link_always
...
git-svn-id: trunk@2594 -
2006-02-15 14:36:30 +00:00
peter
232555904e
* symtablestack cleanup and rewrite
...
git-svn-id: trunk@2448 -
2006-02-05 22:24:18 +00:00
florian
4662a12fd5
* compilation for arm target fixed
...
git-svn-id: trunk@2408 -
2006-02-02 17:26:18 +00:00
Károly Balogh
b718d9ff37
+ added framework code for AmigaOS/PPC syscall support
...
git-svn-id: trunk@2239 -
2006-01-09 08:58:30 +00:00
Károly Balogh
238964e443
Various m68k fixes/additions:
...
- fixes in asmreader, basic stuff works again, the rest is untested
- removed lot of unnecessary ungetcpuregister()s
- various other fixes i forgot
+ basic amigaos syscalls support. still lacks explicit funcretloc
git-svn-id: trunk@1943 -
2005-12-13 20:42:15 +00:00
florian
1e4e857719
* apptype causes only a note on system not supporting apptype
...
git-svn-id: trunk@1827 -
2005-11-26 21:54:15 +00:00
florian
5c92126933
+ $PIC module switch directive
...
git-svn-id: trunk@1740 -
2005-11-13 21:21:15 +00:00
florian
a6b00feb1e
+ warn directive is different fom warnings and warning
...
git-svn-id: trunk@1682 -
2005-11-06 20:09:28 +00:00
peter
252d90b691
* $CodeAlign directive added for fine tuning off alignment during code generation
...
git-svn-id: trunk@1489 -
2005-10-19 06:05:48 +00:00
peter
e23519c45b
* support A1,A2,A4,A8 directives
...
git-svn-id: trunk@1488 -
2005-10-19 05:54:27 +00:00
florian
f916ea20b3
* patch from yury to warn about wrong warning of unsupported apptype
...
git-svn-id: trunk@1321 -
2005-10-08 08:17:35 +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
6bc461dc61
* realmodulename must be used of course
...
git-svn-id: trunk@1181 -
2005-09-25 09:14:22 +00:00
florian
fa90e913df
* don't lowercase resource file name in delphi mode
...
git-svn-id: trunk@1180 -
2005-09-25 08:48:13 +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
michael
3392189fb0
+ Implemented resources for ELF
...
git-svn-id: trunk@956 -
2005-08-28 09:35:35 +00:00
olle
438f229f52
* changed unknown align/enum warings into errors and also improved them
...
git-svn-id: trunk@582 -
2005-07-04 19:28:42 +00:00
florian
ec6d5ff211
+ utf-8 support for string constants added
...
git-svn-id: trunk@428 -
2005-06-16 20:16:37 +00:00
florian
d01bde1a83
+ $WARN directive implemented fixes bug #3939
...
git-svn-id: trunk@65 -
2005-05-22 11:57:24 +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
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
ad9d04f104
* removed $threading
2005-02-06 11:15:31 +00:00
peter
ea269120e5
* $COPERATORS added
2005-01-20 17:32:33 +00:00
peter
79c20ebf7d
* use val() for decoding integers
2005-01-20 17:05:53 +00:00
peter
0050ff5ab9
* ignore more delphi directives
2005-01-18 15:44:43 +00:00
olle
7572f3a539
* rework of macro subsystem
...
+ exportable macros for mode macpas
2005-01-09 20:24:43 +00:00
Károly Balogh
5908985365
* more SysV call support stuff for MorphOS
2005-01-06 02:13:03 +00:00
Károly Balogh
088575dc32
+ sysv style syscalls added for MorphOS
2005-01-04 17:40:33 +00:00
florian
b6199234eb
* prepared for fpu mode depended define
2005-01-04 16:18:57 +00:00
peter
e009b39d8b
* check extension of library if it needs to be linked static
2004-11-06 17:58:10 +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
mazen
581b52422c
- remove $IFDEF DELPHI and related code
...
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
armin
354004d803
* target netwlibc added (libc is preferred for newer netware versions)
2004-09-04 21:18:47 +00:00
olle
617eb1b118
+ compiler directives which take filenames/paths, get these trimmed, and
...
also support quotes.
2004-08-31 22:07:04 +00:00
peter
1035b45833
* support $RESOURCE
2004-08-22 10:17:27 +00:00
olle
5a67308b98
+ added directive LibExport for macpas, which does nothing atm
2004-08-16 11:34:25 +00:00
olle
e321ac764c
* fixes compilation on 1.0.*
2004-07-06 09:41:46 +00:00
olle
ff36adb056
+ macpas style: exit, cycle, leave
...
+ macpas compiler directive: PUSH POP
2004-07-05 21:49:43 +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
peter
06448271ff
* $message directive compatible with delphi
2004-05-19 23:29:56 +00:00
olle
717ca3489e
* Performanceimprovement
2004-05-11 22:51:34 +00:00
olle
ec4743a83e
+ mode macpas: support for Apples align directives
2004-05-11 18:30:50 +00:00
olle
46451e4662
+ added $APPTYPE TOOL for MPW tools on MacOS
2004-04-04 18:46:09 +00:00
peter
ba9f4a0703
* packrecords fixed for settings from $PACKRECORDS
...
* default packrecords now uses value 0 and uses info from aligment
structure only, initpackrecords removed
2004-03-14 20:08:37 +00:00
peter
8caaa7740d
* more record alignment fixes
2004-01-28 22:16:31 +00:00
florian
06442fa677
+ $fputype directive support
...
+ single data type operations with sse unit
* fixed more x86-64 stuff
2003-12-25 01:07:09 +00:00
florian
1af574ceca
* assembler readers OOPed
...
+ typed currency constants
+ typed 128 bit float constants if the CPU supports it
2003-11-12 16:05:39 +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
olle
6f78eac09f
+ support for a different set of compiler directives under $MODE MAC
...
+ added mac directives $SETC $IFC $ELSEC $ENDC
2003-09-17 22:30:19 +00:00
Tomas Hajny
8e7124f9f8
+ emx target added
2003-03-23 23:11:17 +00:00
peter
c94fba5944
* OBJECTCHECKS added, equivalent of -CR
...
* WRITEABLECONST added, equivalent of $J
2003-01-03 21:25:01 +00:00
carl
857e2918ad
* stricter version / revision checking (also remove some warnings)
2002-12-07 14:06:20 +00:00
mazen
1d381958d4
+ module path is now passed to AddPath to fix relative unit path
2002-11-20 11:12:46 +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
fb12ccee3b
* threading switch, defines the symbol FPC_THREADING
2002-10-14 19:43:41 +00:00
carl
c68b2dfbee
* rename swatoperands to swapoperands
...
+ m68k first compilable version (still needs a lot of testing):
assembler generator, system information , inline
assembler reader.
2002-08-13 18:01:50 +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
26351214da
+ Directive $EXTERNALSYM added, it is ignored for now
2002-07-16 15:37:58 +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
bd0fb2399d
+ wdosx target
2002-04-07 13:34:20 +00:00
peter
5e7a1e3729
* removed unused units
...
* use tlocation.size in cg.a_*loc*() routines
2002-04-04 19:05:54 +00:00
peter
887f6ba34c
* removed obsolete chainprocsym and test_procsym code
2001-11-02 23:16:50 +00:00
peter
17d62feebe
* $calling directive and -Cc commandline patch added
...
from Pavel Ozerski
2001-10-23 21:49:42 +00:00
peter
915b5cd7a9
* split constsym.value in valueord,valueordptr,valueptr. The valueordptr
...
is used for holding target platform pointer values. As those can be
bigger than the source platform.
2001-09-02 21:18:28 +00:00
peter
fd8e5fa78c
* palmos support from v10 merged
2001-08-19 11:22:22 +00:00
peter
634a68bf3e
* merged netbsd start
...
* profile for win32
2001-08-07 18:47:12 +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
c430926744
* Align directive supports also values to be Kylix compatible. It's
...
strange because the help of kylix still shows only On and Off as
possible values, so still support those. On means 4 bytes and Off
means 1 byte alignment.
2001-06-03 20:20:27 +00:00
peter
652a4b8aaa
* netware patches for copyright, screenname, threadname directives
2001-05-30 21:35:48 +00:00
peter
0c03535b5b
* registration of targets and assemblers
2001-04-18 22:01:53 +00:00
peter
316523ca15
* easier registration of directives
2001-04-13 18:00:36 +00:00