Commit Graph

39169 Commits

Author SHA1 Message Date
florian
ef1c848198 * fix constant calculation for the AndAnd2And optimization if the first and is removed, noticed by Nico Erfurth
git-svn-id: trunk@23541 -
2013-01-29 20:39:22 +00:00
florian
5af646d1d2 + add missing it* statements for thumb2 by a modified patch of Jeppe Johansen, resolves #23738
git-svn-id: trunk@23540 -
2013-01-29 20:36:38 +00:00
florian
bf57cdf409 + introduce new define CPUTHUMB2
git-svn-id: trunk@23539 -
2013-01-29 20:34:55 +00:00
sergei
08c0c265c9 * MIPS: use correct def to calculate parameter alignment (when parameter is passed by address, its def changes to pointer and the alignment of parameter itself is irrelevant). Fixes at least webtbs/tw7806.
git-svn-id: trunk@23538 -
2013-01-29 20:09:41 +00:00
michael
528e231c66 * Strict resolving
git-svn-id: trunk@23537 -
2013-01-29 19:01:39 +00:00
michael
e247d1fa1a * assign name to anonymous string type
git-svn-id: trunk@23536 -
2013-01-29 19:00:00 +00:00
florian
d0cbcd419e * update of the German compiler message file by Karl-Michael Schindler, resolves #23728
git-svn-id: trunk@23535 -
2013-01-29 18:34:12 +00:00
sergei
cb51c39dd7 * Forgot to assign result of SwapEndian() into place.
git-svn-id: trunk@23534 -
2013-01-29 16:42:47 +00:00
sergei
5e13334467 * Fixed tMIPSELtypeconvnode.second_int_to_bool handling of C booleans, webtbs/tw10233 and webtbs/tw17180 now work.
* Reused applicable code from the above mentioned method in tMIPSELnotnode.second_boolean, it is more efficient in handling 64-bit data.

git-svn-id: trunk@23531 -
2013-01-28 21:32:21 +00:00
reiniero
b44353777a * fcl-db: cosmetic: bufdataset comments: typos, grammar, uniform indentation
git-svn-id: trunk@23530 -
2013-01-28 15:49:05 +00:00
svenbarth
bb00325d85 Fix for Mantis #23765 .
packages/fcl-base/src/fileinfo.pp, TVersionInfo.Load:
  * use PWideChar instead of PChar if "UNICODE" is defined (e.g. on WinCE)

