nickysn
ce87e72721
* show an error if the user attempts to create a dos .com file in an i8086
...
memory model other than tiny
git-svn-id: trunk@28081 -
2014-06-26 22:52:57 +00:00
Károly Balogh
5276de5627
m68k: restored orglen variable to g_concatcopy which was actually used, but still got removed in r28072
...
git-svn-id: trunk@28080 -
2014-06-26 19:46:57 +00:00
nickysn
82d393014b
+ added a test for the tiny memory layout
...
git-svn-id: trunk@28079 -
2014-06-26 17:38:38 +00:00
nickysn
835fb1d157
+ added memory layout tests for the small and medium memory models
...
git-svn-id: trunk@28078 -
2014-06-26 17:30:32 +00:00
Károly Balogh
3028f3ac78
m68k: disabled PEA debug comment accidentally left in
...
git-svn-id: trunk@28077 -
2014-06-26 16:50:42 +00:00
Károly Balogh
d93e7b3367
m68k: cleaned ancient silly debug mess from a_loadaddr_ref_reg. no functional changes.
...
git-svn-id: trunk@28076 -
2014-06-26 16:47:55 +00:00
Károly Balogh
1388cb9bae
m68k: implemented a proper a_loadaddr_ref_cgpara instead of the disabled mess in the source, utilizing the PEA instruction
...
git-svn-id: trunk@28075 -
2014-06-26 16:39:17 +00:00
nickysn
57de15e071
+ added checks for the Program Segment Prefix's relative position to the code
...
segment in the compact and large memory layout tests
git-svn-id: trunk@28074 -
2014-06-26 09:58:12 +00:00
nickysn
be0afd9625
+ added checks for the pointer and procvar sizes in the compact and large memory
...
layout tests
git-svn-id: trunk@28073 -
2014-06-26 09:20:51 +00:00
sergei
4c3eb391ef
* m68k: cleaned out unused variables in cgcpu.pas
...
* Fixed reference strength in a_call_reg.
git-svn-id: trunk@28072 -
2014-06-26 08:27:38 +00:00
Jeppe Johansen
857a849173
Added an additional check to the MulAdd2MLA optimization. The operands of the multiplication weren't checked.
...
git-svn-id: trunk@28071 -
2014-06-26 06:05:08 +00:00
sergei
3ffa32a660
- m68k: removed garbage (tab characters, commented out code, unused variables, debug output and alike). Functionality unchanged.
...
git-svn-id: trunk@28070 -
2014-06-26 06:01:29 +00:00
nickysn
f7dd4f640a
- rm the 'Memory allocation error' and 'Not enough memory' error messages from
...
the compact and large model startup code, since they're not used (we rely on
the DOS loader to check for the available memory instead)
git-svn-id: trunk@28069 -
2014-06-25 23:16:55 +00:00
nickysn
dc17b55505
* switch to asmmode_i8086_intel instead of asmmode_i386_intel on i8086 when tp
...
or delphi mode is selected. This fixes the error "Selected assembler reader
not supported" in programs that specify $mode tp/delphi, but do not explicitly
set $asmmode intel.
git-svn-id: trunk@28068 -
2014-06-25 22:02:03 +00:00
nickysn
ce4f9577d7
* seges prefix and lodsb instruction put on the same line for better readability
...
git-svn-id: trunk@28067 -
2014-06-25 21:07:25 +00:00
nickysn
9b560ffd64
* x86 intel syntax inline asm: allow a segment override (segcs,segds,seges,etc.)
...
to be followed by an instruction on the same line as the override
git-svn-id: trunk@28066 -
2014-06-25 21:06:19 +00:00
nickysn
2f83e2efc9
* use 'seges' instead of db 26h. It is actually supported, but for some reason,
...
unlike TP7's inline asm, in FPC it doesn't work on the same line as 'lodsb'.
git-svn-id: trunk@28065 -
2014-06-25 18:07:24 +00:00
sergei
ad59098457
+ m68k: initial implementation of g_stackpointer_alloc method, it has to exist for targets with non-fixed stack.
...
git-svn-id: trunk@28064 -
2014-06-25 17:43:37 +00:00
nickysn
ec55340359
* i8086 far data memory model fixes in get_caller_addr and get_caller_frame
...
git-svn-id: trunk@28063 -
2014-06-25 16:47:56 +00:00
nickysn
ba5ececab9
* i8086 far data memory model fixes in the int 0 (div by zero) handler
...
git-svn-id: trunk@28062 -
2014-06-25 16:46:58 +00:00
nickysn
d00c67f9d3
* limit the heap to 16kb in the i8086 far data memory models for the dos unit
...
tests that execute a child process. Otherwise, by default, all DOS memory is
reserved in these memory models, there's no DOS memory left for the child
process and exec() fails.
git-svn-id: trunk@28061 -
2014-06-25 13:43:44 +00:00
nickysn
a9ddf18779
+ call SwapVectors before and after Exec under FPC as well. SwapVectors is
...
implemented on two FPC platforms (go32v2 and msdos). On the platforms that
don't need it, it does nothing, so it's safe to call on all platforms.
git-svn-id: trunk@28060 -
2014-06-25 13:35:11 +00:00
nickysn
e7e02467fc
* fixed bug in MsDos and Intr in i8086 far data memory models not cleaning their
...
parameters from the stack properly (leaving an extra word on the stack)
git-svn-id: trunk@28059 -
2014-06-25 12:33:03 +00:00
nickysn
47588a287d
* ifdef i8086 changed to ifdef cpui8086 in dosh.inc, because that's part of the
...
rtl, not the compiler
git-svn-id: trunk@28058 -
2014-06-25 10:28:29 +00:00
lacak
96a3a667c5
fcl-db: tests: fix of previous commit
...
git-svn-id: trunk@28057 -
2014-06-25 09:55:46 +00:00
nickysn
0d4edf118e
+ added upper limits to the heapmin and heapmax values set by the $M directive
...
git-svn-id: trunk@28056 -
2014-06-25 09:33:04 +00:00
lacak
9d5c2717c8
fcl-db: tests:
...
- remove unused variables
- fix tests for Oracle - first test Values and then Field type
git-svn-id: trunk@28055 -
2014-06-25 09:05:59 +00:00
sergei
1e9f57467d
- m68k: removed "-dNOOPT" at build time, enabling the branch optimizer. Not tested thoroughly, but it does not change compiler behavior unless "-O1" or higher is supplied at command line.
...
git-svn-id: trunk@28054 -
2014-06-25 09:03:48 +00:00
Károly Balogh
531ac093ed
m68k: implemented a simple a_cmp_const_ref_label. uses TST instruction to test ref contents against zero
...
git-svn-id: trunk@28053 -
2014-06-25 06:56:58 +00:00
sergei
c79cd3beca
* m68k: fixed/completed the inverse_cond function.
...
git-svn-id: trunk@28052 -
2014-06-25 05:23:30 +00:00
nickysn
9f31fcc2ca
+ added support for HeapMax in the far data i8086 memory models as well
...
git-svn-id: trunk@28051 -
2014-06-24 22:54:54 +00:00
nickysn
3952f8830c
+ added test for the i8086 compact model memory layout
...
git-svn-id: trunk@28050 -
2014-06-24 19:48:37 +00:00
lacak
da4fc8aca2
fcl-db: tests: small correction of previous commit
...
git-svn-id: trunk@28049 -
2014-06-24 13:58:12 +00:00
yury
defc13f9ec
* pas2jni: Fixed enums, added equals() methods to objects, enums and sets.
...
git-svn-id: trunk@28048 -
2014-06-24 13:57:31 +00:00
nickysn
23b0cf2340
* msdos system unit variable dos_psp renamed PrefixSeg for TP7 compatibility
...
git-svn-id: trunk@28047 -
2014-06-24 10:58:59 +00:00
yury
a27ea85560
* pas2jni: Fixed the Pointer() support function.
...
git-svn-id: trunk@28046 -
2014-06-24 10:52:14 +00:00
lacak
41e8a0da2c
fcl-db: tests:
...
- add TestSupportDateTimeFields
- small rework for Oracle case
git-svn-id: trunk@28045 -
2014-06-24 10:41:21 +00:00
lacak
dac058e462
fcl-db: oracle: let EOraDatabaseError descend from ESQLDatabaseError instead of EDatabaseError
...
git-svn-id: trunk@28044 -
2014-06-24 09:52:13 +00:00
yury
045429327b
* pas2jni: Handle null objects in the Pointer() support function.
...
git-svn-id: trunk@28043 -
2014-06-24 09:49:09 +00:00
nickysn
db011dfb7a
+ added a warning if HeapMax<HeapMin is specified with the $M directive
...
git-svn-id: trunk@28042 -
2014-06-24 09:16:03 +00:00
lacak
742faaed92
fcl-db: oracle:
...
- bind date and datetime params using Oracle external data type SQLT_TIMESTAMP instead of SQLT_ODT to support fraction seconds
- introduce support for ftBlob and ftMemo params, but only with max.length up to 64K
git-svn-id: trunk@28041 -
2014-06-24 08:57:37 +00:00
nickysn
57b233e724
+ added test for the memory layout of the i8086 large memory model
...
git-svn-id: trunk@28040 -
2014-06-23 21:08:51 +00:00
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