Commit Graph

41423 Commits

Author SHA1 Message Date
Károly Balogh
74af6d0dab enabled hardware mul reg, reg codepath for ColdFire too, accelerates tfloattostr test (thus some of the SoftFPU code) by a magnitude...
git-svn-id: trunk@25770 -
2013-10-13 21:36:24 +00:00
sergei
1be7ec1dcd * MIPS setjmp/longjmp: save/restore nonvolatile FPU registers and FPU control word.
* Fixed longjmp return value, it should never be zero.

git-svn-id: trunk@25769 -
2013-10-13 21:25:40 +00:00
sergei
142d20ca30 * MIPS: cleanup assembler reader, MIPS references allow only a single register in parentheses.
git-svn-id: trunk@25768 -
2013-10-13 21:22:04 +00:00
sergei
e10e383b8e * MIPS: ".set macro"/".set nomacro" directives around ".cprestore" are necessary only when offset is outside smallint range. Otherwise they just clutter the assembler file.
git-svn-id: trunk@25767 -
2013-10-13 20:23:43 +00:00
marco
d80b242347 * update to Cairo 1.12 by Valdinilson Lourenço da Cunha
Mantis #23323

git-svn-id: trunk@25766 -
2013-10-13 19:47:32 +00:00
Károly Balogh
97864d7cbd trying harder to commit compilable code (manual merge fail)
git-svn-id: trunk@25764 -
2013-10-13 18:31:43 +00:00
nickysn
c51c75936b * 16/8-bit ALU fixes in ncgutil.gen_free_symtable
git-svn-id: trunk@25762 -
2013-10-13 16:48:15 +00:00
nickysn
1dabaf5ded * 16/8-bit ALU fixes in ncgutil.add_regvars
git-svn-id: trunk@25761 -
2013-10-13 16:41:32 +00:00
nickysn
d1f0eea902 * 16/8-bit ALU fixes in ncgutil.gen_alloc_regvar
git-svn-id: trunk@25760 -
2013-10-13 16:31:16 +00:00
Károly Balogh
3b99974847 set up register A6 to be saved as well. this will only happen in case A6 is not used as framepointer
git-svn-id: trunk@25759 -
2013-10-13 16:12:32 +00:00
Károly Balogh
e5eac1bd44 make the array of registers to use depending on wheter we have an FP or not, and which register we have as FP
git-svn-id: trunk@25758 -
2013-10-13 16:06:35 +00:00
reiniero
89e6d1aee3 * fcl-db: dbase/bufdataset expression parser: match function signatures with given arguments; fixes mismatch for some
long integer+integer
  long integer+long integer
  field expressions (+, -, *, / etc) and
  long integer <> float field expressions  

* fcl-db: dbase/bufdataset parser: cosmetic: language/clarity in comments

