Commit Graph

58848 Commits

Author SHA1 Message Date
nickysn
3f62fb7fe7 + enabled FPU emulation for the Z80
git-svn-id: branches/z80@45007 -
2020-04-22 22:18:33 +00:00
nickysn
3014378ad2 + support OS_32,OS_S32 in tcgz80.a_load_reg_cgpara
git-svn-id: branches/z80@45006 -
2020-04-22 22:04:15 +00:00
nickysn
3d89d72621 * fixed 64-bit AND/OR/XOR in tcgz80.a_op_reg_reg_internal
git-svn-id: branches/z80@45005 -
2020-04-22 21:58:43 +00:00
nickysn
e7f707cd78 + fixed 64-bit OP_NEG in a_op_reg_reg_internal
git-svn-id: branches/z80@45004 -
2020-04-22 21:48:42 +00:00
nickysn
ccd23d288d * handle same size, but different sign conversions properly in tcgz80.a_load_reg_ref,.a_load_ref_reg,.a_load_reg_reg
git-svn-id: branches/z80@45003 -
2020-04-22 21:42:00 +00:00
nickysn
4d875acdf1 + support OS_32 and OS_S32 in tcgz80.a_load_ref_cgpara
git-svn-id: branches/z80@45002 -
2020-04-22 21:09:03 +00:00
florian
483837ae5c + Xtensa: make use of ADDX*
git-svn-id: trunk@45001 -
2020-04-22 21:03:08 +00:00
florian
74abe87315 * Xtensa: do SAR by a constant using SRAI
git-svn-id: trunk@45000 -
2020-04-22 21:03:06 +00:00
svenbarth
5ef9a78f5f * fix for Mantis #36951: B and BL can take immediate literals as well
+ added test

git-svn-id: trunk@44999 -
2020-04-22 20:19:14 +00:00
svenbarth
03eb114e97 * fix for Mantis #36951: if the instruction only has one operand and it's a reference then don't internal error, but instead return OS_NO
git-svn-id: trunk@44998 -
2020-04-22 20:19:09 +00:00
nickysn
0b3b8401df + implemented tcgz80.a_jmp_cond
git-svn-id: branches/z80@44997 -
2020-04-22 16:10:23 +00:00
yury
7b425ed4a6 * Moved the common interface part of the win32 and win64 System units to the syswinh.inc include file.
git-svn-id: trunk@44996 -
2020-04-22 12:04:05 +00:00
yury
0f4ddf7b34 * Do not report about unimplemented unicodestring manager when HAS_WIDESTRINGMANAGER is defined (on Windows). In such case unimplemented parts are never executed unless you call them directly.
* Do not assign DefaultGetStandardCodePage when HAS_WIDESTRINGMANAGER is defined (on Windows).

git-svn-id: trunk@44995 -
2020-04-22 09:13:20 +00:00
nickysn
39574ac70e + implemented tz80notnode.second_boolean
git-svn-id: branches/z80@44994 -
2020-04-22 03:20:49 +00:00
nickysn
a3ae55081a + also handle LOC_FLAGS in tz80notnode.second_boolean
git-svn-id: branches/z80@44993 -
2020-04-22 03:03:11 +00:00
nickysn
bdd7cfb644 + handle LOC_JUMP in tz80notnode.second_boolean
git-svn-id: branches/z80@44992 -
2020-04-22 02:59:14 +00:00
nickysn
63e6c8fcf1 + override the NOT node for the Z80 (not yet implemented)
git-svn-id: branches/z80@44991 -
2020-04-22 02:56:51 +00:00
nickysn
c0ea4d826c + also support the 8-bit mul helpers in the generic code of nadd
git-svn-id: branches/z80@44990 -
2020-04-22 02:45:49 +00:00
nickysn
242b67c50a + always use a mul helper on the Z80
git-svn-id: branches/z80@44989 -
2020-04-22 02:39:26 +00:00
nickysn
b741ed63b0 - commented out internal error in trgcpu.do_spill_read and trgcpu.do_spill_written
git-svn-id: branches/z80@44988 -
2020-04-22 02:31:21 +00:00
nickysn
9ad3de966f + handle IX and IY-based references in tcgz80.normalize_ref
git-svn-id: branches/z80@44987 -
2020-04-22 02:27:07 +00:00
nickysn
fe8b50fed3 * fix for Z80 pointer comparisons
git-svn-id: branches/z80@44986 -
2020-04-22 01:45:10 +00:00
nickysn
22d60361a8 * fixed broken code generation for unequaln in TZ80AddNode.second_cmp16_32_64bit
git-svn-id: branches/z80@44985 -
2020-04-22 01:30:13 +00:00
nickysn
8a3847e1b2 * use cg.a_jmp_flags in TZ80AddNode.second_cmp
git-svn-id: branches/z80@44984 -
2020-04-22 01:20:54 +00:00
nickysn
fec0f346f1 + partially implemented tcgz80.a_cmp_const_reg_label: all 8-bit comparison ops are implemented, and
also OP_EQ, OP_NE for 16-bit and 32-bit operands

