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
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
bal
3cdaf9f4ba
WORDLENGTH now defined in automatically generated file wordlen.h
...
Generate this file from makewlen.c
1984-12-04 15:04:01 +00:00
bal
0d0e2d2d22
WORDLENGTH now defined in automatically generated file worlen.h
1984-12-04 15:03:22 +00:00
bal
8d659c015f
Bug fixed: fill_item() should initialize item->it_desirable to TRUE.
1984-12-04 14:41:20 +00:00
bal
9b72991e27
regsave_cost() return void instead of short.
1984-12-04 13:04:27 +00:00
bal
8db2c12881
regsave_cost() returns void instead of short.
1984-12-04 13:03:49 +00:00
bal
ee3ef338db
Comment closer ("*/") added to description of getlines().
1984-12-03 12:12:37 +00:00
bal
0778ce4a9a
Macros for B_DIST, B_USECNT and B_MARK removed, as these fields are
...
no longer used.
Declarations of nrinstrs and instrmap marked "extern" to satisfy ack compiler.
1984-11-30 10:52:05 +00:00
bal
7351e38ed5
Declaration of items[] made static to avoid name conflict with ra_items.c
...
Core allocation macros added.
1984-11-30 10:50:27 +00:00
bal
bac0efbedb
Declaration of items[] made static to avoid name conflict with ra.c
1984-11-30 10:49:09 +00:00
bal
302608566a
routines getcall(), get_text() and getcc() move from get.c to this file
...
routines putactuals(), putcall(), and putcc() move from put.c to this file
get.h, put.h, stdio.h, em_mnem.h and em_pseu.h included
1984-11-30 10:30:22 +00:00
bal
c814b9523d
several data structures added (moved from types.h).
...
core allocation macros added.
1984-11-30 10:28:35 +00:00
bal
39891edd12
Declarations for iv and code_info added (moved from types.h).
...
core allocation macros added.
1984-11-30 10:27:05 +00:00
bal
90df1e5b9a
core allocation macros added
1984-11-30 10:25:21 +00:00
bal
1e69d3458c
declaration for sym,num and prc added (moved from types.h)
1984-11-30 10:24:21 +00:00
bal
6988358e29
ic.h included before ic_lookup.h
1984-11-30 10:23:34 +00:00
bal
49137da06b
Lots of procedures removed (turned into macro in alloc.h or
...
moved to one specific phase).
1984-11-30 10:15:24 +00:00
bal
594a5bb49b
Lots of data structures removed and made local to one specific phase.
1984-11-30 10:14:30 +00:00
bal
e5a282c621
Lots of procedure newxxx() and oldxxx() turned into macros.
...
Lots of such procedures removed and made local to one specific phase.
1984-11-30 10:12:37 +00:00
bal
4ab54c85a8
As getbblocks() was moved to cf.c, em_flag.h need no longer
...
be included.; also, the declaration for em_flag[] was removed.
1984-11-30 10:10:41 +00:00
bal
b532117b2b
-O flag removed
1984-11-29 16:25:08 +00:00
bal
bda5c8409c
macros newlvbx and oldlvbx added.
1984-11-29 15:10:11 +00:00
bal
8a15a3f597
macros newlocal() and oldlocal() moved to alloc.h
1984-11-29 14:40:31 +00:00
bal
0c0c3b7892
-O flag removed from CFLAGS
1984-11-29 13:33:33 +00:00
bal
b0de601d5b
-O removed from CFLAGS
1984-11-29 13:31:22 +00:00
bal
7767012a6e
il_aux.h included (which now contains getcall(),putcall() etc.
...
routines that were peviously in get.c and put.c).
1984-11-29 11:08:15 +00:00
bal
bd06330739
stdio.h included (required by new interface to get.h).
1984-11-29 11:06:23 +00:00
bal
84ed8ee7ef
routines getcall(), get_text() and getcc() move from get.c to this file
...
routines putactuals(), putcall(), and putcc() move from put.c to this file
get.h, put.h, stdio.h, em_mnem.h and em_pseu.h included
1984-11-29 11:03:19 +00:00
bal
f3e35f5432
routine getbblocks (plus its auxiliary routines) moved from get.c
...
to this file; core allocation macros newcfbx() and oldcfbx() added.
1984-11-29 10:51:16 +00:00
bal
edcb838b98
newnametable() move from alloc.c to this file,
...
get_ca_lines moved from get.c to this file,
em_pseu.h and em_mes.h included (needed by get_ca_lines).
1984-11-29 10:31:44 +00:00
bal
c17a52c09d
stdio.h included (required by new get.h interface),
...
macros's newlocal() and oldlocal() added, replacing routines in
alloc.c with same name.
1984-11-29 10:25:21 +00:00
bal
0032ebfeda
getbblocks(), getcall(), getcc() and get_text() removed,
...
get_ca_lines() removed,
curinp,lastbid,lastlabid exported
getbyte(),getshort(),getoff(),read_line and getlines() exported.
1984-11-29 10:18:53 +00:00
bal
582a0cc2aa
getbblocks() removed (now local to CF phase),
...
getcall(),getcc() and get_text removed (now local to IL),
get_ca_lines() removed (now local to CA),
current input file "f" renamed "curinp" and exported,
getbyte (macro), getshort() and getoff() exported
read_line() and getlines() exported,
lastbid and lastlabid exported.
1984-11-29 10:15:23 +00:00
bal
dd5ceb7b97
putcall an putcc removed,
...
curoutp, outbyte,outshort and outoff exported.
1984-11-29 10:11:37 +00:00
bal
470826f0c9
putcall and putcc removed (make local to IL phase)
...
current output file renamed "curoutp" and exported
outbyte, outshort and outoff exported.
1984-11-29 10:09:15 +00:00
bal
1cb39eff7e
cleaned up
1984-11-28 09:26:44 +00:00
bal
502a7a86af
Initial revision
1984-11-27 16:16:36 +00:00
bal
30ca0afe49
cleaned up
1984-11-27 15:52:23 +00:00
bal
ad383cbdc0
stack_change was renamed stack_chg
1984-11-27 15:43:14 +00:00
bal
165965eadc
Initial revision
1984-11-27 15:40:13 +00:00
bal
a6d53a6bcd
"ivars" was renamed "ivvars" to avoid name conflict with sr_expr.c
1984-11-27 15:30:34 +00:00
bal
df200afd46
cleaned up
1984-11-27 15:04:04 +00:00
bal
9c3a416acd
cleaned up; dependecies added.
1984-11-27 14:53:00 +00:00
bal
9e38bfa060
cleaned up.
1984-11-27 14:25:02 +00:00
bal
2d6eff961f
cleaned up. use CC.
1984-11-27 14:23:20 +00:00
bal
0981b8857b
getoff() moved to front (was called before being defined)
...
declaration char *pseudo[] changed to char *pseudo[5] to suppress warining
1984-11-27 14:21:55 +00:00
bal
69bdddd9ba
"cc" replaced by $(CC)
1984-11-27 12:59:18 +00:00
bal
c4b4a08720
Initial revision
1984-11-26 15:15:07 +00:00
bal
6d481ce4d6
Initial revision
1984-11-26 15:04:22 +00:00
bal
6a9e49f683
Initial revision
1984-11-26 14:51:59 +00:00
bal
1833451151
Initial revision
1984-11-26 14:35:32 +00:00
bal
9f778655a6
Initial revision
1984-11-26 14:14:55 +00:00
bal
f01e1431b0
Initial revision
1984-11-26 14:07:17 +00:00
bal
415ae7e922
Initial revision
1984-11-26 13:58:05 +00:00
bal
7b798175ad
Initial revision
1984-11-26 13:43:22 +00:00