git-svn-id: trunk@23528 -
2013-01-27 21:04:05 +00:00
Jonas Maebe
cb85846507 * fixed typo in jvm record clone implementation comment
git-svn-id: trunk@23527 -
2013-01-26 21:28:30 +00:00
Jonas Maebe
fffa2e163a - removed unused local type in internal jvm record clone implementation
git-svn-id: trunk@23526 -
2013-01-26 21:28:26 +00:00
Jonas Maebe
dc7760bda0 * let type conversion nodes handle type checking for if/while/repeat
conditions, so that used-defined implicit boolean type conversions are
    supported (patch by Peter-Jan Roes, mantis #23568)

git-svn-id: trunk@23525 -
2013-01-26 21:28:22 +00:00
Jonas Maebe
a8a1bb6449 * fixed inserting something in a shortstring past its maximum length
(mantis #23744)

git-svn-id: trunk@23524 -
2013-01-26 19:27:17 +00:00
Jonas Maebe
2ed4b295fe * only change the visibility of an existing getter/setter to that of
its property in case the visibility of the property is higher than
    that of the getter/setter (on the JVM target when automatically
    generating getters/setters)

git-svn-id: trunk@23523 -
2013-01-26 16:52:32 +00:00
Jonas Maebe
e7315d035c * inherit po_auto_raised_visibility flag when the visibility of a method is
raised because it was automatically raised in the parent class (can happen
    for the JVM target when letting the compiler generate getters/setters for
    properties)

git-svn-id: trunk@23522 -
2013-01-26 16:52:28 +00:00
sergei
d762ef9e78 + PECOFF targets: support more than 65535 relocations per object section, resolves #23752. DJCOFF targets: give a fatal error, since this object file format does not support extended relocations.
git-svn-id: trunk@23521 -
2013-01-26 16:15:59 +00:00
svenbarth
7bad1763b8 Decrease amount of code duplication regarding handling of safecall and record constructors.
paramgr.pas, tparamanager:
    + add new method "handle_common_ret_in_param"
    * extract common code (safecall + record constructor handling) from "ret_in_param" to "handle_common_ret_in_param" and call the latter in "ret_in_param"
[aarch64,arm,avr,i386,x86_64]/cpupara.pas, tCPUparamanager.ret_in_param:
    * call "handle_common_ret_in_param" instead of implementing the same check again and again
ncgcal.pas, tcgcallnode.handle_return_value:
    * move the check for (record) constructors to "tparamanager.handle_common_ret_in_param"

git-svn-id: trunk@23520 -
2013-01-25 20:39:28 +00:00
sergei
cb1098c26c * Do not create SEH finalization procedures in generic methods, their similarity with nested procedures causes compilation errors because actual nested procedures are not allowed for generics. Not creating them doesn't hurt because generic node tree is not used for code generation. Resolves #23724.
git-svn-id: trunk@23519 -
2013-01-25 18:50:04 +00:00
yury
d8902af3d6 * Do not replace ADD by SUB and vice-versa when overflow checking is enabled. Fixes tw15304 for ARM.
git-svn-id: trunk@23517 -
2013-01-24 21:49:21 +00:00
michael
33f1f8bfad * Added case-insentitive property
git-svn-id: trunk@23513 -
2013-01-24 18:01:09 +00:00
Jonas Maebe
9cbff6f5a6 + support for record constructors for the JVM target
git-svn-id: trunk@23510 -
2013-01-24 09:45:12 +00:00
Jonas Maebe
3abc7b0d9c * removed superfluous check (a procvardef can never be a constructor) and
typecasts

git-svn-id: trunk@23509 -
2013-01-24 09:45:06 +00:00
Jonas Maebe
10e3cab1b1 * fixed formatting
git-svn-id: trunk@23508 -
2013-01-24 09:44:59 +00:00
Jonas Maebe
9145f1d67d * integrated potype_constructor check in maybe_create_funcret_node
git-svn-id: trunk@23507 -
2013-01-24 09:44:52 +00:00
michael
280b307068 * Patch from Silvio Clecio to implement easy-access methods
git-svn-id: trunk@23506 -
2013-01-23 13:03:32 +00:00
michael
85e72fdbcb * Updated TODO: Easy Post is already there.
git-svn-id: trunk@23505 -
2013-01-23 11:19:55 +00:00
michael
8c161506d5 * Close connection on one-shot operations
git-svn-id: trunk@23504 -
2013-01-23 08:56:26 +00:00
michael
fc68ce2ec5 * Implemented a HEAD class method
git-svn-id: trunk@23503 -
2013-01-23 08:52:18 +00:00
michael
6d40600ab5 * Speed up HEAD
git-svn-id: trunk@23502 -
2013-01-23 08:48:16 +00:00
Tomas Hajny
3b60a0f4aa * fix testing for empty HOME directory or HOME pointing to root on Unix
git-svn-id: trunk@23500 -
2013-01-22 23:58:55 +00:00
Tomas Hajny
426050cb9f * fix for standalone '~' with HOME=/ on Unix
git-svn-id: trunk@23499 -
2013-01-22 23:56:42 +00:00
michael
7fbf05dd18 * Make statementtype public in TSQLQuery
git-svn-id: trunk@23498 -
2013-01-22 20:36:05 +00:00
sergei
6a86d0d83a * Changed two variables from Integer to Longint. Integer is 16 bits when compiling System unit, using it results in less optimal code on most targets.
git-svn-id: trunk@23494 -
2013-01-22 15:07:22 +00:00
sergei
6788fd6433 + Win64 SEH: install a top-level exception handler around thread functions. This was a missing puzzle piece of SEH support. Now behavior of unhandled exceptions in non-main threads is consistent with that of main thread, and, in general, behavior of SEH-enabled RTL is consistent with one without SEH.
git-svn-id: trunk@23482 -
2013-01-21 17:16:15 +00:00
sergei
40c510403f * Don't crash on a PLT-generating relocation to a local symbol (which should not normally appear, but nevertheless is possible).
git-svn-id: trunk@23481 -
2013-01-21 16:49:10 +00:00
marco
0560af663c * patch from Mantis #23647 Calls inherited destroy in destructor, resolves memory leak.
git-svn-id: trunk@23480 -
2013-01-21 12:53:50 +00:00
michael
a7a6301672 * Refactoring for better readability
git-svn-id: trunk@23476 -
2013-01-21 12:07:52 +00:00
michael
a472de7805 * use global resolveID (better result)
* Better link info in case of error
* Resolve property type to ancestors.

git-svn-id: trunk@23473 -
2013-01-21 10:57:54 +00:00
michael
01d8ec7a62 * Speed up read/write content file
* Configurable ResolveLink (strict or not)

git-svn-id: trunk@23472 -
2013-01-21 10:56:07 +00:00
michael
1c9ad777d3 * Add context info to unresolved links, for better error info
git-svn-id: trunk@23471 -
2013-01-21 10:55:00 +00:00
michael
5783f6d172 mechanism to resolve members in ancestors
git-svn-id: trunk@23470 -
2013-01-21 10:54:00 +00:00
michael
efd6f8851e * Set read buffer size to 4K (speeds up)
git-svn-id: trunk@23469 -
2013-01-21 10:53:22 +00:00
michael
58a6886ed3 * Allow to set the write buffer size (enlarged to 4k)
git-svn-id: trunk@23468 -
2013-01-21 10:52:38 +00:00
paul
5d74e0578a compiler: remove unused variables and unneeded assignments
git-svn-id: trunk@23467 -
2013-01-21 01:24:36 +00:00
svenbarth
78f0d6f70e Revert the changes from r23383 for m68k/n68kadd.pas. Memo to self: Don't change code if you don't really understand why it does things the way it does.
With this change and the change from r23465 we are down from ~950 to ~650 failures :D

git-svn-id: trunk@23466 -
2013-01-20 18:00:51 +00:00
svenbarth
b455ae9534 m68k/cpupara.pas, tm68kparamanager.getintparaloc:
* initialize paraloc^.size to OS_INT instead of leaving it at 0

This fixes tests/test/cg/ttryexc1.pp. The problem was that the raise node generated code which resulted in a word(!) move of the raised object's address to the stack location for fpc_raiseexception. This then resulted in an error when freeing the exception object.

git-svn-id: trunk@23465 -
2013-01-20 16:33:10 +00:00
florian
9d76168b57 * refactored Bl2B condition code to make it more readable
git-svn-id: trunk@23464 -
2013-01-20 15:38:38 +00:00
florian
7184306a4c + option -Wx to generate thumb interworking safe code on arm
git-svn-id: trunk@23463 -
2013-01-20 15:26:59 +00:00