Commit Graph

334 Commits

Author SHA1 Message Date
florian
48fb130be3 * fixed fpu type setting for avr
git-svn-id: trunk@10463 -
2008-03-08 17:09:40 +00:00
Jonas Maebe
86f90d8ac1 + support for setting the name of "main" (-XM command line parameter) in
the code using {$pascalmainname x} + storing it in the ppu file
    (and give a warning if it's overridden multiple times + test)

git-svn-id: trunk@10406 -
2008-03-01 13:05:01 +00:00
michael
130bac9c03 * Fixed bug #10511
git-svn-id: trunk@9594 -
2007-12-30 21:35:04 +00:00
micha
0625040eba + add -XR switch for target root file system with libs (also used for C lib type detection)
git-svn-id: trunk@8695 -
2007-09-30 15:00:54 +00:00
peter
6b8aed593f * remove registers{int/mmx/fpu} from firstpass
* small cleanups of unused variables in firstpass
  * node_resources_fpu() created to get an approximation of the
    required fpu registers
  * for the moment use node_complexity in the CG until the
    node_resource_int() is created

git-svn-id: trunk@8655 -
2007-09-26 21:12:01 +00:00
Tomas Hajny
3db626873b * first part of cfileutl cleanup
git-svn-id: trunk@8533 -
2007-09-17 21:20:37 +00:00
Jonas Maebe
488cfa3c32 + -go<x> switch for debugging options (some global switches could be
moved to it)
  + -go[no]dwarfsets switch to [disable]/enable generation of dwarf set
    information, as this breaks gdb < 6.5 (used to be disabled in the
    compiler by an ifdef, still off by default)

git-svn-id: trunk@8414 -
2007-09-09 09:27:49 +00:00
Jonas Maebe
21abdd2f4e + support for specifying the minimal precision for floating point
constants. The default is currently 32 bits/single, which corresponds
    to the old behaviour (constants which cannot be exactly represented
    in the default/chosen precision will also still be automatically
    upgraded to higher precision). Supported constructs:
   * Command line switch -CF<x>
   * Compiler directive {$MINFPCONSTPREC <x>}
  whereby in both cases <x> can be default, 32 or 64. 80 is not supported
  because there is no generic way to figure out whether the current target
  actually supports 80 bit precision floating point calculations while
  parsing the command line switches (pbestreal can still change in case of
  win64 or -Cfsse2)

git-svn-id: trunk@8349 -
2007-09-01 19:38:27 +00:00
Jonas Maebe
a3c9dc5ec6 + support for {$linkframework x} to link to framework x (Darwin only)
+ support for {$frameworkpath x} and -Ffx to add x to the directories to
    search for frameworks (Darwin only)

git-svn-id: trunk@8165 -
2007-07-25 15:42:30 +00:00
daniel
4c81c227fa - Remove long2hex, replace by hexstr.
git-svn-id: trunk@8111 -
2007-07-21 10:29:09 +00:00
Jonas Maebe
28bab3fb4f - removed some unused variables
* fixed some (harmless) ptrint warnings
  - removed some commented code in agppcmpw
  * added one missing field in a typed constant in cp1251

git-svn-id: trunk@8081 -
2007-07-17 13:57:15 +00:00
yury
1782305ae2 * Completely fixed float constants in softfloat mode when compiler was compiled in hardfloat mode on arm-linux host.
git-svn-id: trunk@8015 -
2007-07-10 21:05:12 +00:00
marco
569d7e1138 * fixed deprecated
git-svn-id: trunk@7719 -
2007-06-17 20:40:47 +00:00
daniel
9adb202a92 * Rework the constexprint to allow operations from low(int64) to high(qword).
+ Some initial work on a formaldef which also carries the typinfo of a parameter.

git-svn-id: trunk@7639 -
2007-06-13 07:41:18 +00:00
peter
e4605f9b52 * fix range check error
git-svn-id: trunk@6649 -
2007-02-25 17:51:04 +00:00
daniel
a662c5fedb + On GO32, GBA and NDS, disable RTL features that aren't implemented.
git-svn-id: trunk@6521 -
2007-02-17 09:10:27 +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
Jonas Maebe
359c19ee9e - removed ppc601 as ppc32 cpu target
+ added ppc740 (g3), ppc7400 (G4) and ppc970 (G5) as ppc32 cpu
    targets
  * initialise optimizecputype by default to ppc7400 for ppc32 and to
    ppc970 for ppc64
  * merged ppc32/ppc64 overflow checking code and use the ppc64 one
    in case cputype or optimizecputype >= ppc970, because one of
    the instructions used in the ppc32 version no longer exists on the
    ppc970 (although it's emulated in the kernel on at least Mac OS X)
  * moved some other support routines and constants to ppcgen which
    were needed for the overflow checking (were identical for ppc32 and
    ppc64) 

git-svn-id: trunk@6323 -
2007-02-03 19:32:44 +00:00
Jonas Maebe
246f75c43a - removed inlining_procedure global var (artefact from pass_2 inlining)
git-svn-id: trunk@6266 -
2007-01-29 15:33:56 +00:00
Jonas Maebe
d6a4fbea47 * removed no longer used allow_only_static global variable
git-svn-id: trunk@6265 -
2007-01-29 14:49:28 +00:00
Jonas Maebe
2ea611e069 * fixed searching fpc.cfg on {$ifdef need_path_search} OS'es
git-svn-id: trunk@6237 -
2007-01-27 20:58:26 +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
florian
dac9896a6d + added -vs for time stamping
git-svn-id: trunk@6176 -
2007-01-24 20:32:06 +00:00
peter
5e428406e0 * remove redundant initalization of LinkTypeSetExplicitly
git-svn-id: trunk@5938 -
2007-01-13 12:28:14 +00:00
Jonas Maebe
adbe0ab1d2 * support linker options (-k) which are > 255 chars combined
git-svn-id: trunk@5924 -
2007-01-12 17:12:29 +00:00
florian
fa493c7898 * move exception mask initialization to procedure compile
* reset exception mask at compiler exit
* use math routines for exception masking

git-svn-id: trunk@5841 -
2007-01-07 12:24:39 +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
yury
d8d25c2489 * fixed memory leaks in compiler.
git-svn-id: trunk@5369 -
2006-11-14 09:32:58 +00:00
Jonas Maebe
caf501d499 * shell needs an ansistring parameter to avoid cutting of
command lines

git-svn-id: trunk@5323 -
2006-11-10 23:45:39 +00:00
peter
0557ddc342 * removed typed const, it is now handled by staticvarsym
* globalvarsym renamed to staticvarsym
  * fixed invalid regvar use in init when the finalize also uses the var

git-svn-id: trunk@5290 -
2006-11-08 21:04:22 +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
florian
6e2187c606 + windows uses now sysinit units as well
git-svn-id: trunk@5191 -
2006-11-02 23:20:35 +00:00
micha
12e8645889 * fix cross-compiling from i386/linux
git-svn-id: trunk@5186 -
2006-11-02 21:19:24 +00:00
peter
d21842fe61 * fixed linux compile
git-svn-id: trunk@5117 -
2006-10-31 11:35:54 +00:00
peter
3997ef0253 * dos compile fixes
git-svn-id: trunk@5111 -
2006-10-31 09:08:32 +00:00
peter
9f5d69ce31 * make win32 compile
git-svn-id: trunk@5103 -
2006-10-30 23:46:28 +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
bce905b106 * give correct error locations for errors when specializing templates
* removed more germanisms
* better dumping of tokenbuf in ppudump

git-svn-id: trunk@5101 -
2006-10-30 23:28:06 +00:00
florian
ef7bd58c54 * germanism removed (aktfilepos -> current_filepos)
git-svn-id: trunk@5099 -
2006-10-30 22:37:31 +00:00
florian
2974bbaf10 * get proper moduleindex when loading a unit, fixes #4778
git-svn-id: trunk@5097 -
2006-10-30 21:01:51 +00:00
peter
568e21ef1d * maxfpuregisters to shortint
git-svn-id: trunk@5096 -
2006-10-30 20:23:03 +00:00
florian
85d63d9fa9 * settings refactored
git-svn-id: trunk@5094 -
2006-10-30 18:02:58 +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
peter
d07f470b71 * remove ifdef fpc
git-svn-id: trunk@4819 -
2006-10-07 13:43:34 +00:00
micha
d704af7216 fix compilation for {$T+} linux/win
git-svn-id: trunk@4794 -
2006-10-04 20:43:55 +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
olle
05d6f0e94d macos: added a fake sysutils for use by compiler, and fixed some tests
git-svn-id: trunk@4549 -
2006-09-03 22:30:37 +00:00
Jonas Maebe
848b7b8914 - removed {$ifdef havelinuxrtl10} code
git-svn-id: trunk@4345 -
2006-08-04 12:29:34 +00:00