David Given
eebf6cca33
Rename branch.
...
--HG--
branch : unlabeled-2.6.1-branch
2015-06-18 23:39:29 +02:00
keie
f92167796a
Added the possibility to have a varying EM_BSIZE
...
as a tempoarary measure, to be deleted as soon as the m68k2
back-end is tested again.
--HG--
branch : unlabeled-2.6.1
1985-01-24 16:51:26 +00:00
cvs2hg
5ca4cd622f
fixup commit for branch 'unlabeled-2.6.1'
...
--HG--
branch : unlabeled-2.6.1
1984-10-23 15:04:25 +00:00
sater
a4a5fc4bfa
changed references to EM_?SIZE to TEM_?SIZE
1984-10-23 15:04:24 +00:00
sater
62f42d18f7
changed EM_WSIZE to TEM_WSIZE
1984-10-23 15:02:03 +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
sater
79ea4bdea3
Changed to use -h flag to cgg and better way of preserving old tables.h
...
if not changed. Nice huh, Andy?
1984-10-23 13:29:41 +00:00
sater
ab0db1c5fb
added rcsid(again). Who took that away?
1984-10-16 13:45:16 +00:00
sater
5d5a09a5d0
added code to generate code for ACK assembler.
...
Works if ACK_ASS is defined.
1984-10-16 13:31:44 +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
f1a2fdaa43
No changes
1984-10-11 21:35:58 +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
em
94e069fde1
Initial revision
1984-10-09 10:36:29 +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
27dcc7efc6
Added entry for LLgen.
1984-10-08 15:20:54 +00:00
ceriel
58b1dd5b6d
Initial revision
1984-10-08 15:19:18 +00:00
ceriel
82d5bad777
Added entry for LLgen documentation.
1984-10-08 15:00:23 +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
6cbb37051b
Initial revision
1984-10-08 14:11:42 +00:00
keie
550d1fa79e
New installation procedure:
...
1 - New place for binaries and libraries in the ACK tree.
2 - The ranlib action is moved to ../../install which tries it at
every action.
1984-10-08 14:09:28 +00:00
bal
46dc90f366
bug fixed: generate "add.l #65536,a1" rather than "lea 65536(a1),a1".
...
The latter form is only generated for constants that fit in a word.
1984-10-08 12:45:38 +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
1b251d6ab0
Removed the defines needed by util/ack/em_pc.c.
...
These defaults are now provided in lib/ack/fe.
1984-10-04 11:11:30 +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
00bd62d942
Corrected a small bug in the pc mapflags.
1984-10-04 10:54:11 +00:00
keie
0abe5e195e
1- Added RCS identification.
...
2- The pathnames of the Pascal compiler and Compile time-error file
are now always explicitly passed to em_pc.
1984-10-04 10:47:03 +00:00
keie
4c0687f68b
Altered to reflect the changes in em_path.h.
...
Now dynamically concatenes EM_DIR and error path.
1984-10-04 10:42:13 +00:00
keie
42be23b631
Altered the description of EM_HOME in em_path.h to that of
...
EM_DIR.
1984-10-02 16:24:59 +00:00
sater
13d6e6815e
added missing cast at call to regsave, in ms_gto case
1984-10-02 11:17:57 +00:00
sater
92aecb175c
changed definition of myalloc to extern
1984-10-02 10:31:06 +00:00
sater
a3f62d0255
added external definition for myalloc()
1984-10-02 10:30:44 +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
keie
083dccb299
Nill pointers are not allowed in CSA descriptors any more.
1984-10-01 16:05:17 +00:00
keie
1bea1c6883
Null pointer are not allowed any more for in-bound indeces in the CSA
...
table.
1984-10-01 14:54:09 +00:00
keie
6da6316680
Initial revision
1984-09-25 16:33:15 +00:00
keie
523134a5dc
Added National semiconductor assembler.
1984-09-25 16:32:45 +00:00
em
abb1fce8ff
1 - A few minor syntactic changes.
...
2 - Altered the description of strings as initializers. (sequence of U1's).
1984-09-25 11:06:29 +00:00
keie
6010f7b584
Made the buffer long enough for the machine state on most machines.
1984-09-24 15:18:20 +00:00
keie
a88bca3670
Initial revision
1984-09-24 15:18:07 +00:00
keie
95510f8b4c
Initial revision
1984-09-24 14:10:23 +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
bal
68a6231d11
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.
1984-09-12 13:21:43 +00:00
bal
ebed9d4804
unlk a6 added to restr().
1984-09-11 15:44:14 +00:00
keie
5895758914
Added ego, basic and callname conventions.
1984-09-10 17:34:04 +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
keie
c504e2e22a
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.
1984-09-10 16:37:11 +00:00
keie
31f96c6850
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).
1984-09-10 16:33:03 +00:00
keie
6eda6ac320
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.
1984-09-10 16:30:47 +00:00
keie
384bb7f6c4
Naming of the tempname is changed (see files.c).
1984-09-10 16:29:37 +00:00
keie
4c265a7cc6
Initial revision
1984-09-03 13:49:40 +00:00
sater
2bf16c5b2f
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.
1984-08-23 17:07:53 +00:00
keie
0d48be448f
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.
1984-08-23 13:33:11 +00:00
keie
f6b59970f6
The ACK tree on the vax has as default machine 'vax2'.
1984-08-23 13:27:14 +00:00
keie
1d463f136a
The missing trailing " trick is now also used for TMP_DIR.
1984-08-23 13:26:44 +00:00
keie
773f0aa626
The ms_gto is added. This is a trick used to indicate procedures
...
jumped to with gto.
1984-08-23 13:25:44 +00:00
keie
621f9f4ea9
*** empty log message ***
1984-08-23 13:20:59 +00:00
keie
198da9e822
Initial revision
1984-08-23 13:18:14 +00:00
keie
5db647e661
Initial revision
1984-08-23 13:00:32 +00:00
sater
3744019c53
increased MAXNODES in small memory mode
1984-08-23 12:25:24 +00:00
sater
5689e6ab64
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?
1984-08-17 15:35:28 +00:00
keie
4759d84bdd
Added comment.
1984-08-17 14:57:31 +00:00
keie
c2f189c855
Added RCS identification.
1984-08-17 14:44:24 +00:00
sater
822b1c557c
Revised to include rcsid of pattern file in binary opt
1984-08-16 16:08:39 +00:00
sater
744bc6845d
enlarged string table in big memory case
1984-08-16 13:34:59 +00:00
sater
ce098c78cb
added patterns to prevent stacking in *p++ cases
1984-08-15 16:05:54 +00:00
sater
d1b3479a55
added patterns to remove some more dup's
1984-08-15 16:04:19 +00:00
sater
e682a47599
added patterns for inc/dec/adp of local and external offsetted
...
This makes the getc() macro from C very efficient, among others
1984-08-15 14:31:54 +00:00
sater
eebcf1b22c
added patterns to remove as many dup's as possible.
1984-08-15 14:23:42 +00:00
sater
b31c9f4a4a
added definition of malloc().
...
Program crashed on 2/4 machines
1984-08-08 10:54:04 +00:00
sater
e41876f32a
reworked patterns for autoincrement stores, now that peephole optimizer
...
rearranged it.
1984-08-07 10:22:49 +00:00
sater
eff0f36a5d
added patterns for *p++ local and external p
...
added pattern to remove some badly placed dups
1984-08-03 16:37:15 +00:00
sater
6f8e6faa1f
added setcc calls to some incrementing ops
...
added patterns for indirect local and external increments
added patterns for loe ine and such
1984-08-03 16:33:40 +00:00
sater
59fa458a20
removed some superfluous patterns.
...
Were special cases not needed with the general case.
1984-08-03 13:16:59 +00:00
sater
ff9d23e4ec
A move from a nonreg to a reg did not have the effect that all
...
registers clashing with the destination were erased. Erase added.
1984-08-02 16:31:25 +00:00
keie
93672962a1
The name "unix" is now predefined for preprocessor usage.
1984-08-02 14:13:04 +00:00
sater
afc577b6c7
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.
1984-07-31 09:39:35 +00:00
keie
fe922d190d
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.
1984-07-30 14:42:33 +00:00
bal
6e519cf02b
bug fixed: added "fprintf(codefile,""rts\n");" to restr()
1984-07-30 12:47:54 +00:00
bal
f2e52892ac
bugs fixed (syntax errors, patterns moved to front,
...
"ldl ldl adp sdl sti" requires DATAREG instead of ANY1 on
fakestack)
1984-07-30 11:16:41 +00:00
bal
233b4aeee4
patterns added to generate autoincrement and to generate
...
a "move X,d0" instead of a "move X,-(sp)" before storing into X
1984-07-27 16:53:19 +00:00
sater
d90f26a8c5
added rcsid
1984-07-27 10:28:48 +00:00
sater
0b07016f0b
added PR* routines
1984-07-26 13:15:21 +00:00
sater
5894adfd67
Changed procedure prolog to use PR* routines.
1984-07-26 13:05:22 +00:00
keie
14a3683f85
*** empty log message ***
1984-07-23 11:49:00 +00:00
sater
eebc753306
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
1984-07-23 11:29:59 +00:00
sater
978dd0191a
removed blm.s, not used by table anymore
1984-07-20 16:20:54 +00:00
sater
5b20e4fed2
edited to make reentrant, no more globals in use
1984-07-20 16:20:28 +00:00
sater
c2f383773d
added copyright notice
1984-07-20 13:54:36 +00:00
sater
ebc7a50d8f
added rcsid
...
adapted to new archive updating style, with LIST and march and all that
1984-07-20 11:32:47 +00:00
sater
98c1d6868f
Initial revision
1984-07-20 11:25:31 +00:00
sater
c99e75a01b
added rcsid
1984-07-20 11:25:18 +00:00
sater
bb4210de79
added copyright notice
1984-07-20 11:20:12 +00:00
sater
b410ca7f8c
removed copyright notice, wasn't really *written* by us.
1984-07-20 11:07:12 +00:00
sater
25a8908e26
added rcsid
1984-07-20 11:03:31 +00:00
sater
597d25decd
Initial revision
1984-07-20 10:44:57 +00:00
sater
eb823929a1
A sti 8 of a regdef8 token went into panic mode. Fixed.
1984-07-20 10:32:48 +00:00
sater
ef248ee65e
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.
1984-07-19 16:50:27 +00:00
sater
e20ab23a4b
added rcsid
1984-07-19 15:03:30 +00:00
sater
5fb767966b
Initial revision
1984-07-19 15:01:43 +00:00
sater
3b991bd1ce
Archive made with archiver in environment ASAR if set, arch otherwise
1984-07-19 14:55:12 +00:00
sater
15e9fd8cd5
removed #ifdef UNTESTED around logical instructions without arguments,
...
seems they were used ( which implicitly means tested ) after all
1984-07-19 14:03:49 +00:00
sater
73d8f05fb5
Initial revision
1984-07-19 13:52:18 +00:00
sater
3ca5d2fcb6
added rcsid
1984-07-19 13:34:12 +00:00
sater
8483d153f2
changed name from comparchentry to compmodule
1984-07-19 13:22:36 +00:00
sater
b95f4c8bfd
Initial revision
1984-07-19 13:20:15 +00:00
sater
801226a45c
old code put back, now register handling is different again
...
actually old code never was removed, due to a misunderstanding
about comment conventions.
1984-07-19 13:12:03 +00:00
sater
f16fdf4e7f
makefile adapted to new style archive handling, RCS and all that
1984-07-19 13:11:36 +00:00
sater
d082a2b0a2
a setl instruction was changed to a setd
...
setl was just plain wrong
1984-07-19 13:09:53 +00:00
sater
d5aa088876
Initial revision
1984-07-19 12:51:00 +00:00
bal
8defe7ce53
rcsid added
1984-07-19 11:50:29 +00:00
bal
69584eb0ca
Initial revision
1984-07-19 11:50:28 +00:00
sater
1eade4ac9d
Initial revision
1984-07-19 11:50:18 +00:00
bal
da4092cbdf
New implementation of GTO (without register save masks)
...
several optimizations added
1984-07-19 11:15:28 +00:00
bal
c1fd560106
New implementation of GTO (without register save masks)
1984-07-19 11:07:15 +00:00
bal
17caf7129e
rcsid added
...
several optimizations added
1984-07-19 11:02:06 +00:00
bal
a520ccdbbc
rcsid added
...
clr.w -(sp) generated in prolog if register save mask is 0
1984-07-19 10:57:19 +00:00
bal
eeeff10a51
Initial revision
1984-07-19 10:03:10 +00:00
bal
c75693c35a
Initial revision
1984-07-19 09:37:24 +00:00
sater
e1aef765a0
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
1984-07-18 16:47:24 +00:00
sater
2943d957bb
The patterns to change a cii to cuu when dealing with a known positive
...
quantity was technically wrong. Changed to generate a cui.
1984-07-18 15:54:25 +00:00
sater
ec992b001c
added definition of index, to keep compiler happy
1984-07-18 14:14:46 +00:00
sater
8304ce5eae
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
1984-07-18 13:39:24 +00:00
sater
8af636a3c1
added rcsid
...
changed instruction label format to allow more than 256 procedures
1984-07-18 13:32:11 +00:00
sater
3169067979
changed instruction label format to allow more than 256 procedures
1984-07-18 13:28:01 +00:00
sater
a241500a91
added rcsid
...
converted to recognize and generate new 0%o format
1984-07-18 13:14:18 +00:00
sater
0473678491
added patterns for unsigned shifting
...
added patterns to delay additive operations until after multiplicative,
this can be useful for some register machines
1984-07-18 11:05:28 +00:00
sater
fc59a0d703
Improved error handling on unterminated strings
1984-07-18 11:04:58 +00:00