Commit Graph

37516 Commits

Author SHA1 Message Date
Jonas Maebe
78bb3e323a * fixed source type information for values loaded in arrayconstructor after
r21069

git-svn-id: trunk@21350 -
2012-05-20 20:34:14 +00:00
florian
21573f50c5 * allow LOC_CONSTANT to be used as vmt pointers in the cg, resolves #21914
git-svn-id: trunk@21349 -
2012-05-20 19:02:36 +00:00
pierre
02f8739bca Fix win32 compilation
git-svn-id: trunk@21346 -
2012-05-20 17:03:01 +00:00
Jonas Maebe
7dbfd9dc81 * don't say a config file is empty if it only contains #define, #undef,
#write and/or #include statements (mantis #20504)

git-svn-id: trunk@21345 -
2012-05-20 15:00:53 +00:00
Jonas Maebe
eb7e192226 * support pointer constants as initialisation values for procvar typed
constants in Delphi mode on non-treetypedconstbuilder platforms
    (mantis #21267)

git-svn-id: trunk@21344 -
2012-05-20 14:51:15 +00:00
Jonas Maebe
c27f9da1b2 * always surround ld link.res SEARCH_DIR() arguments with double quotes,
rather than with single/double quotes depending on the target platform
    (ld only supports double quotes), and rather than only quoting when
    necessary (wastes time since quotes are always allowed, and double
    quotes inside a directory name cannot be escaped for ld; they are
    simply not supported by the program) (mantis #22059, follow-up to
    r21069 and r21208)

git-svn-id: trunk@21343 -
2012-05-20 13:30:51 +00:00
Jonas Maebe
ccf895af5a * link.res is a real linkerscript when we target binutils, not when we
target the AIX linker
  * never quote file names added to link.res when it's not a linkerscript
    (only newline is a separator in the case)

git-svn-id: trunk@21342 -
2012-05-20 13:30:42 +00:00
marco
90adaeb652 * routine to transform result of fpsystem to old "shell" convention added.
git-svn-id: trunk@21341 -
2012-05-20 11:29:22 +00:00
marco
a7ee1899bc * Patch from Mark Morgan Lloyd to add subcommands to ltelnet. Mantis #22032
git-svn-id: trunk@21340 -
2012-05-19 22:12:45 +00:00
florian
1294ea4357 * patches by Max Nazhalov to solve some issues with currency formatting, resolves #18704 and #22063
git-svn-id: trunk@21339 -
2012-05-19 14:54:46 +00:00
Jonas Maebe
4a730bd053 * fixed source type for location_force_register() when loading second
parameter of inc/dec into a register

git-svn-id: trunk@21338 -
2012-05-19 14:39:29 +00:00
Jonas Maebe
9d860904fe * merged AIX changes from ncgutil.gen_proc_symbol_end() into
hlcgobj.gen_proc_symbol_end() and removed the routine from ncgutil (it's
    not used anymore)

git-svn-id: trunk@21337 -
2012-05-19 14:39:12 +00:00
marco
725a280059 * sleeper vfork code copied from deleted parts so it is not lost, made
shortstring version call the ansistring one.

git-svn-id: trunk@21336 -
2012-05-19 14:03:20 +00:00
florian
6c8eed21c4 + implement auto inlining (-Ooautoinline)
+ implement trashing of local variables if subroutine is inlined
* fix some errors releated to interproc. gotos and inlining
+ node_count function
* inline cannot be used with iochecking and safecall calling conventions
* track inherited usage
* don't inline if inherited is used

git-svn-id: trunk@21335 -
2012-05-19 13:30:02 +00:00
marco
455d675c5a * removed an empty overloaded version of statfs that could be called recursively
and its use in sysutils. Fixes failure of tw1041 and tw9985 in last runs.

git-svn-id: trunk@21334 -
2012-05-19 12:09:39 +00:00
marco
1a73c652ca * improve deprecation message.
git-svn-id: trunk@21333 -
2012-05-19 11:58:59 +00:00
marco
a98e75fc89 * remove used of deprecated function. Use this one from dos.
git-svn-id: trunk@21332 -
2012-05-19 11:34:04 +00:00
marco
117c437e94 * remove the use of unixutils and deprecated functions in it.
git-svn-id: trunk@21331 -
2012-05-19 10:37:05 +00:00
Jonas Maebe
9e51b0837c * avoid problems when using a_load*loc* calls with 3-byte-sized parameters
(fix internalerror when compiling webtbs/tw16163 on non-Darwin/ARM)

git-svn-id: trunk@21330 -
2012-05-19 10:19:53 +00:00
Jonas Maebe
958600e74b * by default disable the warning about interfaces raising a particular
method's visibility, because this is common practice in Object-Pascal.
    It can be re-enabled with {$warn INTF_RAISE_VISIBILITY on} (mainly
    useful when trying to keep code compatible with the JVM target)

git-svn-id: trunk@21329 -
2012-05-19 10:19:49 +00:00
Jonas Maebe
8282d6e37a * do not create a global symbol in the middle of ansi/unicodestring
constants on Darwin, because its linker uses global symbols as delimiters
    of subsections for dead code stripping. This was previously solved by
    never making any ansistring constants smart linkable, which is now
    solved

git-svn-id: trunk@21328 -
2012-05-19 10:19:35 +00:00
marco
7ae1db2e01 * replaced deprecated shell by fpsystem.
git-svn-id: trunk@21327 -
2012-05-19 09:00:37 +00:00
michael
3d03e2d76b * No resource files for event monitor components
git-svn-id: trunk@21326 -
2012-05-18 13:58:36 +00:00
michael
a08ea239ca * Patch to improve error message from LacaK2 (Bug ID 22061)
git-svn-id: trunk@21325 -
2012-05-18 12:26:17 +00:00
michael
0efa458127 * Add PostGres Event notification component from Ludo Brands (22060)
git-svn-id: trunk@21324 -
2012-05-18 12:19:09 +00:00
michael
137b21223b * Add Event notification component from Ludo Brands (22060)
git-svn-id: trunk@21323 -
2012-05-18 12:13:48 +00:00
marco
8082982d46 * removed single remaining use of a 1.0.x deprecated function.
git-svn-id: trunk@21322 -
2012-05-18 12:11:50 +00:00
marco
0ddd03eef2 * removed some deprecated functions (deprecated since 2.2.0/2007 times)
* added some new minor deprecations (mostly unused constants that are 
   potentially not crossplatform, and an shortstring version of a function)

git-svn-id: trunk@21321 -
2012-05-18 12:11:06 +00:00
paul
82bfe995ef rtl: move WM_APP to messages.inc instead of defines.inc. In other case it is not visible if only Message.pas is included into uses.
git-svn-id: trunk@21320 -
2012-05-18 08:59:23 +00:00
svenbarth
90db273224 + added target NativeNT to supported OSes in fpmkunit
* modified fpmake files in packages to allow a "make all" for NativeNT in packages to work (nearly all packages need to be disabled; the main cause for this are the still missing DOS and Objects units for the target)

git-svn-id: trunk@21319 -
2012-05-18 07:17:02 +00:00
sergei
19053de279 * Added {$i fpcdefs.inc}, was missing in the newly added unit, causing incorrect parameter positions on some platforms (e.g. broken tsafecall2, tsafecall3).
git-svn-id: trunk@21318 -
2012-05-17 17:34:12 +00:00
marco
6c0ba4af0c * getfs deprecated, replaced by a totally crossplatform sysutils.getfilehandle, probably already since 2.4.0
git-svn-id: trunk@21317 -
2012-05-17 16:58:09 +00:00
svenbarth
fb3777b9a0 + add test for Mantis #19511 which seems to be fixed already...
git-svn-id: trunk@21315 -
2012-05-17 08:59:50 +00:00
florian
05a8783b1e * patch by Nico Erfurth:
Improve ARM-Peephole Optimizers

1.) Introduce a ARM-specific RegUsedAfterInstruction which analyzes
instructions and reg allocation information to see if a register is
really needed afterwards to decide if some special optimizations can be
done.

