nickysn
8a606761cd
* don't push cs in ti8086callnode.extra_interrupt_code in the far code memory
...
models, because in these models, interrupt procedures are treated as far and
an appropriate far call (or push cs+near call if in the same segment) is made
anyway
git-svn-id: trunk@27622 -
2014-04-21 00:56:51 +00:00
nickysn
e43791cf7c
* ti8086callnode.extra_call_ref_code: do not change the base register to BX if
...
it's BP, because that breaks memory models with DS<>SS
git-svn-id: trunk@27471 -
2014-04-04 21:43:40 +00:00
sergei
9c54cdc85d
* x86: Cleaned out addr_far,addr_far_ref used to encode far calls/jumps. NASM (and FPC x86 assembler based on it) already have opsize=S_FAR for this purpose.
...
git-svn-id: trunk@27037 -
2014-03-08 22:54:43 +00:00
sergei
9c1f917e3a
* a_call_ref functionality cannot be implemented efficiently at code generator level, because references need specific preparations at earlier points. Moved this support to tcgcallnode and its x86 descendants, and got rid of all ifdef's around.
...
+ x86 targets now directly call procedure variables located in references.
- a_call_ref method removed from tcg and thlcgobj.
git-svn-id: trunk@26666 -
2014-02-03 13:28:56 +00:00
nickysn
3853d06ac0
+ added n8086cal.pas, based on n386cal.pas; this pulls in nx86cal.pas as well and fixes compilation of the system unit on i8086 after the merge of the i8086 branch to trunk
...
git-svn-id: trunk@24335 -
2013-04-26 20:19:57 +00:00