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
keie
241a7de970
The PDP 11 needs -i, Vax'en ignore it.
1985-02-18 12:45:31 +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
sater
dac2f97109
extra define added to aid in generation of DO_RREMOVE
1985-01-11 09:42:17 +00:00
sater
3a528a7324
code was added to generate DO_RREMOVE
1985-01-11 09:41:47 +00:00
sater
3534869cb5
code was added to cause generation of DO_RREMOVE in some cases
1985-01-11 09:41:13 +00:00
sater
e9b6045b5a
diffs were applied to make default register property at stacking rule
...
-1 instead of 0.
1985-01-11 09:40:40 +00:00
sater
a1a8fd99a0
Optional register property in stacking rules must be -1 when absent.
...
Fixed this.
1985-01-10 16:30:09 +00:00
duk
d7fb9edfe2
Maybe some minor changes.
1985-01-10 13:35:39 +00:00
duk
58126396af
Added call to trap signals.
1985-01-10 13:24:36 +00:00
duk
55017702e2
Header and section table now allocated statically.
1985-01-10 13:22:04 +00:00
duk
7d312abd59
Inline expansion of index_adjust() and compute_origins().
...
Section table now allocated statically.
1985-01-10 13:19:47 +00:00
duk
ba826bad5c
Added routine to check signals.
1985-01-10 13:17:22 +00:00
duk
f532b58045
Added provisions for copying everything after the string area into the
...
resulting object file. Because this is most likely symbolic debugging
information, these are parametrized by #ifdef SYMDBUG.
1985-01-08 11:54:57 +00:00
sater
72b83cca59
*** empty log message ***
1985-01-08 09:59:28 +00:00
sater
c2229e5c60
Initial revision
1985-01-04 14:05:25 +00:00
keie
57115f49cc
Take precautions against an already existing march.
1985-01-01 21:32:02 +00:00
keie
fe6eed6c76
Added RCS identification.
1985-01-01 18:35:40 +00:00
keie
0ebd337637
*** empty log message ***
1985-01-01 18:34:12 +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
keie
8636bd025e
Added machines to be sent with the second distribution to the LNTABLES.
1984-12-18 15:28:19 +00:00
keie
a5e9c4f8d1
*** empty log message ***
1984-12-17 15:52:04 +00:00
keie
8c874d4632
Run $RANLIB if the shell variable is set.
1984-12-17 15:50:02 +00:00
sater
d267037189
*** empty log message ***
1984-12-17 15:13:39 +00:00
bal
98989fd9ca
Initial revision
1984-12-10 13:36:12 +00:00
keie
9932e38ab2
Removed the definition of the NEEDS variable.
1984-12-10 12:49:56 +00:00
ceriel
7f12f20be6
Removed a reference to a non existing Makefile ( in the lib directory).
1984-12-07 15:21:25 +00:00
bal
9019141137
Bug fixed in optimizing two adjacent basic blocks.
1984-12-07 14:19:53 +00:00
ceriel
2c7c97051b
Changed so that the installation process will continue if LLgen
...
is not present yet.
Also added Makefile to the "make pr" entry.
1984-12-06 10:39:28 +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
ceriel
7e3e49082c
Increased MAXPATLEN to 8000.
1984-11-30 11:14:18 +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
keie
4a36e98f5c
Treatment of -R flag is altered.
...
1 - if recognized by mapflag and not by Ack internally no
complaint is given.
2 - If recognized by both mapflag and internally:
-R....-.... : effectuate only mapflag command
otherwise : effectuate both.
3 - If not recognized at all, give a warning message and
pass the flag to the linker.
1984-11-26 17:14:17 +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
keie
36c1f227ea
Added a check for non-ascii characters in the description files.
1984-11-15 14:24:35 +00:00
ceriel
1fe1bc8c09
Forgotten to close a file. This is corrected.
1984-11-12 18:05:20 +00:00
keie
4e7f357a26
Added rcs identification.
1984-11-08 12:08:31 +00:00
keie
cb84476be0
Added a check. Minis & shorties need an N or P argument.
1984-11-08 11:09:56 +00:00
ceriel
4d48191bcc
The input routine used to skip space. This "feature" has been removed
...
because it is also used to read strings, in which space is significant.
1984-10-31 15:26:09 +00:00
ceriel
da7230a8eb
Running makedepend again gave a difference.
1984-10-26 10:31:22 +00:00
ceriel
1ca93d7aa1
removed the "depend" emtry, added a "distr" entry, which should be used
...
before a distribution is made.
Also added the -DNORCSID flag to the lint-options.
1984-10-26 10:25:55 +00:00
ceriel
c5345aaaba
Added a "distr" entry, which will be propagated to the src directory.
1984-10-26 10:24:48 +00:00
sater
be9b72e273
added -h and -c flags, to change names of tables.h and tables.c respectively
...
now also takes an argument instead of stdin.
EM_BSIZE is now compulsory again.
Constants EM_?SIZE are passed on to cg with a T prepended (T for target)
1984-10-23 13:39:15 +00:00
ceriel
9eb72b6ee8
Had forgotten to initialise the line number on which a nonterminal
...
symbol occurred first.
1984-10-12 14:19:34 +00:00
ceriel
bdc67c3332
The former version gave a fatal error message at the first undefined
...
nonterminal. The new version checks all nonterminals
1984-10-11 10:35:01 +00:00
ceriel
a33d4cdbba
The routine findpath did not work. It used the same static buffer for
...
several calls. Now it uses alloc.
1984-10-09 11:43:19 +00:00
ceriel
c89acc55c7
added "#ifdef NORCSID"
1984-10-09 10:16:33 +00:00
ceriel
d068cf64b3
Added some comments and removed some Lint complaints
1984-10-09 10:13:46 +00:00
ceriel
774ce1ecc3
Initial revision
1984-10-09 09:47:14 +00:00
ceriel
dd1bcb3f60
The routine LLmessage did not insert tokens properly.
...
This is corrected now.
1984-10-09 09:33:37 +00:00
ceriel
317ab99ecf
Changed RCSid
1984-10-08 17:11:03 +00:00
ceriel
474d9d6e0f
Added RCSid.
1984-10-08 16:21:03 +00:00
ceriel
a9a0339ec1
Adapted the libpath routine to use EM_DIR from ../../../h/em_path.h
1984-10-08 15:58:23 +00:00
ceriel
58b1dd5b6d
Initial revision
1984-10-08 15:19:18 +00:00
ceriel
a7c0f30307
Initial revision
1984-10-08 14:51:38 +00:00
ceriel
de22c41214
Initial revision
1984-10-08 14:24:19 +00:00
ceriel
a21f936651
Initial revision
1984-10-08 14:14:53 +00:00
keie
8958cb6faf
Altered the test path lib/n_ack into the normal path ACK_PATH.
1984-10-05 15:07:47 +00:00
keie
b5fa0675b6
Added a priority associated with each phase. Paths with the highest
...
total priority have preference.
1984-10-05 13:34:38 +00:00
keie
8e680a6467
1 - Added some debugging for linker flags.
...
2 - Setting of NEEDS and RTS is moved to main.c.
3 - Added recognition of -Rphase:[-]number for dynamic priority setting.
1984-10-05 13:31:40 +00:00
keie
c4434ccbce
1 - Most flags used by ack itself are now also passed to the phases
...
for recognition with mapflag.
2 - A few bugs are removed in connection with argument passing to the
linker (unrecognized flags and libraries).
3 - The setting of RTS, HEAD and TAIL is done directly after the
path determination for each file.
1984-10-05 13:28:56 +00:00
keie
5376af0d04
1 - Added RCS identification.
...
2 - Removed the default for compiler and error file pathname.
These are now always supplied by the callee.
1984-10-04 11:08:42 +00:00
keie
080555fffd
Bug removed: the trailing zero at the end of a growstring was not
...
explicitly written in doassign(trans.c).
Only luck kept the program together.
1984-10-01 17:42:56 +00:00
em
2c4b17e464
Compile-time option GLOBAL_OPT defined. If set, the resulting
...
peephole optimizer will be suitable for optimizing the output of
the global optimizer. In particular, it doesn't change the register
messages.
1984-09-14 10:25:07 +00:00
keie
c97e1a7bc2
1 - The prop keyword with is flags is now obsolete. Its function is
...
taken over by several other keywords: stdin, stdout, prep, optimizer,
combiner and linker.
2 - The search order is changed. First {EM}/lib/{M}/descr, then
{EM}/lib/ack/{M}, finally {M}.
1984-09-13 14:40:09 +00:00
keie
c93761cadc
The t_do bits are not set by this module. The t_next entry is used
...
to see whether the scan for this phase is already done.
t_do is now set in add_inputs(files.c).
1984-09-13 14:35:02 +00:00
keie
aa4bae59e0
1 - The t_do flags is now set by add_inputs(files.c).
...
2 - Recognize the fact that it is possible to start a combiner without
input files.
3 - Removed -d flag. Overflow for -v (>2) now ends up in debug.
-v may be followed by a number indicating the increment.
1984-09-13 11:07:46 +00:00
keie
527726167a
1 - The outfile entry is only used when the output file must not be thrown
...
away.
2 - If a combiner has no named input file (only libs+flags) then issue
a warning message and make up a name.
1984-09-13 11:04:00 +00:00
keie
3c300d3e1c
No comment.
1984-09-10 16:51:02 +00:00
keie
8443ef3f8d
Combiners (ego, linkers) now use a list of path's(ack.h) to indicate
...
their input files.
Unmatched flags are now sent to the linker.
1984-09-10 16:48:57 +00:00
keie
1188f0e810
1 - A transformation is succesfull when
...
a - a stopsuffix is indicated and met,
b - the last transformation is included in the transformation path.
2 - Maintains a 'cash' of best paths for all transformation to be executed.
1984-09-10 16:46:13 +00:00
keie
1dba1f5328
The input file names of the linker are to be found in a different place.
1984-09-10 16:45:12 +00:00
keie
20100c69c7
1 - added keywords callname and outfile. See manual.
...
2 - multiple combiners are allowed now.
3 - A different search mechanism is used for finding descriptor files.
1984-09-10 16:42:55 +00:00