2.) Introduce "RemoveSuperfluousMove"
This tries to fold mov into a previous Data-Instruction (ADD, ORR, etc)
or LDR-Instruction.

3.) Introduce new Optimizer "DataMov2Data" and modify LdrMov2Ldr to use
RemoveSuperfluousMove

4.) Expand Ldr* and Str* Optimizers to also work on {Ldr,Str}{,b,h}

git-svn-id: trunk@21314 -
2012-05-17 08:31:44 +00:00
michael
ad4876dcb5 * Applied patch from Joao Morais to customize request/response (bug 21980)
git-svn-id: trunk@21313 -
2012-05-17 08:07:33 +00:00
florian
798c9340cc * patch by Nico Erfurth:
Inline a couple of small functions of the ARM-Compiler

These small changes improved overall compile times of the fpc suite by
about 2-3% running on an 1.2GHz Kirkwood.

git-svn-id: trunk@21312 -
2012-05-17 08:03:51 +00:00
florian
c39d12a618 * fix longjmp for -Cparmv7m, resolves #22014
git-svn-id: trunk@21311 -
2012-05-15 18:56:27 +00:00
florian
b2813abec2 + patch by Bernd to add the push/pop mnemonic for arm/thumb-2, resolves #22041
git-svn-id: trunk@21310 -
2012-05-15 18:52:09 +00:00
florian
8832a34b67 * fix reg. allocs even for procedures without labels
git-svn-id: trunk@21309 -
2012-05-15 18:09:12 +00:00
florian
17dd362a5a * white space
git-svn-id: trunk@21308 -
2012-05-15 18:08:52 +00:00
florian
2560266e5d * skip comments properly when searching for places for constant pool distances
git-svn-id: trunk@21307 -
2012-05-15 18:08:19 +00:00
florian
2402e8e504 * fixes FindRegAlloc
+ GetAllocationString
 * fix comment for lazarus
 * change behaviour of UpdateUsedRegs in PeepHoleOptPass1