git-svn-id: branches/z80@44983 -
2020-04-22 01:18:02 +00:00
nickysn
41b5829983 - removed commented out code, because it looks like a misleading comment
git-svn-id: branches/z80@44982 -
2020-04-21 23:40:46 +00:00
nickysn
86643f8a34 * synchronized with trunk
git-svn-id: branches/z80@44981 -
2020-04-21 23:36:44 +00:00
nickysn
9fc1d39beb + implemented code generation for signed 16/32/64-bit comparisons (<,<=,>,>=)
git-svn-id: branches/z80@44980 -
2020-04-21 23:00:32 +00:00
nickysn
ce8ed9efa8 + added another helper tcgz80.a_jmp_signed_cmp_3way
git-svn-id: branches/z80@44979 -
2020-04-21 22:48:44 +00:00
nickysn
ded10c55b3 - removed an extra unused jump
git-svn-id: branches/z80@44978 -
2020-04-21 22:17:30 +00:00
nickysn
027217d1fe * fixed an OP_SUB bug in tcgz80.a_op_const_reg_internal
git-svn-id: branches/z80@44977 -
2020-04-21 22:05:02 +00:00
nickysn
c1fa5600f1 + implemented code generation for unsigned 16,32 and 64-bit comparisons (<,<=,>,>=)
git-svn-id: branches/z80@44976 -
2020-04-21 21:52:55 +00:00
nickysn
a714a2fb76 + added a jmp helper that handles all possible combinations of jump on below, equal and above (unsigned comparison)
git-svn-id: branches/z80@44975 -
2020-04-21 21:38:15 +00:00
nickysn
08f02cfd87 + implemented code generation for 16-bit, 32-bit and 64-bit equal and unequal comparisons. </<=/>/>=
are still 8-bit only.

git-svn-id: branches/z80@44974 -
2020-04-21 20:37:05 +00:00
florian
2d3cd25fd8 * patch by Michael Ring: adds license headers to th FreeRTOS files and some renames to make the interrupts cmsis compatible.
git-svn-id: trunk@44973 -
2020-04-21 20:34:15 +00:00
nickysn
902b8e0958 + implemented Move() using inline asm
git-svn-id: branches/z80@44972 -
2020-04-21 19:27:27 +00:00
nickysn
0bbd140228 * fixed handling of untyped const parameters
git-svn-id: branches/z80@44971 -
2020-04-21 19:19:17 +00:00
yury
c3954a0cee * Fixed r44960. Also copy a trailing implicit #0 of the original string to the new larger string.
git-svn-id: trunk@44970 -
2020-04-21 18:55:24 +00:00
nickysn
7f409534a1 + exposed FillChar, Sptr, get_frame, get_caller_addr, get_caller_frame from z80.inc even without FULL_RTL. This allows
testing them and using them for debugging (e.g. PrintHexWord(Word(Sptr)) now works)

git-svn-id: branches/z80@44969 -
2020-04-21 17:44:49 +00:00
nickysn
16b2fd4378 + compile z80.inc even without FULL_RTL
+ added extra defines to the system unit without FULL_RTL, so that more things can be compiled
- commented out stuff from z80.inc that doesn't compile yet. It will be uncommented as soon as the code generator
  starts being able to compile it

git-svn-id: branches/z80@44968 -
2020-04-21 17:39:33 +00:00
nickysn
c616c8df32 + implemented Sptr
git-svn-id: branches/z80@44967 -
2020-04-21 17:25:48 +00:00
nickysn
4e4cb4fd9d + implemented get_frame
git-svn-id: branches/z80@44966 -
2020-04-21 17:16:17 +00:00
nickysn
2aa248bba2 * FillChar changed to a pure assembler procedure
git-svn-id: branches/z80@44965 -
2020-04-21 16:48:54 +00:00
nickysn
7bfce62302 * fixed stack direction in assignintreg. This fixes problems with the parameter location calculation.
git-svn-id: branches/z80@44964 -
2020-04-21 16:41:43 +00:00
nickysn
fcaf2fe5a0 * stack_offset changed to longint
git-svn-id: branches/z80@44963 -
2020-04-21 16:34:21 +00:00
nickysn
0332a60cb8 * cur_stack_offset changed to longint
git-svn-id: branches/z80@44962 -
2020-04-21 16:31:15 +00:00
nickysn
c67fa28d7c * use a LD sequence for 2-byte moves as well in tcgz80.g_concatcopy
git-svn-id: branches/z80@44961 -
2020-04-21 16:26:04 +00:00
yury
1e32b96bc2 * Minor improvement. No need to move the terminating null char, since it is written later anyway. Remove a local var.
git-svn-id: trunk@44960 -
2020-04-21 14:18:35 +00:00
Károly Balogh
ef790adc28 m68k-amiga: document which legacy support functions are unimplemented and why, and where are they used in the RTL code
git-svn-id: trunk@44959 -
2020-04-21 13:54:22 +00:00
svenbarth
184d6d61ed * regenerate makefiles
git-svn-id: trunk@44958 -
2020-04-21 06:09:20 +00:00