Commit Graph

31 Commits

Author SHA1 Message Date
nickysn
efc5e339d0 * use an enum instead of integer constants to represent inline numbers
* compinnr.inc include file converted to a unit
* inline number field size stored in ppu increased from byte to longint
* inlines in the parse tree (when written with the -vp option) now printed with
  their enum name, instead of number

git-svn-id: trunk@36174 -
2017-05-10 14:41:43 +00:00
nickysn
012153201a * moved the conversion of "x:=x op k" to inline nodes to a separate optimization
pass, so that it can be done after other optimizations, such as constant
  propagation

git-svn-id: trunk@35961 -
2017-04-26 22:44:01 +00:00
nickysn
199574c7c6 * updated the compiler source files list in ppc8086.lpi
git-svn-id: trunk@35747 -
2017-04-07 12:40:20 +00:00
florian
99a0c2464d * version update
git-svn-id: trunk@35457 -
2017-02-19 19:15:19 +00:00
nickysn
c2305809dc + added an i8086-embedded target support to the compiler (RTL and makefile
support are not done yet)

git-svn-id: trunk@33999 -
2016-06-17 19:15:24 +00:00
nickysn
839ab714cc + started implementing a win16 target :)
git-svn-id: trunk@31521 -
2015-09-05 02:47:42 +00:00
nickysn
27f77329e7 - removed agjasmin.pas from the ppc8086.lpi (plus other changes lazarus insists on doing)
git-svn-id: trunk@30865 -
2015-05-15 22:27:35 +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
nickysn
ae44d240a3 * updated ppc8086.lpi with the latest compiler source files
git-svn-id: trunk@30394 -
2015-03-30 21:02:54 +00:00
nickysn
49d501a798 + added unit omfbase for omf definitions; currently contains all the omf record
type constants

git-svn-id: trunk@30331 -
2015-03-27 00:44:01 +00:00
nickysn
f9d3e0c8d6 + the beginnings of an i8086-msdos internal obj writer
git-svn-id: trunk@30330 -
2015-03-27 00:01:11 +00:00
nickysn
3cc8ff11e3 + generate the stack segment for i8086 far data memory models from within fpc
itself (instead of having a fixed 16k stack in the startup code). This allows
  setting the stack size in these models with the -Cs option.

git-svn-id: trunk@27820 -
2014-05-27 23:29:50 +00:00
nickysn
c9f8703679 + set ref.segment to NR_SS for all temps/localvars on i8086. This allows the
segment to survive e.g. several nested vecnodes, which cause the base register
  to change from BP to something else. In the cases where the ss: prefix is not
  needed, it is removed by make_simple_ref.
+ remove the ss: prefix in the several cases where make_simple_ref isn't called
  (namely spilling and tcg8086.a_call_reg_far)

git-svn-id: trunk@27714 -
2014-05-01 21:18:47 +00:00
nickysn
4832682c58 * fixed i8086 far pointer typed constants that are initialized with nil
git-svn-id: trunk@27458 -
2014-04-03 21:39:00 +00:00
nickysn
d6cb55297c + symx86.pas added to ppc8086.lpi
git-svn-id: trunk@27405 -
2014-03-31 09:24:55 +00:00
nickysn
e86e108dc5 + added the newly added source files from r27379 to ppc8086.lpi
git-svn-id: trunk@27398 -
2014-03-30 21:25:33 +00:00
nickysn
10f9b5c6e4 + added all compiler files to the ppc8086 lazarus project for easier navigation
git-svn-id: trunk@27328 -
2014-03-29 09:33:40 +00:00
nickysn
e6c6bdf662 + added n8086mem.pas to the ppc8086 lazarus project
git-svn-id: trunk@27317 -
2014-03-28 13:00:16 +00:00
nickysn
8ff628afe1 + added i_msdos.pas and t_msdos.pas to ppc8086.lpi
git-svn-id: trunk@27186 -
2014-03-19 16:20:25 +00:00
nickysn
6046edd8f9 + i8086/n8086cnv.pas added to lazarus project
git-svn-id: trunk@24861 -
2013-06-10 01:19:22 +00:00
nickysn
fcc84e5d96 + added the x86/*.pas files to ppc8086.lpi for easier access from the lazarus project inspector
git-svn-id: trunk@24814 -
2013-06-08 16:33:56 +00:00
nickysn
a308994423 * i8086 specific code from tcgpointerconstnode.pass_generate_code moved to an i8086 specific overriden method
git-svn-id: trunk@24577 -
2013-05-24 17:16:55 +00:00
florian
19c8abac0b + enable jump optimizer for i8086
git-svn-id: trunk@24400 -
2013-05-01 13:54:13 +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
florian
40af7b2817 + add msdos target to ppudump
git-svn-id: branches/i8086@24051 -
2013-03-29 10:46:34 +00:00
florian
8c882f4235 * revert accidently committed file
git-svn-id: branches/i8086@23974 -
2013-03-23 19:27:21 +00:00
florian
1f978ba9fe * 16 bit targets cannot use Word and Longint as array index
git-svn-id: branches/i8086@23973 -
2013-03-23 19:25:00 +00:00
nickysn
89de81d4a9 + added n8086inl to the lazarus project ppc8086.lpi
git-svn-id: branches/i8086@23834 -
2013-03-14 16:31:34 +00:00
nickysn
763ed6835a + added n8086mat to the lazarus project
git-svn-id: branches/i8086@23806 -
2013-03-12 14:31:30 +00:00
nickysn
8d346d162b added n8086add.pas (copy of n386add.pas), TODO: adapt to i8086
git-svn-id: branches/i8086@23762 -
2013-03-09 23:17:23 +00:00
nickysn
1c08561525 added lpi for easy building the i8086 compiler with lazarus
git-svn-id: branches/i8086@23721 -
2013-03-08 00:39:14 +00:00