git-svn-id: trunk@25755 -
2013-10-13 14:09:21 +00:00
reiniero
cc5b720bfd fcl-db: test for negative integer filters (issue #25168).
git-svn-id: trunk@25754 -
2013-10-13 13:19:51 +00:00
reiniero
62bf453888 fcl-db: cosmetic: descriptions for filter tests; rename Dutch variables
git-svn-id: trunk@25753 -
2013-10-13 12:36:43 +00:00
nickysn
fd05d0c14e * 16/8-bit ALU fix in maybechangeloadnodereg. This fixes the tbopr and trox2
tests on i8086.

git-svn-id: trunk@25752 -
2013-10-13 11:35:56 +00:00
michael
d097d73de2 * make TParam.Value published
git-svn-id: trunk@25751 -
2013-10-13 10:46:02 +00:00
nickysn
f6e846c574 + added the NEC V20/V30 instructions
git-svn-id: trunk@25750 -
2013-10-11 21:27:56 +00:00
michael
376259cc8e * Different default mechanism
git-svn-id: trunk@25748 -
2013-10-11 08:04:08 +00:00
michael
481b0e7260 * Fix typo (from Andreas Schneider)
git-svn-id: trunk@25747 -
2013-10-11 07:58:41 +00:00
Károly Balogh
db49a169cb handle more locations in tm68knotnode, fixes several tests failing to compile with 200203223
git-svn-id: trunk@25746 -
2013-10-11 02:51:23 +00:00
Károly Balogh
aedf2dc20d fixed spilling operation type for A_LEA, fixes test tb0112 to compile, but still fails to run
git-svn-id: trunk@25745 -
2013-10-11 02:03:48 +00:00
Károly Balogh
275031a0dd fix a bogus R_INTREGISTER to be R_ADDRESSREGISTER in getopstr()
git-svn-id: trunk@25744 -
2013-10-10 22:24:56 +00:00
Károly Balogh
fe3d11118c add string version of the new instructions to the right place. removed one more duplicate table.
git-svn-id: trunk@25743 -
2013-10-10 22:12:40 +00:00
Károly Balogh
dfe2f253f9 added 68040 CPU type, MOVE16 and ColdFire V4 extra instructions
git-svn-id: trunk@25742 -
2013-10-10 22:01:58 +00:00
Károly Balogh
280ee919b7 removed several debug writeln()s
git-svn-id: trunk@25741 -
2013-10-10 21:20:20 +00:00
Károly Balogh
bcab04538c removed unused table, cleanups
git-svn-id: trunk@25740 -
2013-10-10 21:19:15 +00:00
Károly Balogh
4c5f273bc5 removed redundant instruction table only used for ugly debug, and the ugly debug code itself
git-svn-id: trunk@25739 -
2013-10-10 21:16:07 +00:00
sergei
a5ae26da7e * Moved SkipEntryExitMarker method from ARM optimizer to the base one, since it is not target-dependent. Now it can be reused by other targets.
git-svn-id: trunk@25738 -
2013-10-10 21:12:49 +00:00
sergei
a3364a4b80 - RTL, Linux/FreeBSD shared library startup: removed FPC_SHARED_LIB_EXIT label, it is a leftover from times when library startup code was erroneously halting owning process on exit.
git-svn-id: trunk@25737 -
2013-10-10 13:14:56 +00:00
sergei
f2a4d1bbbc - Do not compile generic threadvar code if tf_section_threadvars flag is enabled for target (currently there are no such targets).
git-svn-id: trunk@25736 -
2013-10-10 12:55:30 +00:00
sergei
90d66595c2 * typecheck_real_to_currency: generate inline round() node instead of direct call to fpc_round_real, this allows target-specific processing to take place and possibly emit more efficient code.
* Provide x86_64 SSE versions of fpc_trunc_real and fpc_round_real, strictly they are not necessary after the above change to code generation, but it still reduces size of system unit by avoiding compilation of related generic code.

git-svn-id: trunk@25735 -
2013-10-10 12:46:51 +00:00
nickysn
849843fb20 * fixed compilation of unit graph for win32 and win64 after r25730
git-svn-id: trunk@25734 -
2013-10-10 09:06:13 +00:00
michael
b1b8cc2542 * Patch from LaCo to fix bug #25118
git-svn-id: trunk@25733 -
2013-10-10 06:36:22 +00:00
michael
86d2d0c9be * Patch from LaCo to bring implementation in line with other DB dyn units (bug ID 25118)
git-svn-id: trunk@25732 -
2013-10-10 06:34:52 +00:00
nickysn
b73252bd3d + enabled compilation of the code page units for i8086-msdos
git-svn-id: trunk@25731 -
2013-10-09 23:39:36 +00:00
nickysn
73e875c7b2 * the graph unit's built in font compressed to use 1 bit per pixel, instead of
1 byte. This saves 14kb of space from the precious 64kb available for data in
  the i8086 medium memory model.

git-svn-id: trunk@25730 -
2013-10-09 21:10:58 +00:00
nickysn
d69a3447cd * the DrawnList structure (used by FloodFill) is now dynamically allocated
before a FloodFill and freed afterwards, so it doesn't waste memory, while
  not in use

git-svn-id: trunk@25729 -
2013-10-09 20:27:04 +00:00
svenbarth
6fef9a2c80 Correctly implement g_intf_wrapper. Fixes nearly 200 tests and now the cross compiled compiler is at least able to print the help (compiling a simple program does not work yet though).
m68k/cgcpu.pas, tcg68k:
  + override g_adjust_self_value as we don't do register allocation for the wrapper we need to adjust the Self value using the scratch registers (could be improved however) and we also can not use the offset that the original procedure in tcg uses
  * fix g_intf_wrapper by using the correct operations and loading the correct (virtual) method offset

git-svn-id: trunk@25728 -
2013-10-09 19:56:17 +00:00
nickysn
327a15488e * generate a run time error 203 in the tiny heap in case there's not enough
memory for a memory allocation and ReturnNilIfGrowHeapFails is false

git-svn-id: trunk@25727 -
2013-10-09 19:27:55 +00:00
florian
babbc21afd * fix handling of register sets on m68k: it is required that they are stored as two tcpuregistersets because address registers and data registers have different register types
git-svn-id: trunk@25726 -
2013-10-09 18:15:06 +00:00
nickysn
6f474e525c * TNewModeInfo/newModeList modified so that it doesn't keep a second copy of the
TModeInfo record for each mode, but instead keep only a pointer to the entry
  in the regular ModeList. This frees a lot of memory on i8086-msdos, when using
  the medium memory model (which has a 64kb data limit).

git-svn-id: trunk@25725 -
2013-10-08 21:11:39 +00:00
nickysn
6d1663fdc5 * the TNewModeInfo record type moved to the implementation part of the graph
unit. It is extremely unlikely that this type was ever used by programs,
  because:
  1) the newModeInfo structure of this type is in the implementation part of
     the unit
  2) none of the graph unit procedures and functions use this type either as a
     parameter or as a function result

