Commit Graph

43421 Commits

Author SHA1 Message Date
nickysn
1910177cf0 + added heapmax support to the $M directive on i8086-msdos. It is currently
only implemented in the near data memory models. The far data models support
  is still a TODO.

git-svn-id: trunk@28039 -
2014-06-23 20:17:17 +00:00
marco
bcd13a856d * Some convenience permission constants, patch by Graeme #26373
git-svn-id: trunk@28038 -
2014-06-23 15:35:43 +00:00
nickysn
924a48d440 * fixed test tb0212.pp to check for 2-byte alignment instead of 4-byte on 16-bit
CPUs

git-svn-id: trunk@28037 -
2014-06-23 10:09:14 +00:00
lacak
da041f9ae6 fcl-db: oracle: map TIMESTAMP data type to SQLT_TIMESTAMP instead of SQLT_ODT to have fraction seconds
git-svn-id: trunk@28036 -
2014-06-23 09:03:37 +00:00
sergei
4b5736a381 + Added test for Mantis #20456. The issue itself was fixed in the meantime.
git-svn-id: trunk@28035 -
2014-06-23 03:58:58 +00:00
sergei
e367ccc0ee * MIPS: changed superregister number for $fcc0..$fcc7 to start from 32, so that range 0..31 can be used without translating into symbolic names.
* Change register type of second operand in CTC1 and CFC1 instructions to R_SPECIALREGISTER, so it is not output using a symbolic name. Mantis #26380.

git-svn-id: trunk@28034 -
2014-06-22 22:01:44 +00:00
nickysn
95449a3fd4 * fixed yet another dos_psp<>dgroup bug in the startup code for .exe files in
the tiny memory model

git-svn-id: trunk@28033 -
2014-06-22 20:12:55 +00:00
nickysn
3164a10d9d * fixed a bug in the startup code for tiny memory model, which caused the
program MCB address not to be calculated correctly, when the program is a tiny
  model .exe file, leading to possible memory corruption. Previously, the code
  assumed that dos_psp=CS, but that's only true for tiny .com files; tiny .exe
  files have a 256-byte gap between dos_psp and CS.

git-svn-id: trunk@28032 -
2014-06-22 11:06:57 +00:00
nickysn
cd6b15f49a * slight optimization to the small and medium model startup code
git-svn-id: trunk@28031 -
2014-06-22 09:42:30 +00:00
reiniero
7441885f5a * fcl-db: dbase: language string is only supported on Visual DBaseVII formats. Return empty for other formats.
git-svn-id: trunk@28030 -
2014-06-22 08:50:50 +00:00
reiniero
e2c58f9f89 * fcl-db: cosmetic
git-svn-id: trunk@28029 -
2014-06-22 07:28:55 +00:00
reiniero
bfb21cb4a0 * fcl-db: tests: better error reporting
git-svn-id: trunk@28028 -
2014-06-22 07:24:37 +00:00
sergei
53b0ef1f61 - Removed superfluous tai_align, the new_section procedure creates one itself.
git-svn-id: trunk@28027 -
2014-06-21 22:36:17 +00:00
nickysn
0f5b13d45b * allow setting a heap size of exactly 1024 bytes with the $M directive, since
that's a valid heap size value for the -Ch command line option

git-svn-id: trunk@28026 -
2014-06-21 21:51:27 +00:00
Károly Balogh
519094055c m68k: cleaned up and fixed cgcpu/fixref for coldfire at least; also enabled n68kmem node, so addressing with scaling is generated now
git-svn-id: trunk@28025 -
2014-06-21 21:36:48 +00:00
Jeppe Johansen
a1197460e1 Constrained a number of optimizations and updated reference offsets for ARM Thumb.
Embedded target can now build with optimizations.

git-svn-id: trunk@28023 -
2014-06-21 13:26:33 +00:00
nickysn
36d6fb7868 * don't add the stack segment declaration at the beginning of each object file
in the i8086 far data memory models as well

