Commit graph

204 commits

Author SHA1 Message Date
ceriel 9d48a61694 improved i86 description 1988-07-18 17:10:43 +00:00
ceriel 83a22b318c handle SLU like SLI 1988-06-22 11:31:45 +00:00
ceriel dd690a1065 a minor fix 1988-06-22 10:56:04 +00:00
ceriel 627d2060cd Added some code to reduce SLI, then decided against it 1988-06-22 10:41:52 +00:00
ceriel f892470f88 when checking for array computations with SLI, also check at the ADS! 1988-06-21 16:49:52 +00:00
ceriel d25a84511c corrected 1988-06-21 16:20:59 +00:00
ceriel e8f4e47da5 better info for SLI 1988-06-21 16:10:19 +00:00
ceriel 7f5c3ac4f6 made reading of list from description file a bit more general 1988-06-21 15:31:51 +00:00
ceriel 46c8b743f2 run peephole optimizer after inline substitution 1988-06-21 15:20:49 +00:00
ceriel 860230a837 lay-out fix 1988-06-21 15:20:01 +00:00
ceriel dea600f9bf Added option to indicate that whole program is offered 1988-06-16 09:41:51 +00:00
ceriel 35d8ec11fa be a bit more optimistic about gain for pointer registers 1988-06-15 15:28:10 +00:00
ceriel de0048e96b don't throw away external procedures 1988-06-10 15:39:05 +00:00
ceriel e8d1bdb192 make to work with modified installation script 1988-04-29 09:12:29 +00:00
ceriel 7fbb57dea4 clean entry should not throw away distributed files 1988-04-27 10:57:37 +00:00
ceriel b90cc5ceb9 make it more K&R C 1988-01-13 11:06:06 +00:00
ceriel 31b2f7d9e0 take care of GTO 1987-10-02 12:53:04 +00:00
ceriel 102a2b1061 don't optimize when ms_gto 1987-10-02 12:52:29 +00:00
ceriel 1ac5d9c95a Handle GTO, LOR/STR 0 also use local base 1987-10-02 12:43:54 +00:00
ceriel d2006b19af do not replace LAR/SAR by AAR LOI/STI, when the descriptor is not available 1987-10-02 10:48:38 +00:00
ceriel c0dd8055c2 make variables that are assigned to alive, at least for a short while 1987-10-02 10:41:13 +00:00
ceriel 7f400e5073 print identifier name when multiple declared 1987-10-02 09:55:16 +00:00
ceriel 6cdc7b47cf OUTTRACE was doubly defined 1987-08-06 14:29:16 +00:00
ceriel 040495ff56 fixed another bug with header blocks, and modified to use existing header
block when possible
1987-08-05 09:46:38 +00:00
ceriel 159b84ef68 bug fixes: put header block at end of procedure 1987-08-04 14:13:24 +00:00
ceriel 0e9f072917 yet another fix: outoperand must do nothing with ps_end 1987-07-30 08:59:40 +00:00
ceriel 3b0057625d did not handle HOL names right (null names) 1987-07-29 10:43:43 +00:00
ceriel 3cd5074594 fix: did not handle externals with big HOL offsets right 1987-07-29 10:39:02 +00:00
ceriel 7bb843eb0f fixed a bug in a name-changing routine 1987-06-29 14:41:23 +00:00
ceriel 81b1d21c35 Initial revision 1987-04-13 10:32:47 +00:00
ceriel aad62add90 Bug fix: a character was compared to op_lab, which is >= 128. 1987-04-03 16:48:53 +00:00
ceriel 4fd846804a Seemed to prefer reg_any registers, which caused addresses of procedures
to end up in data registers on the m68020. This is temporarily fixed,
but actually, the descriptor files could be somewhat more general.
1987-04-03 15:38:52 +00:00
ceriel e8bc890c10 improved somewhat 1987-04-03 15:06:25 +00:00
ceriel 3e694c1b9d made names of dynamically varying length 1987-03-25 16:24:41 +00:00
ceriel 032929c22c changed IDL 1987-03-25 10:53:47 +00:00
ceriel a6b6375985 Don't switch on longs! 1987-03-17 11:12:09 +00:00
ceriel d52e25949a Indirect function calls should be just that! 1987-03-16 15:14:52 +00:00
ceriel 96fd613e89 Added a "distr" entry 1987-03-11 09:49:33 +00:00
ceriel 6eaf182cee Added Rcs Id 1987-03-10 11:49:39 +00:00
ceriel a0eea34497 Added copyright notice 1987-03-09 22:06:21 +00:00
ceriel 815166e421 Added copyright notice 1987-03-09 19:15:41 +00:00
ceriel bb787ae7cb Added exit from main 1987-03-09 13:22:45 +00:00
ceriel 1583b4191a Added an exit from main 1987-03-09 13:14:32 +00:00
ceriel a3426ca0e2 *** empty log message *** 1987-03-04 16:43:03 +00:00
ceriel bc1fb58cd6 SHARE --> SHR 1987-03-02 12:42:38 +00:00
ceriel 3baea33f46 *** empty log message *** 1987-02-23 19:18:57 +00:00
ceriel d640f098b9 updated to current situation 1987-02-23 19:15:33 +00:00
ceriel 75cfdc06c6 Initial revision 1987-02-23 19:14:34 +00:00
ceriel 522039cb60 replaced a %D 1987-02-09 17:31:25 +00:00
ceriel 17ddf81681 replaced some %D's 1987-02-09 17:28:22 +00:00
ceriel e6f18b2838 Initial revision 1987-01-13 11:31:24 +00:00
ceriel 630e5d8082 Initial revision 1987-01-13 11:01:26 +00:00
ceriel 6d499785be Initial revision 1987-01-13 10:53:33 +00:00
ceriel 424337507d Added standard entries 1987-01-13 10:43:12 +00:00
ceriel 876369b2f1 Added standard entries 1987-01-13 10:30:06 +00:00
ceriel 692d3702a1 Added "standard" entries 1987-01-13 10:08:47 +00:00
ceriel 3cb30fa873 Added a "clean" entry. 1987-01-13 10:07:25 +00:00
ceriel 673b1d79e2 Initial revision 1987-01-13 10:01:07 +00:00
ceriel 28b3286e21 Added "standard" entries install, cmp, opr 1987-01-13 09:56:17 +00:00
bal b48d45c38d increased STACK_DEPTH from 50 to 250 1986-02-10 11:04:33 +00:00
bal 8668e313f8 bug fixed: same problem as in r1.3, now with csb.
Solution: only do block fusion if first block end on bra.
1985-09-19 11:14:55 +00:00
bal a18c5dd9c4 bug fixed: last instruction of first block in block fusion optimization
can be a conditional branch. (bug detected by Ceriel).
1985-09-18 16:27:29 +00:00
bal 53f6b51cde sprintf does not return pointer to string so the assert(s==string) does
not make any sense.
1985-09-06 11:39:06 +00:00
bal 6a4d9703cc exit(0) added (trouble with make) 1985-09-06 11:38:00 +00:00
bal c478b62711 bug fixed in kill_much():
for ( .. ; i != (Lindex) i; ..  ) should be
for ( .. ; i != (Lindex) 0; ..  ).
1985-02-28 10:35:57 +00:00
bal d5098fe70f Bug fixed: co_lfirst received wrong value for multiply-optimization. 1985-02-25 14:03:09 +00:00
bal 469d075e77 Calls of which the actual and formal parameters do not match
are no longer substituted inline.
1985-02-20 15:01:02 +00:00
bal 7397122695 p_use->u_ext field deleted from showptable() 1985-02-19 11:16:11 +00:00
bal abcbc93b5d Dependencies for .m files added. 1985-02-19 11:13:13 +00:00
bal 66ab97d2b0 bug fixed: lifetime of an item was too short; it should also cover
any live/dead message prior to its initial live-message.
1985-02-18 15:14:22 +00:00
bal a1c2dadb2a Compare group (cmp,cmi,cmu,cms,cmf) added as cheap operators. 1985-02-15 13:18:57 +00:00
bal e704ddc158 restructured. 1985-02-11 10:52:49 +00:00
bal f7699474b8 The binaries of the phases of ego are now put in a single directory. 1985-02-11 10:07:47 +00:00
bal 6909adbf9c Macros newcflpx and oldcflpx added. 1985-02-11 09:52:11 +00:00
bal 156775643e Include files and declaration of em_flag added. 1985-02-11 09:51:02 +00:00
bal d41c902b12 Memory allocation/deallocation for extends changed. 1985-02-11 09:48:32 +00:00
bal b99ce86e16 register save costs changed: they are now linearly dependent on
the number of registers to be saved (for time).
1985-01-30 15:43:02 +00:00
bal bec394f7bd Entry for LOI changed from CLASS1 to CLASS12. 1985-01-30 14:49:03 +00:00
bal db19d06f61 CLASS12 added for the LOI instruction. A "LOI n", n < wordsize,
loads wordsize bytes, not n bytes.
1985-01-30 14:47:49 +00:00
bal 31eab814f2 Debugging procedure print_allocs now writes to stderr. 1985-01-30 10:52:33 +00:00
bal 7f9dd27dc8 bug fixed: assemble_allocs() did generate whole_procedure allocations.
These allocations were initialized with a very low profit. Consequently
account_regsave rejected these allocations.
Solution: repl_allocs() updates the al_profits field of the
whole_procedure allocation.
1985-01-30 10:47:47 +00:00
bal 387191a2c7 bug fixed: oldmap(lmap,llength) was sometimes called when no new map
had to be allocated for the current (data-) unit.
1985-01-28 11:38:06 +00:00
bal a49f2d23f7 Number of address registers decreased from 5 to 4. 1985-01-25 13:24:12 +00:00
bal 66eabbcddf parameter of fscanf changed from "%d" to "%hd" to read a short. 1985-01-23 16:28:58 +00:00
bal 468401cb81 core allocation macros added. 1985-01-23 16:27:47 +00:00
bal cac6ffd8c2 ovfl_harmful and arrbound_harmful turned into ints 1985-01-23 16:25:29 +00:00
bal d32d4e6ba0 Interface of tmplocal() changed: second parameter is a long now 1985-01-23 16:23:15 +00:00
bal 5cad6f6aa7 interface with tmplocal() changed: second parameter is a long now. 1985-01-23 16:18:33 +00:00
bal e46c49e291 bug fixed in get_instrs(): instr should be an int rather than a Celem_t. 1985-01-23 16:16:49 +00:00
bal 5a95c31414 bug fixed in last_mnem(): test on nil-pointer.
bug fixed in try_tail(): add line "if(l1==0||l2==0) return FALSE".
1985-01-23 16:13:57 +00:00
bal f487f26e00 bug fixed in last_line() : assert(l!=0) should be assert(lines!=0). 1985-01-23 16:12:21 +00:00
bal e95492dfb0 bug fixed in routine get_ca_lines(): test on nil-pointer. 1985-01-23 16:10:43 +00:00
bal fefe15a844 init_regcnt renamed initregcnt to avoid name conflict.
bug fixed in routine fits_in(): test on nil-pointer.
routine choose_location(): interface with tmplocal() changed, second
parameter now is a long, so a cast is added.
1985-01-23 16:07:09 +00:00
bal 3d2c33e277 rules for itemtab.h and makeitems added. 1985-01-23 15:50:17 +00:00
bal 2ea3be322d clean_items renamed cleanitems to avoid name conflict.
clean_timeset renamed cleantimeset to avoid name conflict.
bugs fixed: calls to fscanf() with a pointer-to-short as argument
should provide a "%hd" instead of "%d".
1985-01-23 15:45:58 +00:00
bal 2d8dcaa2df Initial revision 1985-01-18 09:59:09 +00:00
bal ffb167e8b2 lay-out enhanced; flags (CFLAGS etc.) inherited from central Makefile;
entry for compiling this phase with ack -O created.
1984-12-21 14:41:47 +00:00
bal 98989fd9ca Initial revision 1984-12-10 13:36:12 +00:00
bal 9019141137 Bug fixed in optimizing two adjacent basic blocks. 1984-12-07 14:19:53 +00:00
bal 4e461a9860 Initial revision 1984-12-04 15:04:44 +00:00