nickysn
38aec68d6f
* ti8086vecnode.update_reference_reg_mul: remove the segment before calling
...
base, because base may in some cases call cg.a_loadaddr_ref_reg, which will
overwrite the next register, if the source reference contains a segment
git-svn-id: trunk@27713 -
2014-05-01 19:39:52 +00:00
nickysn
f00f7d6ee7
* override tcgvecnode.update_reference_reg_mul for i8086 and add code that
...
preserves the reference segment (because reference_reset_base, which is
sometimes used by the base method, kills the segment)
git-svn-id: trunk@27480 -
2014-04-05 14:02:52 +00:00
Jonas Maebe
338c064beb
* moved x86-specific tpointerdef functionality to architecture-specific
...
descendants
git-svn-id: trunk@27397 -
2014-03-30 21:04:36 +00:00
Jonas Maebe
4a79481c51
* isolated segment-related functionality of tabsolutevarsym into i386/i8086-
...
specific descendent classes and moved the code that deals with this in the
code generator also to target-specific classes -> only ifdefs left in
pdecvar
git-svn-id: trunk@27379 -
2014-03-30 15:42:53 +00:00
Jonas Maebe
b5fd71c3b9
* removed {$ifndef i8086} in tx86vecnode, instead reset cvecnode to
...
tcgvecnode in the n8086mem initcode
git-svn-id: trunk@27360 -
2014-03-29 22:31:49 +00:00
nickysn
e465ab355b
* converted tcgaddrnode.pass_generate_code to use the high level code generator,
...
which makes the i8086 overridden class unnecessary
git-svn-id: trunk@27323 -
2014-03-28 16:19:49 +00:00
Jonas Maebe
73a3f5ced4
* moved ncgutil.maybechangeloadnodereg() to hlcg.maybe_change_load_node_reg()
...
and moved ifdef'd jvm code to overridden method
git-svn-id: trunk@27153 -
2014-03-16 11:24:40 +00:00
nickysn
6aae88578c
+ getting the address of a label now returns a far pointer in i8086 far code memory models; this fixes the call to fpc_raiseexception in the raise node
...
git-svn-id: trunk@25517 -
2013-09-17 22:45:13 +00:00
nickysn
fd429612f8
+ initial (and not yet fully complete) implementation of far pointers on the i8086
...
git-svn-id: trunk@24553 -
2013-05-22 16:26:33 +00:00