Commit graph

299 commits

Author SHA1 Message Date
ceriel 239d634ab1 Added pattern for cmp A,A 1990-02-27 16:31:10 +00:00
ceriel 9d4e978a1e fixed problems with overflow bit in condition codes 1990-02-27 16:21:47 +00:00
ceriel 6c588b0ae8 fixed again 1990-01-30 14:02:49 +00:00
ceriel 5929f3dd0e Fix: illegal optimizations of muls 1990-01-30 13:41:36 +00:00
ceriel 36dbf24131 adapted so that _brk routine may update .limhp 1990-01-22 15:38:46 +00:00
ceriel 7e34a42088 Use .limhp 1990-01-22 15:03:13 +00:00
eck 0614d593dd forgot _dup() & _creat() 1990-01-22 10:34:50 +00:00
eck 9ee0876c2b added new routines for ansi 1990-01-22 08:51:54 +00:00
ceriel 89b736ba83 Added mechanism to warn correctly about conflicts 1990-01-19 16:05:44 +00:00
ceriel f9d19e9302 fixed assembler part of link instruction 1989-11-15 17:46:25 +00:00
ceriel edf2f575a2 link instruction does not work for more than 32768 bytes locals on M68000 1989-11-15 16:10:18 +00:00
ceriel 636c151d51 fix: printed wrong message; now dumps core at end 1989-11-08 14:42:09 +00:00
ceriel c33ae16bce the include file is called con_float, not float_cst 1989-11-01 10:57:04 +00:00
ceriel 9c03f2c8bd kill tokens using address registers better 1989-11-01 10:14:27 +00:00
ceriel cd1bb106ec improved STI 8 code 1989-10-26 15:54:21 +00:00
ceriel 9196107b79 fixed so that jumps back to local labels also work 1989-10-26 15:42:30 +00:00
ceriel a751b2ef42 Use Motorola byte order for floating point 1989-10-26 11:04:53 +00:00
ceriel 68a2852f57 fixed bug and changed con_float 1989-10-25 13:24:29 +00:00
ceriel b5a1f8a3b3 define IEEEFLOAT 1989-10-24 15:08:27 +00:00
ceriel 42940634dd Added ce directory 1989-10-24 09:30:32 +00:00
eck 78d3e500fb added CPP variable to Makefile 1989-10-20 11:05:00 +00:00
ceriel eb2a76270f corrected XOR problem, and ILOCAL does not exist for m68k4 1989-10-06 11:13:16 +00:00
ceriel 77259cd2f9 removed yet another eor.l error 1989-09-29 11:45:19 +00:00
ceriel 360caa08bb use strindex instead of index 1989-08-21 17:03:05 +00:00
ceriel 650c178631 fix: did not handle 0.0 right 1989-08-15 09:02:38 +00:00
ceriel 92bccdd4fa inline FEF code for M68881 was wrong; replaced bu subroutine call 1989-08-10 14:17:50 +00:00
ceriel f755d6683d fix to fix: did not handle negative arguments right 1989-08-09 16:29:15 +00:00
ceriel 5785bb133b fixed problem with fef on Infinity 1989-08-09 14:37:37 +00:00
ceriel 2b2698c44c Added fp68881.s 1989-08-01 16:32:34 +00:00
ceriel ed19a3d568 removed IEEEFORMAT #define 1989-07-31 14:52:45 +00:00
ceriel 6572fa2def use con_float file, and use new interface to fif and fef routines 1989-07-31 14:50:19 +00:00
ceriel 066c005493 Added #define for CODE_GENERATOR 1989-07-31 14:45:40 +00:00
ceriel 6f9afbf0d5 use IEEE format in floating point package 1989-07-25 15:50:29 +00:00
ceriel c820d77690 new floating point constant mechanism 1989-07-10 16:52:02 +00:00
ceriel 811612634a replaced some db.. instructions; they are wrong if the count register
contains a count > 65535
1989-07-07 16:01:03 +00:00
ceriel b32fb46dfe replaced some db.. instructions; they are wrong if the count register
contains a count > 65535
1989-07-07 15:05:33 +00:00
ceriel 01a95e3b08 replaced some db.. instructions; they are wrong if the count register
contains a count > 65535
1989-07-07 13:53:37 +00:00
ceriel 869ba1ec9e use make_asobj 1989-06-19 11:27:36 +00:00
ceriel 0374c089c3 Added some patterns for floating point code 1989-06-19 11:24:10 +00:00
ceriel 56e985729d some added patterns for M688881, and a fix 1989-06-15 10:35:42 +00:00
ceriel e8aadf4409 some optimizations for M68881; it is still horrible, though 1989-06-12 14:05:25 +00:00
ceriel 43fb961091 Added simple support for M68881 1989-06-12 09:30:39 +00:00
ceriel 133ecee90d fixed typo 1989-06-09 09:53:29 +00:00
ceriel 2b8ee048c8 Added saving of registers 1989-06-09 09:32:40 +00:00
ceriel 2cd40f68e6 Added support for MC68881 floating point processor 1989-06-08 12:46:17 +00:00
ceriel 3d7da616bf Added files 1989-05-29 14:45:56 +00:00
ceriel 013ccf9149 changed printf name: removed underscore 1989-05-29 14:42:18 +00:00
ceriel b7c7d50513 fixed typo 1989-05-11 10:43:37 +00:00
ceriel 50114318e2 fixed typo 1989-04-06 14:18:17 +00:00
ceriel c847bfb6c8 improved ASP patterns 1989-04-03 16:16:10 +00:00
ceriel c1fc03b7e2 fixed typo's 1989-03-16 11:20:47 +00:00
ceriel fb0051c85a fixed: pattern for ADI STL and the like was wrong 1989-03-14 14:05:10 +00:00
ceriel 101e93205b some more improvements; made fancy modes dependant on #define 1989-03-14 12:47:11 +00:00
ceriel e8aab09b4b some improvements and corrections 1989-03-03 15:16:12 +00:00
ceriel 62729ad0b2 Added some patterns 1989-03-03 12:46:59 +00:00
ceriel 0e3f85e837 Added some patterns 1989-03-03 11:10:13 +00:00
ceriel bc1eb3116e made several patterns dependant on a #define. Using some of the
fancy addressing modes actually made the code slower.
1989-03-01 16:28:18 +00:00
ceriel 992dc3eb65 Many new patterns 1989-03-01 11:32:37 +00:00
ceriel da2ba8e093 Added some patterns 1989-03-01 11:28:49 +00:00
ceriel 5c7325e0de fix: tst instruction also allowed on address register 1989-02-28 18:40:35 +00:00
ceriel ef6efdee12 simplified CFF somewhat 1989-02-24 14:58:21 +00:00
ceriel 587a8e8274 Added patterns and made some improvements 1989-02-24 14:09:46 +00:00
ceriel 80d87777f0 Added pattern for unlk after stack adjustment 1989-02-24 13:34:49 +00:00
ceriel c3408302c1 better rule for LOE LOF DUP ADP ... 1989-02-23 17:59:30 +00:00
ceriel c6a806ac4d generate better code for LOL ADP STL 1989-02-23 15:46:46 +00:00
ceriel b4e24c5bdd bug fix: some variables were not initialized all the time 1989-02-23 10:40:12 +00:00
ceriel 19c225f75f fixed error in previous commit 1989-02-22 17:38:07 +00:00
ceriel f2c241fe3a do not depend on SP for restoring registers 1989-02-22 17:18:34 +00:00
ceriel 4fd066bb54 many improvements to the table, mostly to make it more readable
and less chaotic. Also removed some dummy routines in mach.c
1989-02-22 16:13:51 +00:00
ceriel 3b61d605c1 fixed syntax error in table 1989-02-21 10:09:22 +00:00
ceriel 75c18ef56c changed entry points csa and csb; strscript should call m68020
instead of acc
1989-02-21 10:09:01 +00:00
ceriel 432cf9054d changed entry points for csa and csb 1989-02-21 10:05:03 +00:00
ceriel 37fd03b14b some fixes 1989-02-06 15:15:27 +00:00
ceriel 687d428026 move to address register does not set condition codes 1989-02-06 15:11:49 +00:00
ceriel eca0cde913 changed order of registers, so that d0 is allocated first 1989-02-06 14:35:10 +00:00
ceriel 9ea59fd48a corrected print formats 1989-02-02 16:32:19 +00:00
ceriel 3b76fbc284 bitwise operators available now 1989-02-02 16:15:54 +00:00
ceriel 821e1e624b Added header 1989-02-02 16:10:15 +00:00
ceriel 55705b22ca improved pattern 1989-02-02 16:04:18 +00:00
ceriel 8127265043 Added some patterns 1989-02-02 16:01:13 +00:00
ceriel 1daac3c5d1 made arg_error dependant on DEBUG 1989-02-02 12:49:21 +00:00
ceriel 039552a46c define CODE_EXPANDER 1989-01-27 12:41:43 +00:00
ceriel 817facac14 Added prefix C_ to the names prolog, jump, and locals 1989-01-26 14:04:11 +00:00
ceriel fa9d7ce5ce Added Makefile 1989-01-19 17:51:44 +00:00
ceriel 6ba5c0b850 Added patterns 1989-01-16 13:35:02 +00:00
ceriel 28c8abd52b fix to fix 1988-11-14 16:50:06 +00:00
ceriel 5c4164927d replaced some 'move's by the move instructions; Some were just wrong 1988-11-14 12:43:23 +00:00
ceriel 0bb9c9b5a5 removed extra DUP rule. It was wrong after all 1988-11-10 15:38:50 +00:00
ceriel 09cc81f5b5 Use the system module for error messages 1988-11-10 13:46:53 +00:00
ceriel f210ef4f8e fixed problem with DUP: it also dupped tokens with side-effects 1988-11-09 15:49:29 +00:00
ceriel f8a3f67ddb Added new line after trap message 1988-11-04 09:55:50 +00:00
ceriel ba1c1a82d7 patches to make more suitable for push-pop optim 1988-10-20 15:08:59 +00:00
ceriel dc5a744d8d some minor changes 1988-10-20 14:33:55 +00:00
ceriel 668b4ca6e7 many minor changes 1988-10-03 10:53:47 +00:00
ceriel b0c8f9748a some fixes to procude faster :-) code 1988-09-30 16:13:44 +00:00
ceriel 091f3dbebf Added floating point support 1988-09-14 14:06:31 +00:00
ceriel 3a183b7b44 replaced all ::= by ==> 1988-09-07 14:47:46 +00:00
ceriel a1684f6d0b Initial revision 1988-08-18 14:33:57 +00:00
ceriel e47418efff Use other version of div_ext 1988-08-10 10:00:30 +00:00
ceriel a28e8440b7 Use Pascal 1988-07-28 18:33:51 +00:00
ceriel 7515b51d64 Added installation of math lib 1988-07-22 18:51:02 +00:00
ceriel c29ac899da added -L flag 1988-07-13 18:32:06 +00:00
ceriel e64951e1d3 removed some lint complaints 1988-06-28 14:41:02 +00:00
ceriel 2f7e414d42 corrected lint entry 1988-06-28 14:36:21 +00:00
ceriel 3be40e8f15 removed some lint complaints 1988-06-28 13:55:25 +00:00
ceriel 59dbc95e0d made bittable dynamic 1988-06-16 13:46:38 +00:00
ceriel 16e657858a Some improvements 1988-06-15 13:15:41 +00:00
ceriel 9c6ef73ba3 Added target optimizer 1988-06-14 09:29:44 +00:00
ceriel 14233a4c03 Initial revision 1988-06-14 09:22:51 +00:00
ceriel 2722d45fdd larger bittable 1988-06-13 15:29:32 +00:00
ceriel 88acb4c4d9 be careful about overflow in con_float 1988-04-28 14:46:11 +00:00
ceriel 264773ee06 fixed bug in SIM and SIG 1988-04-25 17:05:36 +00:00
ceriel b68e30f6ff avoid use of modf; not portable 1988-04-22 14:11:55 +00:00
ceriel cd782a1488 corrected a syntax error 1988-04-20 15:28:26 +00:00
ceriel 06c28ad222 do not call frexp with 0.0; the SUN4 cannot stand it 1988-04-20 10:01:35 +00:00
ceriel 7971761628 generated illegal code; fixed 1988-04-14 16:03:55 +00:00
ceriel 155a1ba5c8 adapted to new semantics of the EHEAP error: no longer fatal 1988-04-11 11:37:54 +00:00
ceriel 6535d32447 Added libm2 1988-04-08 13:39:19 +00:00
ceriel 41bf233413 Added libfp 1988-04-07 12:26:29 +00:00
ceriel 4e2aea5cb0 Initial revision 1988-04-07 12:23:02 +00:00
ceriel 04cabf258d Initial revision 1988-04-06 14:24:36 +00:00
ceriel 4e419a19cd delinted 1988-03-31 10:38:05 +00:00
ceriel ea9e90d785 fixed for operand separators within operands 1988-03-14 15:58:07 +00:00
ceriel eb6a4a95cd deleted some patterns that were wrong, and apparently never used 1988-03-14 13:30:48 +00:00
ceriel a24c41e9cf fix in LXA 1988-03-11 16:34:22 +00:00
ceriel 83d7633503 a minor improvement 1988-02-17 15:41:27 +00:00
ceriel 85348f653d cas instruction was encoded wrong 1988-01-11 13:25:28 +00:00
ceriel e3501a00dc handle rounding of floating point constants 1987-11-25 16:58:31 +00:00
ceriel 028beaf5e6 corrected con_float 1987-11-06 13:12:21 +00:00
ceriel 80af6ce214 improved previous improvements 1987-11-03 16:17:37 +00:00
ceriel b236a708e2 improved the checking of sections 1987-11-03 16:09:55 +00:00
ceriel e2037c2e4b fixed some problems, and added floating point library 1987-11-03 15:35:43 +00:00
ceriel 72ab7b68b8 Added Xstat.c 1987-11-03 14:43:40 +00:00
ceriel ab5a0efd48 fixed some bugs 1987-11-02 14:23:38 +00:00
ceriel f7c479d40b fixed typo 1987-10-30 10:49:35 +00:00
ceriel e0c73d5195 Added fake floating point routines 1987-10-30 10:42:36 +00:00
ceriel 032e9ebda5 fixed some problems with 1 and 2 byte compares 1987-10-29 15:10:30 +00:00
ceriel 1ce6abf3de replaced printfs by fputs where possible 1987-09-08 09:00:29 +00:00
ceriel 8120857c5b disabled listing facilities 1987-09-08 08:59:03 +00:00
ceriel cbcde9a311 told ncg that jsr kills the scratch registers 1987-08-19 19:51:13 +00:00
ceriel 07a8c48171 fix in one of those tricky addressing modes 1987-08-14 00:15:49 +00:00
ceriel 538f21b781 some fixes to additions 1987-08-13 15:30:48 +00:00
ceriel 3d90e41a7f fixed a fix, which did not fix a bug after all 1987-08-13 10:18:25 +00:00
ceriel ab341e1c93 fixed EXG instruction 1987-08-12 18:37:20 +00:00
ceriel a6bf3e8892 yet another fix, this time to divu/divul/divs/divsl 1987-08-12 18:32:15 +00:00
ceriel 0ba64871f6 added many patterns 1987-08-12 16:19:02 +00:00
ceriel fe67243700 generate commons for bss 1987-08-06 15:11:09 +00:00
ceriel 3929b47776 deleted useless tst.b instruction 1987-07-20 14:31:46 +00:00
ceriel 2381b2e136 disabled assertions, fixed bug with pack/unpk 1987-07-16 09:44:44 +00:00
ceriel 69843cf9ce Added -DNDEBUG to Makefile, table now kills regvars 1987-07-06 15:28:59 +00:00