Commit Graph

39510 Commits

Author SHA1 Message Date
florian
d6f0a1a0df * do not generate scaled indicies for case table jumps for i8086
git-svn-id: branches/i8086@23872 -
2013-03-16 19:52:53 +00:00
nickysn
5dd5add67a * proper implementation of ti8086addnode.second_cmp64bit
git-svn-id: branches/i8086@23871 -
2013-03-16 19:01:15 +00:00
nickysn
56d2830beb + implemented 32-bit comparisons on the i8086
git-svn-id: branches/i8086@23870 -
2013-03-16 18:13:11 +00:00
nickysn
a274e62724 + added defutil.is_32bit helper function, similar to is_64bit
git-svn-id: branches/i8086@23869 -
2013-03-16 17:54:52 +00:00
florian
edd4c1ce4b * proper fix to avoid sp relative adressing as r23867 tries
git-svn-id: branches/i8086@23868 -
2013-03-16 16:51:31 +00:00
nickysn
01106a0968 * support stack relative addresses in a_loadfpu_reg_ref on the i8086
git-svn-id: branches/i8086@23867 -
2013-03-16 16:05:38 +00:00
nickysn
fd98de1fd2 * don't define FPC_INITIALIZEUNITS twice, when FULL_RTL is defined
git-svn-id: branches/i8086@23865 -
2013-03-16 14:01:40 +00:00
nickysn
88fe359644 + added several necessary system unit routines
git-svn-id: branches/i8086@23864 -
2013-03-16 14:00:32 +00:00
nickysn
8f984e75e5 * hack for making threadvr.inc compile on i8086
git-svn-id: branches/i8086@23863 -
2013-03-16 13:59:43 +00:00
nickysn
d2cd13a5c9 * implemented several i8086 procs, some are stubs/not yet implemented
git-svn-id: branches/i8086@23862 -
2013-03-16 13:52:28 +00:00
nickysn
8cb0f96200 * avoid duplicated do_exit when FULL_RTL is defined
git-svn-id: branches/i8086@23861 -
2013-03-16 12:53:42 +00:00
nickysn
54a5e980ef + added sysdir.inc for msdos, empty for now
git-svn-id: branches/i8086@23860 -
2013-03-16 12:49:21 +00:00
nickysn
573ea10ef3 * fixed val when the 'code' parameter is the same size as the native CPU int type, but unsigned
git-svn-id: branches/i8086@23859 -
2013-03-16 12:42:37 +00:00
nickysn
b178a038f5 * set the FileRec size for i8086
git-svn-id: branches/i8086@23858 -
2013-03-16 12:07:39 +00:00
nickysn
bca7bf78dc + added sysheap.inc and sysfile.inc to the msdos target, empty for now
git-svn-id: branches/i8086@23857 -
2013-03-16 12:03:24 +00:00
nickysn
c136785c10 + a few standard consts and vars for the msdos target
git-svn-id: branches/i8086@23856 -
2013-03-16 11:17:49 +00:00
nickysn
1ced81c028 + added fpc_cpuinit, empty for now
git-svn-id: branches/i8086@23855 -
2013-03-16 11:07:43 +00:00
nickysn
a0e683bed6 * set the proper TextRec size for i8086
git-svn-id: branches/i8086@23854 -
2013-03-16 10:45:57 +00:00
nickysn
f4b5b4ce0f * implemented Trunc() and Round() for i8086
git-svn-id: branches/i8086@23852 -
2013-03-16 03:34:23 +00:00
nickysn
37714971ff + added rtl/i8086/int64p.inc, empty for now
git-svn-id: branches/i8086@23851 -
2013-03-16 03:11:52 +00:00
nickysn
fdf831b4c6 * i8086 fix in tinlinenode.pass_typecheck for trunc and round
git-svn-id: branches/i8086@23849 -
2013-03-15 17:03:33 +00:00
nickysn
5215bd33c2 * compilation of fpc_exp_real fixed
git-svn-id: branches/i8086@23843 -
2013-03-15 12:53:49 +00:00
nickysn
ca1fad8a73 + added fpc_exp_real for i8086
git-svn-id: branches/i8086@23841 -
2013-03-15 01:21:32 +00:00
nickysn
a66f7b61c6 * disable ret_in_param for floats, as they can be returned in a floating point register, and because enabling ret_in_param for them screws up badly the internprocs that handle floats
git-svn-id: branches/i8086@23840 -
2013-03-15 01:12:00 +00:00
nickysn
0683409703 + added i8086 to the CpuAddrBitSize and CpuAluBitSize const arrays in the 'ppu' unit
git-svn-id: branches/i8086@23839 -
2013-03-15 00:10:05 +00:00
nickysn
7d212a7e79 * default to intel assembler for delphi/tp7 modes also on i8086
git-svn-id: branches/i8086@23838 -
2013-03-14 22:19:10 +00:00
nickysn
99212c0f9c * define FPC_HAS_TYPE_EXTENDED for i8086; undefine FPC_INCLUDE_SOFTWARE_INT64_TO_DOUBLE
git-svn-id: branches/i8086@23837 -
2013-03-14 21:11:10 +00:00
nickysn
a3fe455de6 + added the i8086 internal fake math routines to the rtl
git-svn-id: branches/i8086@23836 -
2013-03-14 16:35:25 +00:00
nickysn
30d661734c + enable tprocdef.fpu_used for i8086 also
git-svn-id: branches/i8086@23835 -
2013-03-14 16:33:37 +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
e95d22d0f8 + added ti8086inlinenode
git-svn-id: branches/i8086@23833 -
2013-03-14 15:15:32 +00:00
nickysn
6757fe5752 * i8086 implementation of fpc_int_real
git-svn-id: branches/i8086@23832 -
2013-03-14 15:04:53 +00:00
nickysn
47ff0a520d + added Test8086, Test8087, has_sse_support and has_mmx_support vars for i8086
git-svn-id: branches/i8086@23827 -
2013-03-14 13:29:42 +00:00
nickysn
897967b8ff * use {$maxfpuregisters 0} for i8086 also
git-svn-id: branches/i8086@23826 -
2013-03-14 13:23:19 +00:00
nickysn
44ce37369e * support 32-bit parameters that have a pair of two 16-bit locations in tcg8086.a_load_reg_cgpara
git-svn-id: branches/i8086@23825 -
2013-03-14 13:07:06 +00:00
nickysn
e956ffc27b * bug fix in the 32-bit parameters handling in tcg8086.a_load_const_cgpara
git-svn-id: branches/i8086@23824 -
2013-03-14 12:19:06 +00:00
nickysn
edc382aa76 * 16-bit ALU fixes in tshlshrnode.pass_typecheck
git-svn-id: branches/i8086@23817 -
2013-03-13 18:00:28 +00:00
nickysn
f048e3fd3b + support 16-bit pointers (i8086 near pointers) in defutil.def_cgsize
git-svn-id: branches/i8086@23816 -
2013-03-13 17:19:21 +00:00
nickysn
6efe01eb3f * enable the MUL helpers in the i8086 rtl
git-svn-id: branches/i8086@23814 -
2013-03-12 23:35:20 +00:00
nickysn
c438f3b53a * 386 changed to 8086 in various class names and comments
git-svn-id: branches/i8086@23813 -
2013-03-12 23:22:52 +00:00
nickysn
ea282ab4b3 * many int64 fixes
git-svn-id: branches/i8086@23812 -
2013-03-12 23:18:36 +00:00
nickysn
79f43c22e9 * fixed passing of int64 constants as parameters
git-svn-id: branches/i8086@23811 -
2013-03-12 18:04:38 +00:00
nickysn
4e640511fb * tcgunaryminusnode.second_64bit fixed for < 32-bit CPUs
git-svn-id: branches/i8086@23810 -
2013-03-12 16:27:26 +00:00
nickysn
d0c43f50f0 * fixed ti8086addnode.second_add64bit
git-svn-id: branches/i8086@23809 -
2013-03-12 16:25:44 +00:00
nickysn
8645d8e6cb * fixed implementation of a_op64_reg_reg for i8086
git-svn-id: branches/i8086@23808 -
2013-03-12 16:24:28 +00:00
nickysn
4ea86a445e * fixed functions returning int64 on i8086
git-svn-id: branches/i8086@23807 -
2013-03-12 15:09:24 +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
19cbff220e + added unit n8086mat, based on n386mat; TODO: adapt to i8086
git-svn-id: branches/i8086@23805 -
2013-03-12 14:30:26 +00:00
nickysn
8d2b7df6d6 * fixed functions returning longint on i8086
git-svn-id: branches/i8086@23803 -
2013-03-12 13:35:19 +00:00
nickysn
8d6017348a * fixed the defines of OS_PAIR and OS_SPAIR for cpus with 16-bit or 8-bit ALU
git-svn-id: branches/i8086@23797 -
2013-03-12 01:00:40 +00:00