Commit Graph

40278 Commits

Author SHA1 Message Date
marco
80b52b2a6a * fix memleak in fpcanvas. Patch by wp, mantis #24427 attempt two
git-svn-id: trunk@24555 -
2013-05-23 10:01:46 +00:00
nickysn
abeb2a3aaa * fixed the far pointer size not being updated after reading the near/far type modifier, which caused far pointers to be allocated only 2 bytes
git-svn-id: trunk@24554 -
2013-05-22 16:44:05 +00:00
nickysn
fd429612f8 + initial (and not yet fully complete) implementation of far pointers on the i8086
git-svn-id: trunk@24553 -
2013-05-22 16:26:33 +00:00
nickysn
42b2228dc7 + far pointer support in defutil.def_cgsize
git-svn-id: trunk@24552 -
2013-05-22 12:30:34 +00:00
nickysn
e810cabf50 * set tpointerdef.savesize correctly for far and huge pointers
git-svn-id: trunk@24551 -
2013-05-22 11:54:42 +00:00
svenbarth
905ab16ea4 Fixed and regenerated Makefile after removal of jarparamparser.pas
git-svn-id: trunk@24550 -
2013-05-22 09:02:24 +00:00
joost
14ffdf6b8d * Removed unused unit jarparamparser.pas
git-svn-id: trunk@24549 -
2013-05-21 19:58:14 +00:00
nickysn
10ef91a7f6 * updated ppudump after the x86 pointer type changes introduced in r24453
git-svn-id: trunk@24548 -
2013-05-21 14:46:52 +00:00
nickysn
f571aebdd0 * tx86pointertyp moved from unit symdef to symconst, so it can be used by ppudump
git-svn-id: trunk@24547 -
2013-05-21 14:18:48 +00:00
nickysn
d95c995894 - rm the commented out code of tpointerdef.createfar
git-svn-id: trunk@24546 -
2013-05-21 13:59:36 +00:00
reiniero
a180cd63fb * fcl-db: tdbf: better support ftWord field type
* fcl-db tests: test ftWord for bufdataset, tdbf etc
To do: verify why all bufdataset export tests now get an access violation

git-svn-id: trunk@24545 -
2013-05-21 13:26:06 +00:00
joost
6230494c20 * Let fppkg handle the dependency of fpkmunit on the libtar package
git-svn-id: trunk@24539 -
2013-05-20 19:52:28 +00:00
joost
95972cabbc * Let fpmake update the revision.inc file for fpcmake
git-svn-id: trunk@24538 -
2013-05-20 17:00:25 +00:00
marco
d3db3342f0 * fix memleak in fpcanvas. Patch by wp, mantis #24427
git-svn-id: trunk@24537 -
2013-05-20 16:19:48 +00:00
marco
9554eb2b48 * some O_ constants. Patch by Barlone.
git-svn-id: trunk@24536 -
2013-05-20 15:30:40 +00:00
sergei
d367148f75 - Removed obsolete comments (copypasted from other CPU code, most likely).
- Removed topsize, MIPS target does not use it.

git-svn-id: trunk@24535 -
2013-05-20 10:39:05 +00:00
nickysn
e7cf738c31 + enabled compilation of the lineinfo unit for i8086-msdos
git-svn-id: trunk@24534 -
2013-05-20 08:14:47 +00:00
nickysn
47fe8e03b1 * refactored ncgutil.gen_load_cgpara_loc to use cgpara.locations_count
git-svn-id: trunk@24532 -
2013-05-19 18:49:21 +00:00
nickysn
49bd829ffc * refactored cg64f32.splitparaloc64 to use cgpara.locations_count
git-svn-id: trunk@24531 -
2013-05-19 18:44:54 +00:00
nickysn
3e22ec43b5 + added method TCGPara.locations_count
git-svn-id: trunk@24530 -
2013-05-19 18:37:55 +00:00
nickysn
b9084a22ca * in the nasm writer only declare labels as global if they have labsym.bind=AB_GLOBAL; this fixes compilation of i8086-msdos programs that use multiple units
git-svn-id: trunk@24529 -
2013-05-19 17:51:29 +00:00
nickysn
ec392e2939 + enabled compilation of unit heaptrc for i8086-msdos
git-svn-id: trunk@24528 -
2013-05-19 17:34:38 +00:00
nickysn
ecb5a4866d * refactored the int64 result passing in ax:bx:cx:dx to use 4 paralocs, instead of the GetNextReg hack
git-svn-id: trunk@24527 -
2013-05-19 12:50:15 +00:00
joost
d98fb1f004 * Some fpmake.pp fixes
git-svn-id: trunk@24526 -
2013-05-19 10:04:25 +00:00
reiniero
773ee3d21c * fcl-db: clarified Dataset.txt
* fcl-db/dbase tests: fix for failing memo, string test
  improvement in naming saved dbf files (if enabled)

git-svn-id: trunk@24525 -
2013-05-18 08:56:16 +00:00
joost
2fe7dbfc6c * Several fpmake.pp fixes
git-svn-id: trunk@24524 -
2013-05-18 08:28:58 +00:00
svenbarth
f1f89c77c3 Finally refactor "b_needs_init_final" flag to be a symtable flag which is written to/loaded from the PPU (as discussed in the thread "Status report for "class helpers"" in fpc-devel on 29th January 2011).
symconst.pas:
    + add "sto_needs_init_final" value to "tsymtableoptions"