git-svn-id: trunk@28022 -
2014-06-21 10:41:57 +00:00
reiniero
4515ff7b77 * fcl-db: backlinks: allow clearing backlinks in any tablelevel
git-svn-id: trunk@28021 -
2014-06-21 09:05:51 +00:00
reiniero
115a64d62c * fcl-db: dbase: backlinks:
- allow auto-upgrade from FoxPro to VisualFoxpro when backlink specified
- check on required tablelevel when assigning backlinks
- translation for error messages (Spanish,Italian,Polish,Portugues,Russian) needed
- layout/comment fixes

git-svn-id: trunk@28020 -
2014-06-21 08:59:29 +00:00
nickysn
ef88fec688 * nested ifdefs in TX86NasmAssembler.WriteHeader replaced with an 'if defined()'
sequence

git-svn-id: trunk@28019 -
2014-06-21 08:28:15 +00:00
nickysn
40b2d3d562 * don't add the heap segment declaration at the beginning of each object file in
the i8086 far data memory models

git-svn-id: trunk@28018 -
2014-06-21 08:15:18 +00:00
reiniero
08efada1df * fcl-db: dbase:
- Visual Foxpro support for reading/writing backlink (to .dbc database container file)
- No support yet for the .dbc format itself, e.g. larger field/table names and referential integrity
- Renamed header parts to properly reflect status (i.e. at end of header rather than after header)
- Updated comments
- code layout

