Commit graph

221 commits

Author SHA1 Message Date
ceriel e6fb294aac transform HOL into BSS so that IL does not get confused 1989-05-30 14:32:12 +00:00
ceriel 6266743c4c static links are not considered read-only anymore 1989-05-30 10:44:34 +00:00
ceriel a432f84eb0 more fine-tuning 1989-03-20 12:36:22 +00:00
ceriel 0975784c8d some changes for more fine-tuning 1989-03-13 14:12:22 +00:00
ceriel ae34da5376 simplified a bit 1989-03-07 10:33:47 +00:00
ceriel 3370f962a4 undid some changes; they were not effective 1989-03-07 10:29:15 +00:00
ceriel ab1b682800 changed lint flags 1989-03-07 10:27:22 +00:00
ceriel 23f2646704 use general as pointer flag added 1989-03-07 10:24:32 +00:00
ceriel 15449606d1 bug fix: if a case-statement did not have a default, so that the
default is the successor of the block containing the CSA/CSB instruction,
the branch to the CSA/CSB block was not optimized
1989-03-07 10:11:24 +00:00
ceriel bb7b8d6490 fixed problem with size option 1989-03-03 17:53:31 +00:00
ceriel 86ace8a020 Fixed lintflags 1989-02-09 11:33:11 +00:00
ceriel dfca9ea600 fixed lint options; Added -O<num> option 1989-02-09 11:22:24 +00:00
ceriel 6fc4ca1ae0 The s option now gives a percentage of the size of the input 1989-02-09 10:18:48 +00:00
ceriel f78b282fb4 FIX: did not handle most of the 'end of basic block' instructions right;
many of them have effect on the stack, and this went by unnoticed
1988-09-07 09:20:37 +00:00
ceriel 79ac11bd40 Made to compile with DEBUG off 1988-09-02 13:55:54 +00:00
ceriel 83b92a8af2 fix: assertion was wrong 1988-09-02 13:52:11 +00:00
ceriel 0695089005 Added CS info 1988-07-19 09:45:59 +00:00
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