ack.git
40 years agopem did not generate a register message for var-parameters of
bal [Wed, 12 Sep 1984 13:21:43 +0000 (13:21 +0000)]
pem did not generate a register message for var-parameters of
array- or record type. The routine "treewalk" is modified.
It generates a register message for every var-parameter, even
if it has its noreg-flag set.

40 years agounlk a6 added to restr().
bal [Tue, 11 Sep 1984 15:44:14 +0000 (15:44 +0000)]
unlk a6 added to restr().

40 years agoAdded ego, basic and callname conventions.
keie [Mon, 10 Sep 1984 17:34:04 +0000 (17:34 +0000)]
Added ego, basic and callname conventions.

40 years agoNo comment.
keie [Mon, 10 Sep 1984 16:51:02 +0000 (16:51 +0000)]
No comment.

40 years agoCombiners (ego, linkers) now use a list of path's(ack.h) to indicate
keie [Mon, 10 Sep 1984 16:48:57 +0000 (16:48 +0000)]
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.

40 years ago1 - A transformation is succesfull when
keie [Mon, 10 Sep 1984 16:46:13 +0000 (16:46 +0000)]
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.

40 years agoThe input file names of the linker are to be found in a different place.
keie [Mon, 10 Sep 1984 16:45:12 +0000 (16:45 +0000)]
The input file names of the linker are to be found in a different place.

40 years ago1 - added keywords callname and outfile. See manual.
keie [Mon, 10 Sep 1984 16:42:55 +0000 (16:42 +0000)]
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.

40 years ago1 - callname recognition is moved to rmach.c.
keie [Mon, 10 Sep 1984 16:37:11 +0000 (16:37 +0000)]
1 - callname recognition is moved to rmach.c.
2 - The overall scheme is altered.
first, all input files are processed until a combining phase is met.
then, all the combining phases are executed, the resulting files
are again processed until a combiner (or final) phase is met.
3 - The EM_DIR shell variable can be used to set ack's idea of the EM
    home directory.

40 years ago1 - The names of temporary files are now Ack'hex''unique'.'suffix'.
keie [Mon, 10 Sep 1984 16:33:03 +0000 (16:33 +0000)]
1 - The names of temporary files are now Ack'hex''unique'.'suffix'.
    'hex' is the pid of the current invocation of ack in hex.
    'unique' is a tail unique to this invocation.
2 - The outfile field is used to indicate default naming, can be ovrrriden
    by the -o flag.
3 - Added handling for phases with multiple inputs (ego, linker).

40 years agoThe role of the combiner is -partially- assumed by the linker.
keie [Mon, 10 Sep 1984 16:30:47 +0000 (16:30 +0000)]
The role of the combiner is -partially- assumed by the linker.
Linker arguments are now part of the transformation structure.
Temp file nameing is changed.

40 years agoNaming of the tempname is changed (see files.c).
keie [Mon, 10 Sep 1984 16:29:37 +0000 (16:29 +0000)]
Naming of the tempname is changed (see files.c).

40 years agoInitial revision
keie [Mon, 3 Sep 1984 13:49:40 +0000 (13:49 +0000)]
Initial revision

40 years agoVariable nregvars had a name clash with the array nregvar[] in the
sater [Thu, 23 Aug 1984 17:07:53 +0000 (17:07 +0000)]
Variable nregvars had a name clash with the array nregvar[] in the
file tables.c. That was different in the 8'th character (!"#$%&'()_).
These variables should actually be static.

40 years agoWe do not use the missing " trick anymore.
keie [Thu, 23 Aug 1984 13:33:11 +0000 (13:33 +0000)]
We do not use the missing " trick anymore.
The root directory of the EM tree is in the name EM_DIR, the
root directory for tempfiles is in TMP_DIR.
All other path's are relative to EM_DIR.

40 years agoThe ACK tree on the vax has as default machine 'vax2'.
keie [Thu, 23 Aug 1984 13:27:14 +0000 (13:27 +0000)]
The ACK tree on the vax has as default machine 'vax2'.

40 years agoThe missing trailing " trick is now also used for TMP_DIR.
keie [Thu, 23 Aug 1984 13:26:44 +0000 (13:26 +0000)]
The missing trailing " trick is now also used for TMP_DIR.