git-svn-id: trunk@21306 -
2012-05-15 18:07:52 +00:00
florian
d4c120cb34 * fix comment so it does not confuse lazarus
git-svn-id: trunk@21305 -
2012-05-15 18:07:25 +00:00
florian
75e62e42e4 * add debug statements
* avoid possible problems with unknown ra_ types

git-svn-id: trunk@21304 -
2012-05-15 18:07:08 +00:00
florian
748694a325 * fixes some issues with reg. allocation information
git-svn-id: trunk@21303 -
2012-05-15 18:06:41 +00:00
Jonas Maebe
08784aca44 * fixed compilation for high level code generator targets after r21287
git-svn-id: trunk@21302 -
2012-05-15 13:05:27 +00:00
Jonas Maebe
d6f85c35b5 - removed stray symtablestack.push() after r21282
git-svn-id: trunk@21301 -
2012-05-15 13:04:51 +00:00
Jonas Maebe
4f396735f4 * support LOC_(C)SUBSETREG/REF in thlcgobj.a_load_loc_ref() (should fix
mantis #22029)

git-svn-id: trunk@21300 -
2012-05-15 12:13:10 +00:00
sergei
22d1077cf4 * TXMLRegistry: treat absent child text node as empty value for string and binary types. This is necessary because xml does not preserve empty text nodes. Resolves #16395.
+ Test

git-svn-id: trunk@21299 -
2012-05-15 12:08:58 +00:00
sergei
c628942e15 * Fixed compilation with -CR
git-svn-id: trunk@21298 -
2012-05-15 08:45:38 +00:00