Commit graph

2034 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
ceriel a951391408 removed stop.s 1989-11-03 11:53:47 +00:00
ceriel bc565a13f1 updated to minix 1.3 1989-11-03 09:25:46 +00:00
ceriel d72e4424cd modified labels 1989-11-01 15:35:42 +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 da85a0fa2f Added code expander 1989-10-31 11:14:01 +00:00
ceriel 64c2ad3838 There is no d0 register! 1989-10-27 18:20:14 +00:00
ceriel c2f70c4857 andl3 does not exist! use bicl3 instead 1989-10-27 18:03:37 +00:00
ceriel f04baf2201 Added code expander 1989-10-27 09:06:43 +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 74546bd985 Added a command to kill a register 1989-10-26 15:41:38 +00:00
ceriel adc8fc6e9e Added _exit.c 1989-10-26 11:51:46 +00:00
ceriel acfb0f2eed Added _exit.c 1989-10-26 11:39:31 +00:00
ceriel 69d8dc3b44 use new version of con_float 1989-10-26 11:07:26 +00:00
ceriel a751b2ef42 Use Motorola byte order for floating point 1989-10-26 11:04:53 +00:00
ceriel 7f4a6b31a7 Use Intel byte order for floating point 1989-10-26 11:03:30 +00:00
ceriel cf855ea282 fixed so that jumps back to local labels also work 1989-10-26 11:01:44 +00:00
ceriel ed479cbb76 Do not call the .nop subroutine for a NOP (ANSI C modification) 1989-10-26 10:10:34 +00:00
ceriel 851a0c4501 Use Intel byte order for floating point 1989-10-26 09:52:41 +00:00
ceriel 3a8a4fc1df Use Motorola byte order for floating point 1989-10-26 09:49:32 +00:00
ceriel 3899b18911 Motorola byte ordering 1989-10-25 17:35:09 +00:00
ceriel d4d3e6b484 use 8087 byte order 1989-10-25 17:33:49 +00:00
ceriel a5b0790d96 Added CSA ==4 and CSB ==4 entries, needed for ANSI C 1989-10-25 17:21:52 +00:00
ceriel 13ea4896b0 changes for different byte orderings 1989-10-25 17:15:37 +00:00
ceriel 07f019213d Added csa4.s and csb4.s 1989-10-25 17:08:45 +00:00
ceriel 68a2852f57 fixed bug and changed con_float 1989-10-25 13:24:29 +00:00
ceriel 88a316478d adapted floating point package to handle IEEE format in different byte orders 1989-10-24 16:10:01 +00:00
ceriel b4e38b8fcd adapted to use 80387 floating point format 1989-10-24 16:00:37 +00:00
ceriel b5a1f8a3b3 define IEEEFLOAT 1989-10-24 15:08:27 +00:00
ceriel 8740dcc72e adapted to use 80387 floating point format 1989-10-24 15:00:09 +00:00
ceriel c5dcddd4fd adapted to also generate other byte-orders 1989-10-24 14:57:17 +00:00
ceriel 42940634dd Added ce directory 1989-10-24 09:30:32 +00:00
ceriel ead414d725 only give warning about relocation info if -u flag is not given 1989-10-23 10:51:46 +00:00
ceriel ba8482c5ab Added another pattern 1989-10-23 10:26:00 +00:00
ceriel 10dd78edbf Added patterns 1989-10-20 17:32:04 +00:00
ceriel 64b7d49c0a Added patterns 1989-10-20 14:36:26 +00:00
eck 78d3e500fb added CPP variable to Makefile 1989-10-20 11:05:00 +00:00
ceriel 95563ae3bc small improvement: added pattern for LDC -1 CMS 4 ZEQ/ZNE 1989-10-18 10:15:49 +00:00
ceriel 85da3bcac1 only give warning about unresolved references if -u option is not given 1989-10-16 14:52:03 +00:00
ceriel 7b969cc623 head_em.sun renamed to head_ext 1989-10-16 14:45:00 +00:00
ceriel 284bd607fd Added head_em.s for Sun floating point emulation 1989-10-13 14:35:50 +00:00
ceriel 9d08fc6678 use strindex() instead of index() 1989-10-12 11:16:43 +00:00
ceriel 19df56bc23 use EMHOME instead of ../../.. 1989-10-11 14:21:37 +00:00
ceriel ebcd62f7d2 bug fix in rounding for 4-byte floating point numbers 1989-10-11 13:34:05 +00:00
ceriel 9feb3f9254 Added i386 to .distr file 1989-10-10 14:20:45 +00:00
ceriel 48252cc673 initial version 1989-10-10 11:40:55 +00:00
ceriel 010bade227 many fixes, found by actually running the code 1989-10-10 11:38:18 +00:00
ceriel 9715c40c3f initial version 1989-10-10 11:01:01 +00:00
ceriel a96f33ef34 many fixes; got working afcc with this version 1989-10-10 10:58:30 +00:00
ceriel e713e6f8fe many fixes, found by actually running the code it produces 1989-10-10 10:54:20 +00:00
ceriel d25472bbfb many fixes; now passes the tests 1989-10-10 10:44:26 +00:00
ceriel 8f74dd7ae6 Initial revision 1989-10-10 10:38:39 +00:00
ceriel 7e0c59d59a some fixes 1989-10-09 14:15:51 +00:00
ceriel eb2a76270f corrected XOR problem, and ILOCAL does not exist for m68k4 1989-10-06 11:13:16 +00:00
ceriel 5d8db9045e fixed: removed an #endif 1989-10-04 11:06:18 +00:00
ceriel 463a0e7f40 use the con_float include file 1989-10-04 10:28:50 +00:00
ceriel 77259cd2f9 removed yet another eor.l error 1989-09-29 11:45:19 +00:00
ceriel 18439ffa3f exit from main instead of return 1989-08-22 11:46:56 +00:00
ceriel 360caa08bb use strindex instead of index 1989-08-21 17:03:05 +00:00
ceriel 4c0ea89fe0 use strindex instead of index 1989-08-21 16:56:15 +00:00
ceriel 319d9bcfe0 declaration of sprintf only if __STDC__ is not defined 1989-08-21 11:43:41 +00:00
ceriel 04dcaf5685 did not handle -0.0 right 1989-08-15 09:04:49 +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 8a096ffacb removed old comment 1989-08-09 16:38:12 +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 98f011552e improved rounding 1989-08-09 14:37:07 +00:00
ceriel c302ed167c much improved version 1989-08-01 16:40:28 +00:00
ceriel 2b2698c44c Added fp68881.s 1989-08-01 16:32:34 +00:00
ceriel 3ed9932864 removed #define for IEEEFORMAT; now, the floating point package always
uses this format
1989-07-31 15:15:41 +00:00
ceriel 37379d70ba some fixes: fif did loose too many bits; unnormalized form did not work 1989-07-31 15:10:54 +00:00
ceriel 338fb5fb30 use con_float routine 1989-07-31 15:10:36 +00:00
ceriel d12053873a adapted for changed floating point package 1989-07-31 14:54:53 +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 0ad83c648e fixed interface to fef routines 1989-07-31 14:43:51 +00:00
ceriel 1280176fb0 removed IEEEFORMAT #define, and define USE_DIVIDE for i386 1989-07-31 14:35:34 +00:00
ceriel 022b40d40c use new interface to fif and fef routines 1989-07-31 14:34:23 +00:00
ceriel fc9e01c8d8 removed IEEEFORMAT #define 1989-07-31 14:32:08 +00:00
ceriel 0ef99949bc use con_float file, and use new interface to fif and fef routines 1989-07-31 14:25:53 +00:00
ceriel ef8450fce9 use con_float file, and use new interface to fif and fef routines 1989-07-31 11:42:27 +00:00
ceriel 4759f1c9f9 use con_float file 1989-07-31 11:22:43 +00:00
ceriel 6f9afbf0d5 use IEEE format in floating point package 1989-07-25 15:50:29 +00:00
ceriel f7360f0fec many changes, to use IEEE format 1989-07-25 14:21:09 +00:00
ceriel c7be2d1a44 bug fix in NGI for longs 1989-07-24 10:40:21 +00:00
ceriel c8ca61ba6e con_float now uses the flt_arith module 1989-07-11 14:17:34 +00:00
ceriel 96916a7ab4 there is no longer a lib directory; it is replaced by ../libce 1989-07-11 11:34:51 +00:00
ceriel a7b5504034 new mechanism for floating point constants 1989-07-10 17:15:55 +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 00c4a00675 replaced some db.. instructions; they are wrong if the count register
contains a count > 65535
1989-07-07 15:11:35 +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 55da4da081 some fixes 1989-06-28 12:51:16 +00:00
ceriel 3aec06a088 Added ret.s 1989-06-28 12:40:22 +00:00
ceriel 7fadcacc26 fixed bug: the assembler suppressed a relocation record because it
thought it was RELPC. It was not
1989-06-27 16:26:02 +00:00
ceriel b005d26d3f removed the ACKFLOAT #define 1989-06-27 13:17:39 +00:00
ceriel 1ae39bf15b Added con_float, for floating point constants 1989-06-27 13:16:17 +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 eabc223bf0 generated stupid code for long unsigned comparison 1989-06-19 11:23:08 +00:00
ceriel 9953b58092 don't remove compiler generated labels when they are external 1989-06-19 11:19:22 +00:00
ceriel a9102764e6 Added ranlib line 1989-06-19 11:16:53 +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 7c26c21b87 fixed typo, which resulted in memory fault 1989-05-30 10:41:42 +00:00
ceriel 2f81a59738 removed printf.s, put in dia.s 1989-05-30 10:38:45 +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 ce81b47935 removed printf.s 1989-05-29 14:40:51 +00:00
ceriel 03d44703a2 bug fixes 1989-05-16 16:02:46 +00:00
ceriel f45eda8c23 call .sts instead of .sti for STS instruction 1989-05-16 15:44:49 +00:00
ceriel 57106471dc some fixes 1989-05-16 15:41:36 +00:00
ceriel 7531131416 fix: kills line for STI 1 with ADDR_LOCAL was wrong 1989-05-11 13:55:31 +00:00
ceriel 3c8a8f0349 fixes: you cannot do stack-references in EM replacements! 1989-05-11 11:25:16 +00:00
ceriel 5a9d09a854 some fixes 1989-05-11 10:57:34 +00:00
ceriel b7c7d50513 fixed typo 1989-05-11 10:43:37 +00:00
ceriel ff4f0602ff Added 'all' entry 1989-05-08 12:42:53 +00:00
ceriel bc1ab42895 some fixes 1989-05-01 18:32:24 +00:00
ceriel 6d9d69aebf take care of proper exit status 1989-04-14 18:33:56 +00:00
ceriel 50114318e2 fixed typo 1989-04-06 14:18:17 +00:00
ceriel 1b6fe5b9ed Added DUP pattern 1989-04-04 09:46:47 +00:00
ceriel c847bfb6c8 improved ASP patterns 1989-04-03 16:16:10 +00:00
ceriel f1c6de0f1f fix: initialize relocation records properly: some fields that are
not used on SunOs 3.5 are used on SunOs 4.0
1989-03-30 14:36:07 +00:00
ceriel 52d3ee55e2 Added ce and libce to .distr 1989-03-22 15:16:36 +00:00
ceriel eef9b6237b Initial revision 1989-03-22 15:06:05 +00:00
ceriel 3ecaa0b634 some fixes: fix order in which registers are allocated, make sure that
a pattern chosen by the distance routine can be made from the stack if the
fakestack does not contain enough tokens
1989-03-17 16:49:58 +00:00
ceriel 7ed597eefc Added tables1 files to .distr 1989-03-16 11:32:16 +00:00
ceriel c69004d5df Added pattern for BLS 4 1989-03-16 11:21:37 +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 bf62834959 commented out some code 1989-03-06 18:15:50 +00:00
ceriel 7e2d5f6065 commented out some code 1989-03-06 18:02:53 +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 a22bbe847f use calloc instead of malloc, to make sure block is initialized to 0 1989-03-01 10:00:37 +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 4c755666b8 fixed bug in Usage line 1989-02-24 14:53:49 +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 6f4bdccf04 removed prt_ext 1989-02-23 10:08:20 +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 13c2a9a2a5 changed interface to CSA and CSB 1989-02-22 17:18:17 +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 b37c8b0b24 improve signal handling of Floating Point Exception 1989-02-21 10:49:51 +00:00
ceriel 6beb10355e changed entry points csa and csb 1989-02-21 10:11:26 +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 a4178ca843 do not catch floating point exceptions anymore 1989-02-17 09:58:06 +00:00
ceriel 59ea3478ac Add include directory when compiling head 1989-02-16 09:40:52 +00:00
ceriel 4da1930ff4 Initial revision 1989-02-15 16:39:58 +00:00
ceriel 0c19cc22e0 fixed some incorrect kills 1989-02-15 11:39:13 +00:00
ceriel fcc033df20 Initial revision 1989-02-14 18:03:13 +00:00
ceriel 01626b2c32 Initial revision 1989-02-14 15:52:25 +00:00
ceriel d7ce393510 Adapted; Do not use /dev/tty 1989-02-09 15:55:33 +00:00
ceriel b11b5996c1 minor correction 1989-02-09 13:26:24 +00:00
ceriel d79ad333bf *** empty log message *** 1989-02-09 13:24:20 +00:00
ceriel dcde07e7a7 use pusha and popa instructions, and on the proper place 1989-02-08 15:47:22 +00:00
ceriel cd70a74d25 Added 1989-02-08 15:29:51 +00:00
ceriel e91749bbce Added 1989-02-08 15:19:42 +00:00
ceriel 143abc2420 Initial revision 1989-02-08 15:12:03 +00:00
ceriel f682c264a8 Initial revision 1989-02-08 14:57:48 +00:00
ceriel 7c22618cb8 make sure that every command ends up in the same directory where it started 1989-02-08 09:44:32 +00:00
ceriel be89699a1a fixed return value of signal 1989-02-08 09:29:27 +00:00
ceriel a13ea6d098 fix in IMUL, define DEBUG 1 1989-02-07 14:30:47 +00:00
ceriel 9dcae8fcd0 made arg_error dependent on DEBUG; fixed cmp instruction in as_table 1989-02-07 11:42:28 +00:00
ceriel fa6900fbbc made back.a dependent on some C files in this directory 1989-02-07 11:32:47 +00:00
ceriel f3584b3d52 made back.a dependent on some C files in this directory 1989-02-07 11:12:13 +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 76684055eb some simplifications and a bug fix 1989-02-03 16:32:07 +00:00
ceriel 9ea59fd48a corrected print formats 1989-02-02 16:32:19 +00:00
ceriel 920ba0eebe delinted somewhat 1989-02-02 16:31:51 +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 f7df668450 delinted, added chstack.c 1989-02-02 13:24:50 +00:00
ceriel 1daac3c5d1 made arg_error dependant on DEBUG 1989-02-02 12:49:21 +00:00
ceriel 0291c897be hidden names, made arg_error dependant on DEBUG 1989-02-02 12:29:14 +00:00
ceriel bf6a1eb0ba removed unused code 1989-02-02 12:27:33 +00:00
ceriel 542eb9a7d8 made arg_error dependant on a DEBUG constant, improved Makefile 1989-02-02 11:45:50 +00:00
ceriel 45a94c9858 made arg_error dependant on a DEBUG constant 1989-02-02 11:42:53 +00:00
ceriel df69d70608 Changed some names 1989-01-27 14:15:55 +00:00
ceriel 8811a2af14 Makefile added 1989-01-27 13:22:55 +00:00
ceriel d87e8f72a9 Makefile added 1989-01-27 13:10:44 +00:00
ceriel 7bcd261f8e minor mods 1989-01-27 13:09:37 +00:00
ceriel 039552a46c define CODE_EXPANDER 1989-01-27 12:41:43 +00:00
ceriel c9df20878f improved Makefile 1989-01-27 12:02:55 +00:00
ceriel 817facac14 Added prefix C_ to the names prolog, jump, and locals 1989-01-26 14:04:11 +00:00
ceriel 3a546eb8dd be a bit more liberal with prefixes 1989-01-24 13:51:05 +00:00
ceriel fa9d7ce5ce Added Makefile 1989-01-19 17:51:44 +00:00
ceriel c951295521 Initial revision 1989-01-19 16:43:32 +00:00
ceriel b45706ce7a delinted a little 1989-01-19 16:41:55 +00:00
ceriel 57dfee488a Added .distr 1989-01-19 16:26:18 +00:00
ceriel 6833adfb50 Initial revision 1989-01-19 16:20:46 +00:00
ceriel 4c76583aba simplified assertion 1989-01-19 13:48:09 +00:00
ceriel b83fca4445 use STS and LOS routines 1989-01-19 09:16:15 +00:00
ceriel 6420525753 Added STS and LOS routines 1989-01-18 10:51:57 +00:00
ceriel 7c39967dc5 use STS and LOS routine 1989-01-18 10:51:06 +00:00
ceriel 406d024e9f change to keep lint happy 1989-01-17 11:23:33 +00:00
ceriel ed34e06d2d Added floating point, fixed LPB 1989-01-17 11:05:02 +00:00
ceriel 9c5f0e8159 changes to hide names and some fixes 1989-01-17 10:27:55 +00:00
ceriel b800af87af changes to hide names and some fixes 1989-01-17 09:48:32 +00:00
ceriel 56c0f3bc5b many improvements 1989-01-16 16:10:32 +00:00
ceriel 6ba5c0b850 Added patterns 1989-01-16 13:35:02 +00:00
ceriel 46f633870d fixes and improvements 1988-12-14 15:33:20 +00:00
ceriel 3d6ab89bc1 fix from Lindsey 1988-11-24 09:23:51 +00:00
ceriel e43a0746a8 some more improvements and a fix 1988-11-21 16:55:16 +00:00
ceriel fec83f1be3 many improvements 1988-11-21 15:04:23 +00:00
ceriel 7f77ee091c Added some new patterns 1988-11-15 10:54:37 +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 d6dfd5d1ad fixed to generate only external commons 1988-11-10 13:01:15 +00:00
ceriel f210ef4f8e fixed problem with DUP: it also dupped tokens with side-effects 1988-11-09 15:49:29 +00:00
ceriel 11dee74e80 Initial revision 1988-11-08 14:09:24 +00:00
ceriel 246554a0b1 changes in search for more speed 1988-11-08 13:47:18 +00:00
ceriel 15e885ac8d produce better code for EXG 1988-11-07 09:35:47 +00:00
ceriel af5ed82bff included changes from Andy Michael 1988-11-07 09:24:36 +00:00
ceriel f8a3f67ddb Added new line after trap message 1988-11-04 09:55:50 +00:00
ceriel 0011c49d1e many changes, in search for more speed 1988-10-31 15:02:39 +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 e0fc646222 Many changes:
- added floating point
- improved assembler part, now uses short encodings when possible
- reduced generated relocation - and name table
1988-10-20 14:21:37 +00:00
ceriel 10e2f5cb36 Added vars.s 1988-10-17 12:55:24 +00:00
ceriel 8b6ba39da4 made a bit more portable 1988-10-17 10:38:30 +00:00
ceriel d096f1882a improved version, generating .o files with much less relocation records
and name table entries
1988-10-13 15:53:31 +00:00
ceriel f397d35b6a many changes: optimize generated code somewhat,
reduce relocation-table size
1988-10-07 16:52:44 +00:00
ceriel 366b492174 Initial revision 1988-10-04 14:27:35 +00:00