40 years agoThe ms_gto is added. This is a trick used to indicate procedures
keie [Thu, 23 Aug 1984 13:25:44 +0000 (13:25 +0000)]
The ms_gto is added. This is a trick used to indicate procedures
jumped to with gto.

40 years ago*** empty log message ***
keie [Thu, 23 Aug 1984 13:20:59 +0000 (13:20 +0000)]
*** empty log message ***

40 years agoInitial revision
keie [Thu, 23 Aug 1984 13:18:14 +0000 (13:18 +0000)]
Initial revision

40 years agoInitial revision
keie [Thu, 23 Aug 1984 13:00:32 +0000 (13:00 +0000)]
Initial revision

40 years agoincreased MAXNODES in small memory mode
sater [Thu, 23 Aug 1984 12:25:24 +0000 (12:25 +0000)]
increased MAXNODES in small memory mode

40 years agoIncreased the amount of information passed through error routines
sater [Fri, 17 Aug 1984 15:35:28 +0000 (15:35 +0000)]
Increased the amount of information passed through error routines
to printf. The routine badassert, running on a 2/4 machine lost it's
last argument on the way.
Anyone know of a better way to solve this problem?

40 years agoAdded comment.
keie [Fri, 17 Aug 1984 14:57:31 +0000 (14:57 +0000)]
Added comment.

40 years agoAdded RCS identification.
keie [Fri, 17 Aug 1984 14:44:24 +0000 (14:44 +0000)]
Added RCS identification.

40 years agoRevised to include rcsid of pattern file in binary opt
sater [Thu, 16 Aug 1984 16:08:39 +0000 (16:08 +0000)]
Revised to include rcsid of pattern file in binary opt

40 years agoenlarged string table in big memory case
sater [Thu, 16 Aug 1984 13:34:59 +0000 (13:34 +0000)]
enlarged string table in big memory case

40 years agoadded patterns to prevent stacking in *p++ cases
sater [Wed, 15 Aug 1984 16:05:54 +0000 (16:05 +0000)]
added patterns to prevent stacking in *p++ cases

40 years agoadded patterns to remove some more dup's
sater [Wed, 15 Aug 1984 16:04:19 +0000 (16:04 +0000)]
added patterns to remove some more dup's

40 years agoadded patterns for inc/dec/adp of local and external offsetted
sater [Wed, 15 Aug 1984 14:31:54 +0000 (14:31 +0000)]
added patterns for inc/dec/adp of local and external offsetted
This makes the getc() macro from C very efficient, among others

40 years agoadded patterns to remove as many dup's as possible.
sater [Wed, 15 Aug 1984 14:23:42 +0000 (14:23 +0000)]
added patterns to remove as many dup's as possible.

40 years agoadded definition of malloc().
sater [Wed, 8 Aug 1984 10:54:04 +0000 (10:54 +0000)]
added definition of malloc().
Program crashed on 2/4 machines

40 years agoreworked patterns for autoincrement stores, now that peephole optimizer
sater [Tue, 7 Aug 1984 10:22:49 +0000 (10:22 +0000)]
reworked patterns for autoincrement stores, now that peephole optimizer
rearranged it.

40 years agoadded patterns for *p++ local and external p
sater [Fri, 3 Aug 1984 16:37:15 +0000 (16:37 +0000)]
added patterns for *p++ local and external p
added pattern to remove some badly placed dups

40 years agoadded setcc calls to some incrementing ops
sater [Fri, 3 Aug 1984 16:33:40 +0000 (16:33 +0000)]
added setcc calls to some incrementing ops
added patterns for indirect local and external increments
added patterns for loe ine and such

40 years agoremoved some superfluous patterns.
sater [Fri, 3 Aug 1984 13:16:59 +0000 (13:16 +0000)]
removed some superfluous patterns.
Were special cases not needed with the general case.

40 years agoA move from a nonreg to a reg did not have the effect that all
sater [Thu, 2 Aug 1984 16:31:25 +0000 (16:31 +0000)]
A move from a nonreg to a reg did not have the effect that all
registers clashing with the destination were erased. Erase added.

40 years agoThe name "unix" is now predefined for preprocessor usage.
keie [Thu, 2 Aug 1984 14:13:04 +0000 (14:13 +0000)]
The name "unix" is now predefined for preprocessor usage.