git-svn-id: trunk@25724 -
2013-10-08 19:20:54 +00:00
marco
c7206dde97 * changed type of unused parameter in TWMSetFocus from WParam to LParam as
suggest by ChrisF, Mantis #25171

git-svn-id: trunk@25723 -
2013-10-08 16:02:25 +00:00
nickysn
7b7334138b + use PatternLineVESA256 also for the 640x400 256-colour VESA mode
git-svn-id: trunk@25722 -
2013-10-08 14:45:56 +00:00
lacak
3c0386ca19 fcl-db: sqlDB: add more informations to schema query for table columns (SchemaType=stColumns)
(Values for COLUMN_DATATYPE are not compatible across TSQLConnections, but are proprietary)

git-svn-id: trunk@25721 -
2013-10-08 07:34:53 +00:00
paul
1c578de28c compiler:
* don't allow to apply the same hint directive twice
  * change parser_e_proc_dir_not_allowed to more generic variant parser_e_dir_not_allowed - they are similar and 'procedure' prefix does not give more information about the error.
  * maybe_parse_hint_directives() uses procdef settings for initial values
  + add tests

git-svn-id: trunk@25720 -
2013-10-08 04:56:42 +00:00
Jonas Maebe
9619ed8b4b - undo hack from r25713
* fix maybe_parse_hint_directives() when it is called multiple times for a
   procdef that has a deprecation message specified (fixes crashes
   reported in #25101/#25165)

git-svn-id: trunk@25719 -
2013-10-07 20:54:26 +00:00
nickysn
8fad859161 * the default packrecords setting changed to 1 on i8086 for Turbo Pascal 7
compatibility

git-svn-id: trunk@25718 -
2013-10-07 20:42:17 +00:00
nickysn
9d1ba65cec * {$PackRecords NORMAL}, {$PackRecords DEFAULT} and {$ALIGN RESET} now set
packrecords to default_settings.packrecords, instead of 0

git-svn-id: trunk@25717 -
2013-10-07 20:41:19 +00:00
yury
b293f7e5c4 * ppudump: Do not skip unnamed inline array type definitions such as "var arr: array of integer";
git-svn-id: trunk@25716 -
2013-10-07 20:15:13 +00:00