florian
d598351664
* call also optimize_op_const in the generic a_op_const_reg_reg
...
git-svn-id: trunk@30658 -
2015-04-19 10:04:57 +00:00
florian
7f1585b99a
* do not save registers for subroutines which never return
...
* do not generate any exit code for subroutines which never return
git-svn-id: trunk@30657 -
2015-04-19 08:11:28 +00:00
florian
f972398a8c
+ main program never returns
...
git-svn-id: trunk@30656 -
2015-04-19 08:10:06 +00:00
florian
6797685c86
* write set constants only as large as needed by taking care of resultdef.size, resolves issue #27886
...
git-svn-id: trunk@30655 -
2015-04-18 19:32:49 +00:00
Tomas Hajny
3ded26a774
* correction of tests for Amiga (volumes, exclusion of some '.'/'..' related tests)
...
git-svn-id: trunk@30654 -
2015-04-18 18:48:42 +00:00
Tomas Hajny
23300b8a41
* fix by Charlie correcting treatment of a trailing directory separator on Amiga(-likes)
...
git-svn-id: trunk@30653 -
2015-04-18 18:29:19 +00:00
michael
81950878b9
* Some explanatory comments from Andrew Haines (bug ID 27898)
...
git-svn-id: trunk@30652 -
2015-04-18 16:34:01 +00:00
michael
e8b8cf348d
* Add dependency on rtl-extra
...
git-svn-id: trunk@30651 -
2015-04-18 15:57:59 +00:00
michael
1691ec4481
* Fix bug ID #26462 , additionally rework variables to match new interface
...
git-svn-id: trunk@30650 -
2015-04-18 14:59:56 +00:00
florian
987b66636d
+ optimize LDS/STS into IN/OUT, resolves issue #27884
...
git-svn-id: trunk@30649 -
2015-04-18 14:43:54 +00:00
florian
9e51283ae0
+ initial a_op_const_reg_reg and a_op_reg_reg_reg implementations to generate optimized 16 Bit multiplications on avr
...
git-svn-id: trunk@30648 -
2015-04-18 13:53:20 +00:00
florian
3e8766290d
* implements RegInInstruction and fixes RegModifiedByInstruction for avr
...
git-svn-id: trunk@30647 -
2015-04-18 13:51:28 +00:00
nickysn
24d9c06489
+ added class for encoding/decoding an omf library header record
...
git-svn-id: trunk@30646 -
2015-04-18 12:57:04 +00:00
michael
a8b8f4463c
* Added enet library headers (+ sample programs), bug ID #27891
...
git-svn-id: trunk@30645 -
2015-04-18 11:10:38 +00:00
nickysn
3ce29dcfb2
+ added function for computing the hash for the omf libraries' dictionary
...
git-svn-id: trunk@30644 -
2015-04-18 10:48:49 +00:00
nickysn
cebd3de630
+ added unit owomflib (empty for now), which is going to contain the internal
...
.lib writer for i8086-msdos
git-svn-id: trunk@30643 -
2015-04-18 09:49:38 +00:00
michael
27b1fb0439
* Fix bug #27831
...
git-svn-id: trunk@30642 -
2015-04-18 07:16:27 +00:00
michael
46a0eced9e
* Adapted test to test for 27831
...
git-svn-id: trunk@30641 -
2015-04-18 07:16:02 +00:00
michael
1211149a29
* Call Translate for blobfields as well (bug ID 25083)
...
git-svn-id: trunk@30640 -
2015-04-18 06:36:00 +00:00
michael
62e50ca506
* Patch from Luca Olivetti to allow to specify an address to which server must bind (bug ID 27892)
...
git-svn-id: trunk@30639 -
2015-04-18 06:12:07 +00:00
nickysn
75ec4adcf9
* fixed compilation of lnfodwrf in the i8086 medium and compact memory models
...
git-svn-id: trunk@30638 -
2015-04-18 01:56:29 +00:00
nickysn
a69b98484e
+ enabled compilation of unit lnfodwrf on i8086-msdos
...
git-svn-id: trunk@30637 -
2015-04-18 01:56:04 +00:00
nickysn
7fca6dd6c1
* set the properties of the dwarf debug info sections in the omf obj writer
...
as required by wlink in order to be recognized and handled as debug info
(i.e. class=DWARF, use32)
git-svn-id: trunk@30636 -
2015-04-18 00:42:17 +00:00
nickysn
fb31be4e4a
* changed the default debug format for i8086-msdos from stabs to dwarf2
...
git-svn-id: trunk@30635 -
2015-04-17 23:47:31 +00:00
nickysn
a6e39edb8f
* moved the insertion of fwaits for 8087 from the nasm asm writer to ti8086procinfo.postprocess_code
...
git-svn-id: trunk@30634 -
2015-04-17 23:27:03 +00:00
florian
58c66b4759
* the mul instructions do not modify the operands
...
git-svn-id: trunk@30633 -
2015-04-17 20:15:10 +00:00
florian
66e97549b9
* replace jmp by rjmp if possible, resolves issue #27885
...
git-svn-id: trunk@30632 -
2015-04-17 20:14:18 +00:00
florian
07cba31a0a
* cosmetics
...
git-svn-id: trunk@30631 -
2015-04-17 20:12:57 +00:00
florian
10dc944d35
* disable some function using ansistrings if the ansistring feature is turned off
...
git-svn-id: trunk@30630 -
2015-04-17 20:12:36 +00:00
nickysn
5c8965fea5
* in the inline asm reader, treat [var] reference as "word" instead of "dword"
...
when "var" is of dword size. This fixes spurious generation of a $66 prefix
and makes the code consistent with what Tx86Operand.SetSize does (and what is
then used for checking the operand sizes of all operands of the instruction in
Tx86Instruction.CheckOperandSizes).
git-svn-id: trunk@30629 -
2015-04-17 19:58:06 +00:00
michael
f9f602dca6
* Fix bug ID #24752
...
git-svn-id: trunk@30628 -
2015-04-17 19:57:48 +00:00
michael
3e100245e0
* Globally take into account forcedclose when committing/rollbacking, so all operations succeed
...
git-svn-id: trunk@30627 -
2015-04-17 19:26:36 +00:00
nickysn
3b5395e0e3
* set 16-bit opsize for OPR_SYMBOL operands on i8086
...
git-svn-id: trunk@30626 -
2015-04-17 19:10:13 +00:00
michael
7c33165672
* Parse ASM blocks (Bug ID 27117)
...
git-svn-id: trunk@30625 -
2015-04-17 19:06:11 +00:00
michael
faaae8b2a2
* Fix bug #24271 , fpdoc failing on dotted unit names
...
git-svn-id: trunk@30624 -
2015-04-17 18:23:13 +00:00
michael
f3e8240230
* Fix bug UD 27026
...
git-svn-id: trunk@30623 -
2015-04-17 17:57:33 +00:00
michael
27ff4c95e4
* Made CheckBitIndex protected
...
git-svn-id: trunk@30622 -
2015-04-17 16:53:23 +00:00
michael
dd6f45d1d0
* Added setregid and setreuid functions to linux unit (they are not POSIX), bug ID #25403
...
git-svn-id: trunk@30621 -
2015-04-17 16:48:32 +00:00
michael
3b33b2a7bc
* Fix bug ID #26512
...
git-svn-id: trunk@30620 -
2015-04-17 16:44:11 +00:00
michael
f67cbabdc6
* Fixed memory leak caused by FSocket not being freed if error during connect (bug ID 26959)
...
git-svn-id: trunk@30619 -
2015-04-17 13:35:41 +00:00
michael
f5aeb96c97
* Added dependency on rtl-objpas
...
git-svn-id: trunk@30618 -
2015-04-17 12:26:52 +00:00
michael
d802842ecf
* Committed working patches to error message files from Stéphane Aulery
...
git-svn-id: trunk@30617 -
2015-04-17 12:19:13 +00:00
nickysn
c3515f743f
* generate 16-bit (instead of 32-bit) instructions for push/pop of a segment
...
register in an inline asm block on i8086
git-svn-id: trunk@30616 -
2015-04-17 00:51:00 +00:00
nickysn
7315175c32
* keep the proper original section name and order (and not just the type) of the
...
last encountered section at the object cut location when writing a smartlinked
library with the internal assembler. This fixes the $HUGECODE directive with
the internal assembler on i8086 and maybe other things on other platforms,
that use library based smartlinking in combination with the internal asm.
git-svn-id: trunk@30615 -
2015-04-16 23:33:26 +00:00
Jonas Maebe
3be51e1455
* fixed endless recursion in tabstractrecorddef.contains_float_field() in
...
case a record contains an internal typed constant of its own type
(which happened becuase such a typed constant is also fieldvarsym, solved
by checking for sp_static) (mantis #27880 )
* fixed several other similar cases in the compiler where we are only
interested in instance fields, but processed all fieldvarsyms
git-svn-id: trunk@30614 -
2015-04-16 21:25:22 +00:00
nickysn
25a834087e
+ choose the correct version of "Jcc near" to use on i8086 (386+ or 8086+)
...
depending on the specified target cpu type
+ support the \60..\62 magic codes on i8086 in the internal asm writer
git-svn-id: trunk@30613 -
2015-04-16 19:49:22 +00:00
nickysn
2cf6852910
+ added i8086 instruction entries for Jcc near (which is actually a 386+
...
instruction), that encode it as two i8086 compatible instructions:
JNcc short +3
JMP near target
git-svn-id: trunk@30612 -
2015-04-16 17:07:07 +00:00
nickysn
bfd5670cc8
+ support new magic code \23 in the internal asm writer - same as \13, but with
...
the condition inverted; this will be used to simulate near conditional jumps
on processors earlier than 386 (i.e. "Jcc near target" will be encoded as
"JNcc short +3; JMP target")
git-svn-id: trunk@30611 -
2015-04-16 16:53:48 +00:00
lacak
98c059f3ec
fcl-db: base: set storage specifiers - default 0 - for TFieldDef.Precision and TFieldDef.Size.
...
(TFieldDef.Precision is initialised to -1 which differs from Delphi where it is 0)
git-svn-id: trunk@30610 -
2015-04-16 11:37:28 +00:00
michael
f787468412
* Fixed bug #27829
...
git-svn-id: trunk@30609 -
2015-04-16 06:48:52 +00:00