40 years agoWhen building the parameter list for a pf-call, the line number
sater [Tue, 31 Jul 1984 09:39:35 +0000 (09:39 +0000)]
When building the parameter list for a pf-call, the line number
for the exchanges war remembered at the wrong time.
This caused:
foo(3,'string')
to cause an external identifier for the string. Fixed.

40 years agoString initializer handling is changed.
keie [Mon, 30 Jul 1984 14:42:33 +0000 (14:42 +0000)]
String initializer handling is changed.
Strings are now considered to be sequences of xU1's.
No alignment is done before or after the string other than the
alignment done for names and segment type switches.

40 years agobug fixed: added "fprintf(codefile,"\b"rts\n");" to restr()
bal [Mon, 30 Jul 1984 12:47:54 +0000 (12:47 +0000)]
bug fixed: added "fprintf(codefile,"\b"rts\n");" to restr()

40 years agobugs fixed (syntax errors, patterns moved to front,
bal [Mon, 30 Jul 1984 11:16:41 +0000 (11:16 +0000)]
bugs fixed (syntax errors, patterns moved to front,
"ldl ldl adp sdl sti" requires DATAREG instead of ANY1 on
fakestack)

40 years agopatterns added to generate autoincrement and to generate
bal [Fri, 27 Jul 1984 16:53:19 +0000 (16:53 +0000)]
patterns added to generate autoincrement and to generate
a "move X,d0" instead of a "move X,-(sp)" before storing into X

40 years agoadded rcsid
sater [Fri, 27 Jul 1984 10:28:48 +0000 (10:28 +0000)]
added rcsid

40 years agoadded PR* routines
sater [Thu, 26 Jul 1984 13:15:21 +0000 (13:15 +0000)]
added PR* routines

40 years agoChanged procedure prolog to use PR* routines.
sater [Thu, 26 Jul 1984 13:05:22 +0000 (13:05 +0000)]
Changed procedure prolog to use PR* routines.

40 years ago*** empty log message ***
keie [Mon, 23 Jul 1984 11:49:00 +0000 (11:49 +0000)]
*** empty log message ***

40 years agoremoved all calls to blm~ from table
sater [Mon, 23 Jul 1984 11:29:59 +0000 (11:29 +0000)]
removed all calls to blm~ from table
duplicated some patterns for in[lc] to deal with de[lc]
extra rule for adi 2 to deal with source1 cleverly

40 years agoremoved blm.s, not used by table anymore
sater [Fri, 20 Jul 1984 16:20:54 +0000 (16:20 +0000)]
removed blm.s, not used by table anymore

40 years agoedited to make reentrant, no more globals in use
sater [Fri, 20 Jul 1984 16:20:28 +0000 (16:20 +0000)]
edited to make reentrant, no more globals in use

40 years agoadded copyright notice
sater [Fri, 20 Jul 1984 13:54:36 +0000 (13:54 +0000)]
added copyright notice

40 years agoadded rcsid
sater [Fri, 20 Jul 1984 11:32:47 +0000 (11:32 +0000)]
added rcsid
adapted to new archive updating style, with LIST and march and all that

40 years agoInitial revision
sater [Fri, 20 Jul 1984 11:25:31 +0000 (11:25 +0000)]
Initial revision

40 years agoadded rcsid
sater [Fri, 20 Jul 1984 11:25:18 +0000 (11:25 +0000)]
added rcsid

40 years agoadded copyright notice
sater [Fri, 20 Jul 1984 11:20:12 +0000 (11:20 +0000)]
added copyright notice

40 years agoremoved copyright notice, wasn't really *written* by us.
sater [Fri, 20 Jul 1984 11:07:12 +0000 (11:07 +0000)]
removed copyright notice, wasn't really *written* by us.

40 years agoadded rcsid
sater [Fri, 20 Jul 1984 11:03:31 +0000 (11:03 +0000)]
added rcsid

40 years agoInitial revision
sater [Fri, 20 Jul 1984 10:44:57 +0000 (10:44 +0000)]
Initial revision

40 years agoA sti 8 of a regdef8 token went into panic mode. Fixed.
sater [Fri, 20 Jul 1984 10:32:48 +0000 (10:32 +0000)]
A sti 8 of a regdef8 token went into panic mode. Fixed.

40 years agoto check long >= 0 or long < 0 it is enough to test high order word. Added.
sater [Thu, 19 Jul 1984 16:50:27 +0000 (16:50 +0000)]
to check long >= 0 or long < 0 it is enough to test high order word. Added.
anding and oring of long constants is much better now
dvu 2 and rmu 2 by positive constants is now done inline.

40 years agoadded rcsid
sater [Thu, 19 Jul 1984 15:03:30 +0000 (15:03 +0000)]
added rcsid

40 years agoInitial revision
sater [Thu, 19 Jul 1984 15:01:43 +0000 (15:01 +0000)]
Initial revision

40 years agoArchive made with archiver in environment ASAR if set, arch otherwise
sater [Thu, 19 Jul 1984 14:55:12 +0000 (14:55 +0000)]
Archive made with archiver in environment ASAR if set, arch otherwise

40 years agoremoved #ifdef UNTESTED around logical instructions without arguments,
sater [Thu, 19 Jul 1984 14:03:49 +0000 (14:03 +0000)]
removed #ifdef UNTESTED around logical instructions without arguments,
seems they were used ( which implicitly means tested ) after all

40 years agoInitial revision
sater [Thu, 19 Jul 1984 13:52:18 +0000 (13:52 +0000)]
Initial revision

40 years agoadded rcsid
sater [Thu, 19 Jul 1984 13:34:12 +0000 (13:34 +0000)]
added rcsid

40 years agochanged name from comparchentry to compmodule
sater [Thu, 19 Jul 1984 13:22:36 +0000 (13:22 +0000)]
changed name from comparchentry to compmodule

40 years agoInitial revision
sater [Thu, 19 Jul 1984 13:20:15 +0000 (13:20 +0000)]
Initial revision

40 years agoold code put back, now register handling is different again
sater [Thu, 19 Jul 1984 13:12:03 +0000 (13:12 +0000)]
old code put back, now register handling is different again
actually old code never was removed, due to a misunderstanding
about comment conventions.

40 years agomakefile adapted to new style archive handling, RCS and all that
sater [Thu, 19 Jul 1984 13:11:36 +0000 (13:11 +0000)]
makefile adapted to new style archive handling, RCS and all that

40 years agoa setl instruction was changed to a setd
sater [Thu, 19 Jul 1984 13:09:53 +0000 (13:09 +0000)]
a setl instruction was changed to a setd
setl was just plain wrong

40 years agoInitial revision
sater [Thu, 19 Jul 1984 12:51:00 +0000 (12:51 +0000)]
Initial revision

40 years agorcsid added
bal [Thu, 19 Jul 1984 11:50:29 +0000 (11:50 +0000)]
rcsid added

40 years agoInitial revision
bal [Thu, 19 Jul 1984 11:50:28 +0000 (11:50 +0000)]
Initial revision

40 years agoInitial revision
sater [Thu, 19 Jul 1984 11:50:18 +0000 (11:50 +0000)]
Initial revision

40 years agoNew implementation of GTO (without register save masks)
bal [Thu, 19 Jul 1984 11:15:28 +0000 (11:15 +0000)]
New implementation of GTO (without register save masks)
several optimizations added

40 years agoNew implementation of GTO (without register save masks)
bal [Thu, 19 Jul 1984 11:07:15 +0000 (11:07 +0000)]
New implementation of GTO (without register save masks)

40 years agorcsid added
bal [Thu, 19 Jul 1984 11:02:06 +0000 (11:02 +0000)]
rcsid added
several optimizations added

40 years agorcsid added
bal [Thu, 19 Jul 1984 10:57:19 +0000 (10:57 +0000)]
rcsid added
clr.w -(sp) generated in prolog if register save mask is 0

40 years agoInitial revision
bal [Thu, 19 Jul 1984 10:03:10 +0000 (10:03 +0000)]
Initial revision

40 years agoInitial revision
bal [Thu, 19 Jul 1984 09:37:24 +0000 (09:37 +0000)]
Initial revision

40 years agoadded patterns for ldc adi/ldc sbi with zero high order word
sater [Wed, 18 Jul 1984 16:47:24 +0000 (16:47 +0000)]
added patterns for ldc adi/ldc sbi with zero high order word
added patterns for *--p with p register
added patterns to generate cmpb to compare two bytes.
added patterns to use regvar to index global array
added patterns for lol inl
added patterns for external pointer increment/decrement

40 years agoThe patterns to change a cii to cuu when dealing with a known positive
sater [Wed, 18 Jul 1984 15:54:25 +0000 (15:54 +0000)]
The patterns to change a cii to cuu when dealing with a known positive
quantity was technically wrong. Changed to generate a cui.

40 years agoadded definition of index, to keep compiler happy
sater [Wed, 18 Jul 1984 14:14:46 +0000 (14:14 +0000)]
added definition of index, to keep compiler happy

40 years agoremoved recursive comments
sater [Wed, 18 Jul 1984 13:39:24 +0000 (13:39 +0000)]
removed recursive comments
removed NC with sti rules
added rule to reverse operands of adi 2
added rule to convert loc sbi to loc adi
added loc slu -> loc sli rule
added local++ rule
added rule for asping xsource2
added rule for csb when nothing on stack

40 years agoadded rcsid
sater [Wed, 18 Jul 1984 13:32:11 +0000 (13:32 +0000)]
added rcsid
changed instruction label format to allow more than 256 procedures

40 years agochanged instruction label format to allow more than 256 procedures
sater [Wed, 18 Jul 1984 13:28:01 +0000 (13:28 +0000)]
changed instruction label format to allow more than 256 procedures

40 years agoadded rcsid
sater [Wed, 18 Jul 1984 13:14:18 +0000 (13:14 +0000)]
added rcsid
converted to recognize and generate new 0%o format

40 years agoadded patterns for unsigned shifting
sater [Wed, 18 Jul 1984 11:05:28 +0000 (11:05 +0000)]
added patterns for unsigned shifting
added patterns to delay additive operations until after multiplicative,
  this can be useful for some register machines

40 years agoImproved error handling on unterminated strings
sater [Wed, 18 Jul 1984 11:04:58 +0000 (11:04 +0000)]
Improved error handling on unterminated strings

40 years agoadded -f flags to all calls to rm
sater [Mon, 16 Jul 1984 15:29:48 +0000 (15:29 +0000)]
added -f flags to all calls to rm

40 years agoadded special patterns for:
sater [Mon, 16 Jul 1984 14:39:21 +0000 (14:39 +0000)]
added special patterns for:
1) long compared to constant ( ldc cms 4 zxx )
2) long increments ( ld? ldc adi 4 sd? )
3) autoincrement loads and stores ( lol lol adp stl loi/sti )

