Commit graph

1784 commits

Author SHA1 Message Date
ceriel f78e573b69 fixed labeldefs so that registers are killed 1990-10-29 16:39:39 +00:00
ceriel 32f21c2bfa changed 'uses REG=%1' behaviour: if no REG containing %1 is found, an
attempt is made to find an empty one
1990-10-26 18:18:53 +00:00
eck 54cc752a9e fixed bugs with ext_[wl] arguments, changed reusage of registers 1990-10-26 16:52:43 +00:00
eck c33f7cbe76 changed homefromsubdir a little 1990-10-16 10:07:12 +00:00
ceriel 7be2815cbc fix to fit? macros 1990-10-15 13:59:55 +00:00
ceriel 06e6c8638f fix: addr_t must be long 1990-10-05 16:31:55 +00:00
eck 6f6dff3461 forgot to add homefromsubdir to .distr 1990-10-01 17:12:54 +00:00
eck 14133b5e2f added _sigvec.s and changed call of sigvec() in signal.c 1990-09-28 17:13:40 +00:00
ceriel 7fbfa4360c Added _sigvec and _syscall 1990-09-28 17:12:33 +00:00
eck e91e983728 changed _end to __end because of namespace pollution 1990-09-28 15:35:16 +00:00
eck 30922a239d changed some names because of namespace pollution 1990-09-28 15:19:06 +00:00
eck 63e1c0e44a changed some names because of namespace pollution 1990-09-28 13:47:47 +00:00
eck 4001fbb580 changed makefile, added homefromsubdir 1990-09-28 13:13:34 +00:00
eck bb85ecc4f0 changed some names because of namespace pollution 1990-09-28 13:08:07 +00:00
eck 74edeea849 changed end_em to avoid namespace pollution 1990-09-28 09:47:50 +00:00
eck cd8e8e5aef completed Makefile entries 1990-09-28 09:47:40 +00:00
eck a50ec18466 some minor fixes 1990-09-28 09:29:51 +00:00
eck 03a65131fc forgot homefromsubdir in .distr 1990-09-27 16:56:10 +00:00
eck 851b82ee09 added head_ac 1990-09-27 16:37:22 +00:00
eck 56502994f4 changed end_em to library to avoid namespace pollution 1990-09-27 14:29:09 +00:00
ceriel 1ade1b814d Added patterns 1990-09-25 15:12:26 +00:00
ceriel 4c8596ee05 Fix: cmp.l A,A is not the same as tst.l A 1990-09-25 14:59:28 +00:00
ceriel e3bb56818b fix INS and INSB 1990-09-21 14:24:03 +00:00
eck 7488a2fbba added cv to .distr 1990-09-21 12:53:58 +00:00
ceriel d800aaf11a Added .distr 1990-09-20 16:18:57 +00:00
ceriel 094c19f350 Added JC and JNC (aliases for JB and JNB) 1990-09-20 14:18:52 +00:00
eck 641a446f01 Added ANSI-C library 1990-09-18 15:02:27 +00:00
eck 6f1d9fbf70 forgot to update Action 1990-09-18 14:59:50 +00:00
eck d1050c2382 improved makefile 1990-09-18 14:56:52 +00:00
eck a0f46ee7a6 Initial revision 1990-09-18 14:42:32 +00:00
eck 5571e06719 added libcc.ansi to .distr 1990-09-18 14:37:29 +00:00
eck 9eefd96eb1 deleted unnecessary label 1990-09-14 16:37:30 +00:00
eck bd4bc1cad0 replaced some move's by move_i's 1990-09-14 14:30:07 +00:00
ceriel 4a4153bb8b Added Xcv.c 1990-09-05 11:54:11 +00:00
eck 5badcb4296 changed stackheight computation to top element size computation 1990-09-04 17:16:00 +00:00
eck ee652e6908 changed stacheight to topeltsize 1990-09-04 17:13:37 +00:00
ceriel 2f83a7e3d9 fix: also kill condition codes if they are set to a register that is to be killed 1990-09-03 11:12:44 +00:00
ceriel 67f0419dc3 Additions for debugger information 1990-09-03 11:07:22 +00:00
ceriel b2ca3783c4 keep the names .csa and .csb for backwards compatibility 1990-09-03 10:25:57 +00:00
eck bee5d97eac fixed some bugs in new pattern 1990-08-28 15:01:17 +00:00
eck dc500c3463 fixed some strange constructions 1990-08-24 16:20:57 +00:00
ceriel 97d1275cfe changed 'enter' into 'entry' (80286) 1990-08-23 09:30:56 +00:00
eck 0bf7d60080 several improvements + fixes 1990-08-22 16:26:21 +00:00
eck ba475d78a2 added optional .w to OP_EA_D 1990-08-21 10:59:09 +00:00
eck 797f90a022 changed interface for cs[ab] 1990-08-21 10:17:49 +00:00
ceriel e2ce4995e6 Initial revision 1990-08-20 15:07:38 +00:00
ceriel 78681448e4 new table (merged with m68k2) 1990-08-20 15:00:15 +00:00
eck b4a2b975a0 added m68k2 stuff, added patterns 1990-08-20 13:55:38 +00:00
eck 535e64328a added _sigsetmask.s 1990-08-09 15:40:08 +00:00
eck fd921229f2 added _sigsetmask.s 1990-08-09 15:29:51 +00:00
eck 17158641e0 fixed error in .trp: it could generate a bus error 1990-08-03 16:16:28 +00:00
ceriel e0ff37aa6e support for long strings 1990-08-01 14:30:45 +00:00
ceriel 6d675af42c removed limit on string size 1990-07-30 15:40:08 +00:00
ceriel 05db577e01 some fixes 1990-07-30 14:52:58 +00:00
ceriel 5c0938d05b Added some more support for debugger 1990-07-30 09:43:45 +00:00
eck c615803fa6 changed names of csa and csb to csa4 and csb4 1990-07-25 11:46:27 +00:00
eck 7ef2d1bc37 switch to text segment when generating a label 1990-07-20 14:02:35 +00:00
eck b23125354b added patterns for stackheight mechanism 1990-07-19 17:22:56 +00:00
eck 4ef2c70ed3 added stackheight message handling 1990-07-18 14:53:19 +00:00
ceriel 30824d6133 replaced call of non-existing Dvu to a call to Duv 1990-07-18 09:11:33 +00:00
ceriel fbe4a79045 check result of array address calculation 1990-07-04 14:24:55 +00:00
ceriel 5512f14697 use new con_float 1990-06-29 11:05:19 +00:00
ceriel 56858bb480 bug fix: wrong procedure was called 1990-06-27 09:29:55 +00:00
ceriel 736108572f produce commons, fix bug with mov-extend instructions 1990-06-25 15:48:49 +00:00
ceriel b972fea237 produce commons for bss 1990-06-25 13:42:02 +00:00
ceriel 97e131bc81 Added bsbb and bsbw 1990-06-19 15:27:43 +00:00
ceriel 9de0c3d920 fixed optimizations that were wrong with indexed mode 1990-06-19 15:15:37 +00:00
ceriel a8f5884144 cg no longer part of distribution 1990-06-14 16:52:04 +00:00
ceriel ddd97f9328 Added new patterns 1990-06-14 16:45:33 +00:00
ceriel 9eaa440fab removed DEBUG #define 1990-05-31 13:33:31 +00:00
ceriel da8f9124ff compares with 0 were wrong 1990-05-18 13:22:13 +00:00
ceriel 74147d2b4a ignore NOP 1990-05-17 19:40:15 +00:00
ceriel b04388a326 fixed some patterns: operand could have side effects 1990-05-08 09:03:28 +00:00
ceriel f2b4713c24 cast ptrdiff_t to int for ANSI 1990-04-25 14:23:05 +00:00
ceriel ed81d83f4c use .limhp 1990-04-23 13:39:26 +00:00
ceriel f95fae24fc moved a coercion 1990-04-23 13:38:19 +00:00
ceriel 2b488e1021 INS instruction fix 1990-04-23 13:33:26 +00:00
ceriel fb25b628d6 yet another bug fix in instructions handling special registers 1990-04-23 12:35:41 +00:00
eck e625c3bdb8 added wait-statements for floating-point library 1990-04-17 13:57:23 +00:00
eck 90963fd585 added csa4 and csb4 1990-04-12 11:35:10 +00:00
eck f1351720e5 added csa4 and csb4 1990-04-12 11:29:49 +00:00
ceriel f0c0b894f2 corrected SDF patterns 1990-04-04 15:06:32 +00:00
ceriel 16ef0467a8 Fixed wrong assertion, and fixed bug in distance routine: it did not check
that each stackpattern token that does not exactly match can be made from the
stack
1990-04-04 14:52:29 +00:00
ceriel fd80d596df produced incorrect 'pure' objects 1990-03-29 09:46:14 +00:00
ceriel 3553a28b78 fix: still sometimes assumed that a move to address register sets condition codes 1990-03-26 14:47:26 +00:00
ceriel 863824de01 fixed bug in conversion from float/double to unsigned 1990-03-26 14:16:59 +00:00
ceriel f99d67e76e minor improvement: LDC CMS T?? does not need STACK in stack pattern 1990-03-20 15:49:04 +00:00
ceriel 353d22ea90 LDC CMS TNE was wrong 1990-03-20 15:01:25 +00:00
ceriel 71156a48ae Fixed 16-bit address mode bugs 1990-03-19 14:46:55 +00:00
ceriel 2c7496a525 Added 16-bit mode 1990-03-12 16:24:58 +00:00
ceriel 6e0c2ad593 Added arpl instruction 1990-03-09 11:07:43 +00:00
ceriel 2236ff6d6a Fix: some patterns were never found due to wrong condition 1990-02-28 12:10:49 +00:00
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 95632b0fef Oops in assertion: MAXPROCARG instead of MAXPROCARGS 1990-02-23 17:05:04 +00:00
ceriel 551b10f3a6 fixed for 2-byte machines 1990-02-23 17:00:59 +00:00
ceriel 0ec452930f print pointer as hex 1990-02-23 16:58:34 +00:00
ceriel 972d39139d Added some patterns for shifts with constant shift count 1990-02-19 16:38:35 +00:00
ceriel 8bfbe723db bug fix: far calls+jumps with address prefix were wrong 1990-02-19 09:06:16 +00:00
ceriel 2293458101 corrected: _fstat is in _Xstat.c 1990-02-13 09:20:50 +00:00
ceriel 3f950c9f17 Added a new operator for ncg: is_rom() 1990-02-09 16:34:17 +00:00
ceriel 541279bd1e Changed an #ifdef NOTDEF to #if 0 1990-02-09 15:03:17 +00:00
ceriel 8a8bb6cf10 removed wrong pattern 1990-02-09 10:41:58 +00:00
eck b40425786c added 80286 instructions 1990-02-02 16:28:06 +00:00
ceriel 0c5cce9a96 max filename length too short in error messages 1990-01-31 16:27:05 +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 9b1f6614f6 some optimizations were not protected by calls to small() 1990-01-24 12:37:33 +00:00
ceriel 94b3467079 improved Makefile 1990-01-23 13:16:47 +00:00
ceriel 76cd1e34ca fixed: did not compile 1990-01-23 12:06:05 +00:00
ceriel 7cb9955f82 corrected 1990-01-22 17:07:11 +00:00
ceriel 0710269e32 corrected 1990-01-22 16:48:13 +00:00
ceriel a42999afab Added strhp.s 1990-01-22 16:25:52 +00:00
ceriel 36dbf24131 adapted so that _brk routine may update .limhp 1990-01-22 15:38:46 +00:00
ceriel 4c7f63ee6c adapted so that _brk routine may update .limhp 1990-01-22 15:32:44 +00:00
ceriel 2782e386f9 No chmk; use the system call library 1990-01-22 15:28:45 +00:00
ceriel 8850b696ab brk routine updates .limhp 1990-01-22 15:05:10 +00:00
ceriel 7e34a42088 Use .limhp 1990-01-22 15:03:13 +00:00
ceriel ea891cfb3c Added .limhp 1990-01-22 14:57:58 +00:00
ceriel 9ecf2ad8f8 Use .limhp 1990-01-22 14:39:47 +00:00
ceriel 13ce9b12ac Added .limhp (for later use?) 1990-01-22 14:34:58 +00:00
ceriel f815a342e7 Use .limhp 1990-01-22 14:25:10 +00:00
ceriel 9f0c356194 Added entry points for ANSI C 1990-01-22 14:15:55 +00:00
ceriel 5241920b3c Use .limhp 1990-01-22 14:14:38 +00:00
ceriel 786665c582 Use .limhp 1990-01-22 14:08:16 +00:00
ceriel ee026dd2ab Added entry points for ANSI C 1990-01-22 13:59:43 +00:00
ceriel 73bfa1d1ab Use .limhp 1990-01-22 13:58:54 +00:00
ceriel bf95ea8fd9 Added entry points for ANSI C 1990-01-22 13:41:58 +00:00
ceriel 1fdf2d2e19 Added entry points for ANSI C 1990-01-22 13:09:29 +00:00
eck a940c44ae5 added new routines for ansi 1990-01-22 11:56:01 +00:00
ceriel c6d87355db Added entry points for ANSI C 1990-01-22 11:24:37 +00:00
eck 68e198f375 added new routines for ansi 1990-01-22 11:14:56 +00:00
ceriel 67f0c95888 Added entry points for ANSI C 1990-01-22 11:01:47 +00:00
eck 69e2ddcb49 added new routines for ansi 1990-01-22 10:54:12 +00:00
eck 0614d593dd forgot _dup() & _creat() 1990-01-22 10:34:50 +00:00
eck aee0dc7377 forgot _dup() 1990-01-22 10:28:09 +00:00
ceriel 666c527a43 Added some more entry points for ANSI C 1990-01-22 10:20:09 +00:00
eck 55fab905c1 forgot _creat() 1990-01-22 09:28:35 +00:00
eck 9ee0876c2b added new routines for ansi 1990-01-22 08:51:54 +00:00
ceriel 66327ddda6 Added entry points for ANSI C 1990-01-19 17:37:29 +00:00
ceriel 9eff28dac8 Added entry points for ANSI C 1990-01-19 17:22:11 +00:00
eck 8c0b75b068 forgot _execve() 1990-01-19 17:15:47 +00:00
ceriel b2ce4472b5 Added entry points for ANSI C 1990-01-19 17:05:29 +00:00
eck 5c228063bc forgot _sbrk(), _fstat(), _times() 1990-01-19 16:25:54 +00:00
ceriel b6038dab22 Added entry points for ANSI C 1990-01-19 16:22:03 +00:00
ceriel 89b736ba83 Added mechanism to warn correctly about conflicts 1990-01-19 16:05:44 +00:00
ceriel 0939a12a70 Added entry points for ANSI C 1990-01-19 16:03:46 +00:00
eck 86b0d0bc80 added new routines for ansi 1990-01-19 15:17:33 +00:00
ceriel 7913b6800a simplified a bit, and documented better 1990-01-17 16:05:00 +00:00
ceriel 018558cb9e fixed prvious change 1990-01-15 12:42:57 +00:00
ceriel 2138609918 do not remove targets for install or cmp 1990-01-15 11:47:10 +00:00
ceriel dd22ea4caf fixed bug in translation of BR instruction 1990-01-15 11:44:43 +00:00
ceriel 54cb64aef2 Adapted for use of the ACK VAX assembler 1990-01-12 17:58:12 +00:00
ceriel 0ce4d37e54 Adapted for use of ACK VAX assembler 1990-01-12 17:05:42 +00:00
ceriel 7babff444a some more fixes 1990-01-12 17:02:31 +00:00
ceriel 027b33d313 VAX a.out to ACK a.out conversion program, first version 1990-01-12 16:58:02 +00:00
ceriel 57dfc84ee7 ACK VAX assembler, first version 1990-01-12 16:55:50 +00:00
ceriel 0004fd81ed fixed again 1990-01-12 15:41:59 +00:00
ceriel cb25b013fb fixed for 0 argument 1990-01-12 15:34:21 +00:00
ceriel 558a632821 errno in .bss 1990-01-12 14:13:39 +00:00
ceriel e2732629bf Fix for PDPFLOAT format 1990-01-12 11:52:51 +00:00
ceriel 6dac59f2d4 some more changes to use VAX assembler 1990-01-12 10:29:26 +00:00
ceriel c9312a41da make labels disappear 1990-01-12 10:11:44 +00:00
ceriel 5521ebb35a Adapted for use of ACK VAX assembler 1990-01-11 16:44:19 +00:00
ceriel 7fed954836 use LABEL_STARTER 1990-01-11 16:33:53 +00:00
ceriel 15d1e95d31 Adapted for use of ACK VAX assembler 1990-01-11 16:10:13 +00:00
ceriel de564c09b2 Adapted for use of ACK VAX assembler 1990-01-11 16:00:19 +00:00
ceriel 776f85238f bug fix: cannot optimize IMUL 1990-01-10 11:23:45 +00:00
eck a8f0aa6016 various fixes to makefile 1990-01-03 16:42:36 +00:00
eck 02d396c33a forgot .distr 1989-12-19 15:46:39 +00:00
eck 68a72d2ceb Initial revision 1989-12-19 15:45:15 +00:00
ceriel a5f05e8ba0 changed character comparisons with NULL 1989-12-13 09:19:47 +00:00
ceriel a022b9490c LOE INE used address register; it is probably better to use a general register 1989-11-30 10:07:49 +00:00
ceriel 75cab1f389 Added a move 1989-11-29 12:47:23 +00:00
ceriel cd64ce0424 rounding for un-normalized numbers was wrong 1989-11-29 09:56:59 +00:00
ceriel 79b0bb3347 do not declare sprintf. On some systems it is an int, on others it is
a char *
1989-11-29 09:55:03 +00:00
ceriel 0e2861d8b0 Added 80[23]87 support 1989-11-29 09:49:35 +00:00
ceriel 2465ad8ed8 fixed bug: sometimes destroyed contents of register variable 1989-11-28 14:42:56 +00:00
ceriel 55a133aa3c fef did not work properly for negative args 1989-11-28 12:51:35 +00:00
ceriel b91af798bc fixed rounding on ties to round to even, and fixed extend bug (test for 0
was wrong)
1989-11-27 16:26:02 +00:00
ceriel 1758da9285 Added fp8087.s 1989-11-27 16:19:16 +00:00
ceriel 61c646a496 Added 8087 support 1989-11-27 16:19:15 +00:00
ceriel 5ffd738802 cleaned up a bit 1989-11-21 15:44:29 +00:00
ceriel 6a19ee76cc removed some superfluous instructions 1989-11-21 15:42:56 +00:00
ceriel 43e04499d0 changed label formats 1989-11-21 15:40:24 +00:00
ceriel 295c8d2515 a fix to ZER ? and simplified ZRL, ZRE 1989-11-21 11:38:08 +00:00
ceriel a46596cbba new object module makes buffering superfluous 1989-11-17 16:50:59 +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 c5ee3b6735 Added patterns 1989-11-09 18:43:02 +00:00
ceriel 95fc55f840 fix: did not work for 4-byte floats 1989-11-09 17:01:29 +00:00
ceriel d9d6cc127f Allow more procedure parameters 1989-11-09 11:04:18 +00:00
ceriel 339f9dd942 fixed bug in EM replacement code, and use new #defines from tables.h 1989-11-08 17:13:33 +00:00
ceriel 636c151d51 fix: printed wrong message; now dumps core at end 1989-11-08 14:42:09 +00:00
ceriel 9dcaf4ecdc improved checking 1989-11-08 12:30:55 +00:00
ceriel f3250e5db5 fixed: commited wrong version 1989-11-08 11:22:50 +00:00
ceriel 1546ac1235 fixed: send ended up in data segment! 1989-11-06 11:35:52 +00:00
ceriel 6d39055193 use fwrite instead of write 1989-11-03 18:32:32 +00:00
ceriel 1158018fdf Added some patterns 1989-11-03 13:28:37 +00:00
ceriel 0928518b8d Added a nicer trap handler 1989-11-03 11:54:41 +00:00