symtable.pas:
    - TStoredSymtable: remove "b_needs_init_final"
    + TStoredSymtable: add "init_final_check_done" (which is False by default)
    * TStoredSymtable.ppuload: set "init_final_check_done" to True if PPU is loaded (because the flag will then already be restored)
    * TStoredSymtable.needs_init_final: check the symbols only if "init_final_check_done" is not set yet
    * TStoredSymtable._needs_init_final: only check the symbol if "sto_needs_init_final" is not set yet and set the flag accordingly if needed
utils/ppuutils/ppudump.pp:
    * respect the new flag

git-svn-id: trunk@24523 -
2013-05-17 12:15:13 +00:00
paul
b333ef582b compiler: don't treat array[..] of dynamic array as a 2 dimension array
git-svn-id: trunk@24522 -
2013-05-17 01:08:27 +00:00
nickysn
6695c8578f * set the TinyHeapMinBlock const relative to the pointer size
git-svn-id: trunk@24521 -
2013-05-16 22:17:05 +00:00
nickysn
f0ada1ccc5 * fixed bug in SysTinyGetMem that caused heap corruption if the free block that's being allocated is followed tightly by an already allocated block
git-svn-id: trunk@24520 -
2013-05-16 22:15:36 +00:00
nickysn
9312419ce8 * fixed heap block start and size alignment in RegisterTinyHeapBlock
git-svn-id: trunk@24519 -
2013-05-16 22:13:35 +00:00
nickysn
4fc5900c78 + added writelns behind { DEBUG_TINY_HEAP} for tracing the tiny heap calls
git-svn-id: trunk@24518 -
2013-05-16 22:11:01 +00:00
pierre
7f5aa5a441 Avoid some range check errors for msdos target
git-svn-id: trunk@24517 -
2013-05-16 22:06:33 +00:00
pierre
cc8708c3c9 Improve test to allow easier understanding of errors
git-svn-id: trunk@24516 -
2013-05-16 22:05:10 +00:00
yury
4a696dbf00 * pas2jni: fixed error during records processing.
git-svn-id: trunk@24514 -
2013-05-15 15:58:27 +00:00
yury
8bc8363c77 * pas2jni: added fcl-json dependency.
git-svn-id: trunk@24513 -
2013-05-15 15:45:09 +00:00
yury
94197aade9 * pas2jni: fixed processing of int64 and boolean constants. Also fixes to correctly process whole System unit.
git-svn-id: trunk@24512 -
2013-05-15 15:34:10 +00:00
yury
10c1b11d15 * ppudump: Output "RetType" attribute for procedures and destructors.
git-svn-id: trunk@24511 -
2013-05-15 14:18:38 +00:00
yury
45895f26e0 * pas2jni: use stable JSON output from ppudump.
git-svn-id: trunk@24510 -
2013-05-15 14:17:34 +00:00
reiniero
6211de8b87 * fcl-db/dbase: add support and test for IndexStream so dbf,memo, and index can work without file backing if streams are used
git-svn-id: trunk@24509 -
2013-05-15 12:42:11 +00:00
sergei
300289dd89 * MIPS: reworked 64-bit code generation, implemented overflow checking and optimized operations with constants.
git-svn-id: trunk@24508 -
2013-05-15 10:02:08 +00:00
sergei
bfd7401541 * MIPS: overflow checking added in r24445 works only when source and destination of operation are different registers. Fixed cases of operations on same register.
git-svn-id: trunk@24507 -
2013-05-15 09:55:47 +00:00
yury
2ec85e9705 * ppudump: Output "Size" attribute for objects and records.
git-svn-id: trunk@24506 -
2013-05-15 09:13:12 +00:00
nickysn
512ca83f33 - don't allocate/deallocate the fpu registers in tcg.[de]allocallcpuregisters on the i8086
git-svn-id: trunk@24505 -
2013-05-15 08:24:07 +00:00
yury
ec6ff22588 * ppudump: Output "MethodPtr" attribute for procedural types.
git-svn-id: trunk@24504 -
2013-05-15 08:15:23 +00:00
nickysn
9f0c23bd4c * fixed round() on i8086 after r24502
git-svn-id: trunk@24503 -
2013-05-15 00:45:08 +00:00
nickysn
3665ed4b03 + enabled returning int64 in ax:bx:cx:dx for the i8086
git-svn-id: trunk@24502 -
2013-05-14 22:45:57 +00:00
nickysn
d433408a7d -rm BX from i8086's saved_stadard_registers array, as it interferes with returning int64 in ax:bx:cx:dx and it shouldn't be saved anyway
git-svn-id: trunk@24501 -
2013-05-14 22:32:02 +00:00
nickysn
8fea00d8f5 - rm NR_PIC_OFFSET_REG from i8086/cpubase.inc, because it isn't used (and shouldn't be used) on the i8086
git-svn-id: trunk@24500 -
2013-05-14 22:22:24 +00:00
nickysn
2557382815 - rm tcg8086.g_maybe_got_init as it's of no use for the i8086
git-svn-id: trunk@24499 -
2013-05-14 22:20:04 +00:00