Commit Graph

39000 Commits

Author SHA1 Message Date
florian
7ac9f11cc7 * check if current_procinfo is assigned in paramanager code to avoid crashes
git-svn-id: trunk@23303 -
2013-01-03 23:00:03 +00:00
florian
329257d76e * check for empty procedures after helper test so even empty helper methods cannot be called directly
* don't remove calls to subroutines taking arrays of const

git-svn-id: trunk@23302 -
2013-01-03 22:58:56 +00:00
florian
f0487f8fde * remove packed used for nan records in the softfpu code, it served no purpose
* recordered files of nan records in the softfpu code

git-svn-id: trunk@23300 -
2013-01-02 18:13:21 +00:00
sekelsenmat
b0980b342d Adds support to join style and endcap in TFPCustomPen in fcl-image
git-svn-id: trunk@23297 -
2013-01-02 14:28:09 +00:00
florian
21d62277ce + build sysutils unit for arm-embedded
git-svn-id: trunk@23296 -
2013-01-02 11:02:44 +00:00
florian
358a62d7c3 * enable command line handling dummy for arm-embedded
git-svn-id: trunk@23295 -
2013-01-02 10:52:19 +00:00
florian
8ee1445b81 * stripped trailing spaces
git-svn-id: trunk@23294 -
2013-01-02 10:50:32 +00:00
florian
82f20cedbd * make threading code dependend on feature switch
git-svn-id: trunk@23293 -
2013-01-02 10:48:29 +00:00
florian
68d04a4d21 + add random code from Francesco's GBA code
git-svn-id: trunk@23292 -
2013-01-02 10:47:35 +00:00
sergei
d7c5daeccd * Don't calculate data position of each object section. Instead, write out a copy of exesection's memory image, i.e. every objsection is placed at the same offset from its owning exesection both on disk and in memory. This approach is simpler and works regardless of alignment requirements, while existing one could work only if SectionDataAlign<=SectionMemAlign.
* Netware target may be broken by this change; at least it deserves a good cleanup because it contains a lot of code trying to solve similar task: to write exesections without alignment and deal with objsections that are nevertheless being aligned by TExeOutput.

git-svn-id: trunk@23291 -
2013-01-02 10:10:23 +00:00
sergei
35439c0e1d * Moved creation of GOT section into separate virtual method.
* TElfSymtab.WriteSymbol: write type of external symbols as STT_NOTYPE only in object files; external symbols in exe/so files must have type of their resolving symbol.
* TElfObjData.writeReloc_internal: RELOC_RELATIVE needs adjustment by size presumably on x86 only; ARM data relocations don't need it, other CPUs aren't checked yet.
* Use VER_xx and VERSYM_xx constants instead of literal values.

git-svn-id: trunk@23290 -
2013-01-02 08:11:49 +00:00
pierre
1dd964960c * Enable use of amd64 ld GNU linker for i386 by adding target and emul command line args for freebsd
git-svn-id: trunk@23282 -
2013-01-01 23:00:02 +00:00
florian
d1856df4f7 * variants do not hurt arm either
git-svn-id: trunk@23281 -
2013-01-01 19:32:47 +00:00
florian
dcc227882d + newline
git-svn-id: trunk@23280 -
2013-01-01 19:32:17 +00:00
florian
903f18ea38 * get rid of calls which redirect the program flow only, Bl2B optimization
git-svn-id: trunk@23279 -
2013-01-01 19:31:52 +00:00
florian
d460d44671 * fixed typo as pointed out by Aleksa Todorovic
git-svn-id: trunk@23278 -
2013-01-01 18:18:39 +00:00
florian
1da7dc513c * limit test to armv7m
git-svn-id: trunk@23277 -
2013-01-01 18:14:40 +00:00
florian
24f518f232 + redirect calls to empty virtual methods to FPC_EMPTYMETHOD
* do empty subroutine/method optimization only for O2 and higer