git-svn-id: trunk@28017 -
2014-06-21 08:12:25 +00:00
Jonas Maebe
2df1d5ec58 * don't allow default parameter values for parameter types that don't accept
constant values (i.e., anything non-value/const/constref) (mantis #263363)
   o fixed default parameter value for var-parameter in chmreader

git-svn-id: trunk@28016 -
2014-06-20 19:50:20 +00:00
Károly Balogh
195dbc15fa + second try on warning fix
git-svn-id: trunk@28015 -
2014-06-20 13:36:57 +00:00
Károly Balogh
00b55e100c + try to fix the warnings introduced in r27947, so the compiler builds with -Sew
git-svn-id: trunk@28014 -
2014-06-20 13:10:07 +00:00
lacak
f71480b281 fcl-db: oracle: add experimental support for LONG data type (needs more testing)
git-svn-id: trunk@28013 -
2014-06-20 12:03:10 +00:00
lacak
af2130d558 fcl-db: tests: add more data type mappings for Oracle
git-svn-id: trunk@28012 -
2014-06-20 11:55:58 +00:00
Károly Balogh
2881bc81b1 m68k: tweaks and fixes in n68kmem. the node is still disabled, needs further fixes in cgcpu/fixref to work properly
git-svn-id: trunk@28011 -
2014-06-20 11:49:38 +00:00
lacak
a6205b83ef fcl-db: oracle:
- add basic support for BLOB, CLOB data types (needs more testing)

git-svn-id: trunk@28010 -
2014-06-20 10:53:26 +00:00
Jeppe Johansen
0dc39b5d63 Applied patch from Michael Ring that adds some startup code for some new stm32f0 and stm32f1 controllers, and fixes naming on some LPC ARMv6m controllers.
git-svn-id: trunk@28009 -
2014-06-20 06:49:04 +00:00
sergei
c2a29a0dbb + MIPS: implemented peephole optimization which changes appropriate patterns into conditional moves, which are available on MIPS4 and higher.
git-svn-id: trunk@28008 -
2014-06-20 05:57:39 +00:00
sergei
4e7c908b0d + MIPS: added movn and movz instructions.
git-svn-id: trunk@28007 -
2014-06-19 22:44:17 +00:00
nickysn
1295b4abf7 - removed the call to CheckNullArea from the exit code for the tiny memory model
git-svn-id: trunk@28006 -
2014-06-19 21:47:46 +00:00
michael
a0f4ff655e * Small optimisation in strnew from Luiz Americo (bug ID 26365)
git-svn-id: trunk@28005 -
2014-06-19 17:40:21 +00:00
michael
f1bd08acce * Add enable/disablecontrols for target dataset (patch from Luiz Americo, bug ID #26364)
git-svn-id: trunk@28004 -
2014-06-19 17:34:25 +00:00
michael
5bf2b9f8d2 * Patch from Luiz Americo to allow reading data in blockread state
git-svn-id: trunk@28003 -
2014-06-19 17:29:56 +00:00
nickysn
7cfd7a66cd + create a special 'heap' segment with reserved space equal to heapsize (i.e.
the value set by -Ch or the second parameter to the $M directive). This is
  equivalent to the heapmin value in Turbo Pascal 7 and ensures that the program
  has at least this amount of heap space available (otherwise DOS will show a
  'not enough memory' error and will refuse to load the program).

git-svn-id: trunk@28002 -
2014-06-19 14:14:01 +00:00
reiniero
2557f1bfa3 * fcl-db: oracle: roll back some overzealous changes. Comment fixes.
git-svn-id: trunk@28001 -
2014-06-19 13:30:18 +00:00
reiniero
5c1eec309d * fcl-db: cosmetic: document integer precision; layout
git-svn-id: trunk@28000 -
2014-06-19 12:25:11 +00:00
sergei
25037f5318 - MIPS: completely removed trgcpu.add_constraints method.
While it can be correct from some point of view, it does not prevent aliasing a single-precision register into upper half of double-precision one. This is currently handled by making only even floating-point registers available to RA. At the same time, it somehow (possibly due to another bug in RA) generates a lot of unnecessary moves, as if physical double-precision registers conflict with each other. Anyway, removing it considerably improves the code without regressions in the test suite.

git-svn-id: trunk@27999 -
2014-06-19 03:59:24 +00:00
Jonas Maebe
de0041466f * fixed system.openchararraytype after r27970 (mantis #26359)
git-svn-id: trunk@27998 -
2014-06-18 20:20:04 +00:00
lacak
0106f860eb fcl-db: oracle:
- map NUMBER columns with precision < 5 to ftSmallint
- fix some tests for Oracle

git-svn-id: trunk@27997 -
2014-06-18 11:54:58 +00:00
reiniero
b871247238 * fcl-db: tests: bufdataset: test ftVariant & ftVarbytes as issue #19930 is marked eesolve.d
No regression in test suite.

git-svn-id: trunk@27996 -
2014-06-18 11:46:45 +00:00
lacak
98f5e7cd57 fcl-db: oracle:
- add support for ftSmallInt, ftLargeInt, ftFixedChar params
- add support for BINARY_FLOAT, BINARY_DOUBLE data types

git-svn-id: trunk@27995 -
2014-06-18 10:59:46 +00:00
reiniero
e4fa4a72d2 * fcl-db: cosmetic
git-svn-id: trunk@27994 -
2014-06-18 06:43:07 +00:00
reiniero
39ae91a66f * fcl-db: tdbf: detect some files as DBaseIV instead of III given version signature $03,$8B regardless of language ID. Mantis issue #26332
git-svn-id: trunk@27993 -
2014-06-18 06:42:47 +00:00
sergei
c260879439 * MIPS: updated registers, dropped special registers not recognized by GAS (actually, "pc" is recognized, but it is used only for MIPS16 mode, so it is easier to add back if/when this mode is supported), added FPU condition code registers ($fcc0..$fcc7).
* cpubase.pas, std_regname: changed logic to lookup known names for special registers before resorting to default name, so that $fcc0..$fcc7 can be used as operands.

git-svn-id: trunk@27992 -
2014-06-17 23:15:34 +00:00
sergei
c77225d2c4 + MIPS: added some instructions.
git-svn-id: trunk@27991 -
2014-06-17 22:52:35 +00:00
sergei
a8e30043db + MIPS: more peephole optimizations (basically updated to the state of SPARC peephole).
git-svn-id: trunk@27990 -
2014-06-17 22:50:29 +00:00
sergei
04d8e8a5dc * On 64-bit targets, handle abs(int64) internally, using the same code as for abs(longint), i.e. without branching. Both generic and x86-specific pass 2 code is already suitable for different operand sizes, only type checking needs removal of excessive conversions to 32 bits.
git-svn-id: trunk@27989 -
2014-06-17 18:45:11 +00:00