40 years ago*** empty log message ***
keie [Mon, 16 Jul 1984 09:36:12 +0000 (09:36 +0000)]
*** empty log message ***

40 years agoAdded z8000 assembler manual.
keie [Mon, 16 Jul 1984 09:32:22 +0000 (09:32 +0000)]
Added z8000 assembler manual.

40 years agoadded missing #endif
sater [Fri, 13 Jul 1984 16:13:56 +0000 (16:13 +0000)]
added missing #endif
added two patterns, big improvement
added patterns for ciu and cui
some cosmetic change

40 years ago*** empty log message ***
keie [Fri, 13 Jul 1984 15:20:58 +0000 (15:20 +0000)]
*** empty log message ***

40 years agoAdded lines for DECUS cpp manual.
keie [Fri, 13 Jul 1984 15:19:19 +0000 (15:19 +0000)]
Added lines for DECUS cpp manual.

40 years agoThe check for a too high offset in a hol is repaired.
keie [Fri, 13 Jul 1984 15:03:05 +0000 (15:03 +0000)]
The check for a too high offset in a hol is repaired.

40 years agoA bug in the exchange was repaired.
keie [Fri, 13 Jul 1984 15:01:23 +0000 (15:01 +0000)]
A bug in the exchange was repaired.
Exchanges across pseudo-instructions didn't work properly.

40 years agoRemoved some patterns that have never been tested.
sater [Fri, 13 Jul 1984 14:55:37 +0000 (14:55 +0000)]
Removed some patterns that have never been tested.
Now if someone uses them he will hear that it doesn't work.
That must be better then giving him code that probably won't work.
All these patterns had to do with things like adf without an argument
and things like that.