git-svn-id: trunk@23276 -
2013-01-01 16:43:27 +00:00
paul
431ce7afc8 rtl: remove unused variables
git-svn-id: trunk@23275 -
2013-01-01 16:31:31 +00:00
florian
4d6471fef6 * get rid of calls to empty procedures having parameters without side effect
git-svn-id: trunk@23274 -
2013-01-01 15:58:05 +00:00
florian
d2a7d09931 * use pascal loop, so it can be better optimized
git-svn-id: trunk@23273 -
2013-01-01 14:59:30 +00:00
florian
ff98d2567c * don't crash on thumb instructions with only two operands when optimizing ADD, SUB, AND statements
git-svn-id: trunk@23272 -
2013-01-01 12:29:48 +00:00
Károly Balogh
8fe2828e5a it seems Coldfire needs tf_requires_proper_alignment, fixes taddr1/2 tests, maybe others too (but someone with clue about RTTI should confirm)
git-svn-id: trunk@23270 -
2013-01-01 04:51:47 +00:00
Károly Balogh
652d69d145 fixed typo
git-svn-id: trunk@23269 -
2013-01-01 02:44:01 +00:00
Károly Balogh
0702109f37 get_frame to return a5 on Amiga
git-svn-id: trunk@23268 -
2013-01-01 02:37:39 +00:00
Károly Balogh
79a0f706de save/restore FP from A5 on Amiga
git-svn-id: trunk@23267 -
2013-01-01 02:27:53 +00:00
Károly Balogh
601cc80fc6 define HAS_SLEEP and add a very simple sleep implementation
git-svn-id: trunk@23266 -
2013-01-01 01:53:14 +00:00
Károly Balogh
3137c6ac4a answer the WBMsg on process exit, when run from Workbench
git-svn-id: trunk@23265 -
2013-01-01 01:47:30 +00:00
florian
288820715d * don't crash in case a symbol is not found in type/var/const section
git-svn-id: trunk@23264 -
2012-12-31 20:24:55 +00:00
florian
85ae82def4 * enable more features for arm-embedded, they don't blow up executables if not used
git-svn-id: trunk@23263 -
2012-12-31 19:32:04 +00:00
florian
92565c80ba * make exception variables threadvars or not depending on threading support
git-svn-id: trunk@23262 -
2012-12-31 19:31:22 +00:00
florian
ebd2e79270 * calling SysInitExceptions is not really needed because it sets only some vars to nil which are nil anyways, this saves some bytes
git-svn-id: trunk@23261 -
2012-12-31 19:28:45 +00:00
florian
00af813eee * write supported cpu and fpu types more compact
git-svn-id: trunk@23260 -
2012-12-31 16:45:30 +00:00
florian
a5cc48da0e * write controller types more compact
git-svn-id: trunk@23259 -
2012-12-31 16:31:23 +00:00
florian
e6f2c8cbd3 * turn off threadvars in softfpu if threading is not enabled
git-svn-id: trunk@23258 -
2012-12-31 16:31:03 +00:00
florian
eb7882037a * disable uncompilable targets for embedded targets
git-svn-id: trunk@23257 -
2012-12-31 15:51:04 +00:00
florian
0215f00490 * fix compilation of objpas if ansistrings are disabled as requested by Michael Ring on fpc-devel
git-svn-id: trunk@23256 -
2012-12-31 14:26:48 +00:00
florian
020b3e02ea + parallel compilation of embedded rtl
* fix rules for GNU Make 3.82

git-svn-id: trunk@23255 -
2012-12-31 14:17:20 +00:00
florian
c9d8047113 * open config files read only so they can be open by multiple compilers at once
git-svn-id: trunk@23254 -
2012-12-31 14:13:05 +00:00
pierre
eaeb63f86d FreeBSD and OpenBSD also seem to use eax:edx for small strcut returns
git-svn-id: trunk@23253 -
2012-12-29 22:03:17 +00:00
michael
48c3adfdb9 * TFPHashlist.Pack now also reclaims unused string memory
git-svn-id: trunk@23252 -
2012-12-29 15:35:02 +00:00
Tomas Hajny
49cb967614 * unit sockets extended to allow interoperability with external socket libraries compiled using EMX - e.g. OpenSSL
git-svn-id: trunk@23251 -
2012-12-29 14:38:36 +00:00
michael
c6467056bf * Initial implementation of TFPHashList tests
git-svn-id: trunk@23250 -
2012-12-29 12:47:26 +00:00
michael
3367a29831 * Update ansistring header record explanation
git-svn-id: trunk@23249 -
2012-12-29 10:23:16 +00:00
florian
d140c5b4ee * handle inc/dec/pred/succ correctly with type parameters, resolves #23299
git-svn-id: trunk@23248 -
2012-12-29 10:01:54 +00:00
michael
f2ee6bcb77 * Fixed bug ID #23444, improved example to show elapsed time
git-svn-id: trunk@23247 -
2012-12-29 09:58:12 +00:00
michael
b3de56a540 * Fixed compilation for version 5.5 of mysql
git-svn-id: trunk@23246 -
2012-12-28 23:40:10 +00:00
michael
33b6b8eef5 * No PIPE signal on darwin
git-svn-id: trunk@23245 -
2012-12-28 22:57:46 +00:00
florian
a2edcfc4e0 * patch by olivier to fix BeOS compilation, resolves #23545
git-svn-id: trunk@23244 -
2012-12-28 21:51:57 +00:00
florian
728c074bd6 * accept with statements with generic variables having a generic parameter type, resolves #21329
git-svn-id: trunk@23243 -
2012-12-28 19:48:33 +00:00