keie
3172abf70d
Re-introduced the possibility of a Varying EM_BSIZE
...
this to be able to use the latest STABLE m68k2 backend.
All this until the newest m68k2 version has been tested.
1985-01-24 16:59:06 +00:00
cvs2hg
b35b5b0c11
fixup commit for branch 'unlabeled-2.8.1'
1984-11-30 11:14:19 +00:00
ceriel
e8d88ed790
Increased MAXPATLEN to 8000.
1984-11-30 11:14:18 +00:00
bal
2d40a4fa61
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
0f77c7fb9f
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
83c3f45a29
Declaration of items[] made static to avoid name conflict with ra.c
1984-11-30 10:49:09 +00:00
bal
f84e129361
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
bf86a0f8ef
several data structures added (moved from types.h).
...
core allocation macros added.
1984-11-30 10:28:35 +00:00
bal
e7cbb5780b
Declarations for iv and code_info added (moved from types.h).
...
core allocation macros added.
1984-11-30 10:27:05 +00:00
bal
4a4b1ae156
core allocation macros added
1984-11-30 10:25:21 +00:00
bal
63e97ee535
declaration for sym,num and prc added (moved from types.h)
1984-11-30 10:24:21 +00:00
bal
b8817780f3
ic.h included before ic_lookup.h
1984-11-30 10:23:34 +00:00
bal
530c4d4c63
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
6a1b482c86
Lots of data structures removed and made local to one specific phase.
1984-11-30 10:14:30 +00:00
bal
d530ba1126
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
bcaecff14d
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
em
d568a6aca5
The routine salloc crashed on a 2/4 system.
...
Malloc was nor declared as "char *", but by default as int.
1984-11-30 00:16:29 +00:00
em
77fda75841
I removed the unused integer deftype.
...
Its name collided with an array in symbols.c.
1984-11-29 17:27:00 +00:00
em
92587276da
The definitions of lastline, currline and firstline are made
...
extern in graph.h. The space reserving declaration is made in
graph.c.
1984-11-29 17:26:44 +00:00
bal
b2dfaa494e
-O flag removed
1984-11-29 16:25:08 +00:00
bal
b231200eb7
macros newlvbx and oldlvbx added.
1984-11-29 15:10:11 +00:00
em
4c1ac6ad54
The first line should contain the distribution library name.
1984-11-29 15:03:41 +00:00
bal
d345f87d53
macros newlocal() and oldlocal() moved to alloc.h
1984-11-29 14:40:31 +00:00
em
3ef854719d
*** empty log message ***
1984-11-29 14:22:02 +00:00
bal
17cd5516a1
-O flag removed from CFLAGS
1984-11-29 13:33:33 +00:00
bal
a117b57ec9
-O removed from CFLAGS
1984-11-29 13:31:22 +00:00
bal
925f0be202
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
9ffcf24477
stdio.h included (required by new interface to get.h).
1984-11-29 11:06:23 +00:00
bal
bef1b25962
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
05de05abe7
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
54e3b3db4f
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
21c2208de6
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
41cd4c15fd
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
714b50f54b
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
2ac28f401c
putcall an putcc removed,
...
curoutp, outbyte,outshort and outoff exported.
1984-11-29 10:11:37 +00:00
bal
ba5ae63e87
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
2e1928a4eb
cleaned up
1984-11-28 09:26:44 +00:00
em
9a02327a2d
Installed basic compiler in ACK tree.
1984-11-27 23:59:28 +00:00
em
8c0394eea8
1 - Added RCS identification.
...
2 - Changed the file name parseparams.c into parsepar.c, the original
name was too long for RCS under BSD4.1
3 - Adapted to ACK standard Makefile format(cmp,install,...)
4 - Included more dependencies.
1984-11-27 23:53:31 +00:00
em
085069e600
Added basic.doc.
1984-11-27 23:51:07 +00:00
em
e30901a8c4
Added RCS identification.
1984-11-27 23:48:38 +00:00
em
5d2434ce92
*** empty log message ***
1984-11-27 23:46:32 +00:00
em
398a848925
Removed conflict between rcs_id in basic.yacc and lex.c.
1984-11-27 23:41:46 +00:00
em
dee952edfa
Now using ACK default tmp directory from em_path.h.
1984-11-27 23:21:41 +00:00
em
1ada89da2a
Added RCS identification.
1984-11-27 23:13:28 +00:00
em
02d10bc877
The version of basic copied from Martin Kerstens directory.
1984-11-27 22:23:55 +00:00
em
1046fc1eea
The version of basic copied from Martin Kerstens directory.
1984-11-27 22:11:59 +00:00
bal
b5e86c2482
Initial revision
1984-11-27 16:16:36 +00:00
bal
2ab7549af6
cleaned up
1984-11-27 15:52:23 +00:00
bal
85435303c8
stack_change was renamed stack_chg
1984-11-27 15:43:14 +00:00
bal
51eccf208f
Initial revision
1984-11-27 15:40:13 +00:00
bal
b27463bccd
"ivars" was renamed "ivvars" to avoid name conflict with sr_expr.c
1984-11-27 15:30:34 +00:00
bal
1d613c24af
cleaned up
1984-11-27 15:04:04 +00:00
bal
cc22bb4175
cleaned up; dependecies added.
1984-11-27 14:53:00 +00:00
bal
6a084edba7
cleaned up.
1984-11-27 14:25:02 +00:00
bal
e9b3f54f7c
cleaned up. use CC.
1984-11-27 14:23:20 +00:00
bal
ee4b1850bb
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
49a0e9c414
"cc" replaced by $(CC)
1984-11-27 12:59:18 +00:00
keie
56ba46b2bc
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
keie
cf20acf289
This manual page was not included in the first distribution.
...
This version is hacked from the VU-Pascal distribution.
1984-11-26 15:56:57 +00:00
bal
64ff1da3e4
Initial revision
1984-11-26 15:15:07 +00:00
bal
8e4156532d
Initial revision
1984-11-26 15:04:22 +00:00
bal
6e32042c52
Initial revision
1984-11-26 14:51:59 +00:00
bal
e551fa234e
Initial revision
1984-11-26 14:35:32 +00:00
bal
15aec67505
Initial revision
1984-11-26 14:14:55 +00:00
bal
03409fb772
Initial revision
1984-11-26 14:07:17 +00:00
bal
7fab127af3
Initial revision
1984-11-26 13:58:05 +00:00
bal
b4b66ce74f
Initial revision
1984-11-26 13:43:22 +00:00
sater
fff0d30a9a
added documentation for the fmt_id and fmt_ilb macros
1984-11-26 11:09:11 +00:00
sater
2c0619a13a
Added support for the fmt_id and fmt_ilb macros
1984-11-26 10:50:46 +00:00
sater
2601187207
In the RREMOVE section of this file, the field e_con of the
...
expression union was used in stead of e_reg.
Fixed. Checked all other occurrances, are correct.
1984-11-20 16:56:26 +00:00
sater
8d7aa4baad
The constant 512 slipped in instead of BUFSIZ.
...
Changed.
1984-11-20 10:22:12 +00:00
keie
6eaf938a14
Added a check for non-ascii characters in the description files.
1984-11-15 14:24:35 +00:00
ceriel
6d42bab835
Forgotten to close a file. This is corrected.
1984-11-12 18:05:20 +00:00
keie
2cd5f2033e
Added rcs identification.
1984-11-08 12:08:31 +00:00
keie
068dee8a06
Added a P for a specification of lal on line 51.
...
This missing letter caused lal -1 to be mapped on the opcode
for lal 0.
1984-11-08 11:11:31 +00:00
keie
85b1c8b043
Added a check. Minis & shorties need an N or P argument.
1984-11-08 11:09:56 +00:00
bal
a955307239
The routine con_float now generates a dummy floating point constant
...
and gives a warning, instead of generating a fatal error + abort.
1984-11-06 12:50:21 +00:00
bal
dea117397b
Patterns for floating point instruction and for LFR 8 and RET 8 added.
...
Each such instruction now results in a call to a library routine.
At present, all these routines generate an Illegal EM Instruction trap,
but anyone wishing to implement floating point for the 6502 can
do so without changing the back end table.
1984-11-06 12:47:26 +00:00
em
ac8dee35d0
The line with the user message for failure missed the call to echo.
1984-11-06 10:02:25 +00:00
bal
46a5c99978
make install also make a tail_mon now.
1984-11-05 15:58:11 +00:00
bal
77d2cc5222
arguments for asld changed. several libraries added.
1984-11-05 15:29:48 +00:00
bal
c4dee9c081
program for be is {LIB}/cg instead of {LIB}/be
1984-11-05 15:13:20 +00:00
keie
4a2029781a
*** empty log message ***
1984-11-05 15:11:19 +00:00
bal
6cde876c44
em_head renamed head_em; em_tail renamed tail_em
...
installs tail_em rather than comparing it
1984-11-05 15:06:49 +00:00
em
9adb899d09
Added an example with segment prefixes.
1984-11-05 15:02:32 +00:00
em
8c2dd5a6b5
Adapted to new tree shape for libraries and binaries.
1984-11-05 14:42:17 +00:00
em
73af9ae6cf
*** empty log message ***
1984-11-05 12:05:46 +00:00
em
783f95590f
*** empty log message ***
1984-11-05 11:55:15 +00:00
keie
d5399de251
The flag -LIB was missing in the call to the shell-procedure
...
compmodule. Thus the generated libraries could not be effectively
used by our assembler/linker.
1984-11-05 11:37:23 +00:00
bal
b94907a1fa
Negation of negative operand with inc/dec added in certain cases.
...
Don't know effect for sure, author has left.
Added rcsid.
1984-11-02 11:09:46 +00:00
bal
40fcf103bd
Initial revision
1984-11-02 10:13:29 +00:00
sater
7f230788d0
Name of error file was wrong, it was the runtime error file instead
...
of the compile time error file.
1984-11-01 09:30:36 +00:00
ceriel
f0445587cf
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
keie
a089216ae7
Adapted to make use of ../../compare and ../../install.
1984-10-26 12:58:15 +00:00
keie
150d744512
Initial revision
1984-10-26 12:54:35 +00:00
keie
e25887d5ca
Adapted to make use of ../../compare and ../../install.
1984-10-26 11:48:51 +00:00
keie
c0e66dc8d3
Initial revision
1984-10-26 11:48:13 +00:00
keie
61ab763c07
*** empty log message ***
1984-10-26 11:47:56 +00:00
keie
86f29918c8
Adapted to make use of ../../compare and ../../install.
1984-10-26 11:04:10 +00:00
keie
af335c7be5
*** empty log message ***
1984-10-26 11:01:40 +00:00
keie
2d11c4b2fe
Initial revision
1984-10-26 11:00:08 +00:00
ceriel
6fd15f62dc
Running makedepend again gave a difference.
1984-10-26 10:31:22 +00:00
ceriel
ca787ba372
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
keie
aa65dc9fbd
Adapted to use ../../install and ../../compare and hide knowledge
...
about final destination of libraries.
1984-10-26 10:25:32 +00:00
ceriel
ff47f2ee43
Added a "distr" entry, which will be propagated to the src directory.
1984-10-26 10:24:48 +00:00
keie
5be59d3ade
Adapted to make use of ../../compare.
1984-10-26 10:21:18 +00:00
keie
aa74e86069
Adapted to make use of ../../install and ../../compare.
1984-10-26 10:20:29 +00:00
keie
a915561735
Initial revision
1984-10-26 10:20:28 +00:00
keie
9f1edee15f
*** empty log message ***
1984-10-26 10:19:56 +00:00
keie
a17a987cb8
*** empty log message ***
1984-10-26 10:12:57 +00:00
keie
db9268bb08
Adapted to use install in ../..
1984-10-25 14:28:56 +00:00
keie
f064ac567e
Now using the compare script in ../..
1984-10-25 14:28:19 +00:00
keie
17504bb39a
Initial revision
1984-10-25 14:28:18 +00:00
keie
ad77d9eb14
*** empty log message ***
1984-10-25 14:24:43 +00:00
keie
558e2166ba
Altered the installation procedure.
...
The libraries etc. are now installed in lib/m68k2 using install in ../..
1984-10-25 14:22:53 +00:00
keie
c71656ab19
Altered to make use of ../../install and ../../compare.
1984-10-25 14:19:58 +00:00
keie
23cf9b8443
Initial revision
1984-10-25 14:19:57 +00:00
keie
44b78ad38d
*** empty log message ***
1984-10-25 14:15:27 +00:00
keie
386c0d6e1a
Now making use of ../../install and ../../compare.
1984-10-25 14:10:00 +00:00
keie
046ee8050f
Adapted to make use of compare in ../..
1984-10-25 11:40:16 +00:00
keie
1154d87f41
Adapted to make use of install and compare in ../..
1984-10-25 11:39:39 +00:00
keie
0c16a79a37
*** empty log message ***
1984-10-25 11:39:38 +00:00
keie
f177d69279
Adapted to make use of install and compare in ../..
1984-10-25 11:27:08 +00:00
keie
a4368ea2d1
*** empty log message ***
1984-10-25 11:25:22 +00:00
keie
675d30712d
Removed the definition of LIBDIR, it is superfluous.
1984-10-25 11:16:31 +00:00
keie
209801cac1
Adapted to make use of install and compare in ../..
1984-10-25 11:16:30 +00:00
keie
9c57272ef9
Initial revision
1984-10-25 11:15:20 +00:00
keie
01f22b3870
Moved the include directory from mach/ibm/include to lib/ibm/include.
1984-10-25 11:00:06 +00:00
keie
6ade85f76e
Adapted to use compare in ../..
1984-10-25 10:46:32 +00:00
keie
0349b620cd
Adapted to compare in ../..
1984-10-25 10:45:22 +00:00
keie
6001a4462e
Initial revision
1984-10-25 10:45:21 +00:00
keie
0d853f8c4b
*** empty log message ***
1984-10-23 15:29:53 +00:00
keie
e5277be072
Initial revision
1984-10-23 15:29:30 +00:00
keie
cc246efa46
We have only one copy of the script for compare and install now
...
they are present in ../..
1984-10-23 15:14:17 +00:00
sater
2fe95a276d
changed EM_WSIZE to TEM_WSIZE
1984-10-23 15:10:15 +00:00
sater
628d3da626
changed references to EM_?SIZE to TEM_?SIZE
1984-10-23 15:04:24 +00:00
sater
a5c07a52b4
changed EM_WSIZE to TEM_WSIZE
1984-10-23 15:02:03 +00:00
sater
43c97f0d41
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
24eeca9474
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
7eef0e0b59
added rcsid(again). Who took that away?
1984-10-16 13:45:16 +00:00
sater
9d03cb68c7
added code to generate code for ACK assembler.
...
Works if ACK_ASS is defined.
1984-10-16 13:31:44 +00:00
ceriel
d89d5770b1
Had forgotten to initialise the line number on which a nonterminal
...
symbol occurred first.
1984-10-12 14:19:34 +00:00
ceriel
f6d9a497eb
No changes
1984-10-11 21:35:58 +00:00
ceriel
bac12b0c46
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
e13ebaad9e
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
315806b282
Initial revision
1984-10-09 10:36:29 +00:00
ceriel
43de6c3b78
added "#ifdef NORCSID"
1984-10-09 10:16:33 +00:00
ceriel
0ec009bde2
Added some comments and removed some Lint complaints
1984-10-09 10:13:46 +00:00
ceriel
0f8a2d3a39
Initial revision
1984-10-09 09:47:14 +00:00
ceriel
b5402db333
The routine LLmessage did not insert tokens properly.
...
This is corrected now.
1984-10-09 09:33:37 +00:00
ceriel
4f5c40c608
Changed RCSid
1984-10-08 17:11:03 +00:00
ceriel
2055a65cae
Added RCSid.
1984-10-08 16:21:03 +00:00
ceriel
ed6a7245bd
Adapted the libpath routine to use EM_DIR from ../../../h/em_path.h
1984-10-08 15:58:23 +00:00
ceriel
2cd6c03840
Added entry for LLgen.
1984-10-08 15:20:54 +00:00
ceriel
c38d1013cb
Initial revision
1984-10-08 15:19:18 +00:00
ceriel
6da013b55a
Added entry for LLgen documentation.
1984-10-08 15:00:23 +00:00
ceriel
e3eae54592
Initial revision
1984-10-08 14:51:38 +00:00
ceriel
7cc3184392
Initial revision
1984-10-08 14:24:19 +00:00
ceriel
952ba464cc
Initial revision
1984-10-08 14:14:53 +00:00
keie
08b7ec6600
Initial revision
1984-10-08 14:11:42 +00:00
keie
f918aa20fe
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
54bac1caaf
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
504da3a54d
Altered the test path lib/n_ack into the normal path ACK_PATH.
1984-10-05 15:07:47 +00:00
keie
36cca2b9c7
Added a priority associated with each phase. Paths with the highest
...
total priority have preference.
1984-10-05 13:34:38 +00:00
keie
6f8a00ee5c
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
ca275f5d22
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
150c8164af
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
70975146a1
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
962cc80686
Corrected a small bug in the pc mapflags.
1984-10-04 10:54:11 +00:00
keie
f6ecbec936
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
8128e3d82d
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
ea86ccd217
Altered the description of EM_HOME in em_path.h to that of
...
EM_DIR.
1984-10-02 16:24:59 +00:00
sater
045ccfaeba
added missing cast at call to regsave, in ms_gto case
1984-10-02 11:17:57 +00:00
sater
a6b69be622
changed definition of myalloc to extern
1984-10-02 10:31:06 +00:00
sater
50d77d903a
added external definition for myalloc()
1984-10-02 10:30:44 +00:00
keie
cbf6d06de2
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
bb0ff814f6
Nill pointers are not allowed in CSA descriptors any more.
1984-10-01 16:05:17 +00:00
keie
f80b30bdbb
Null pointer are not allowed any more for in-bound indeces in the CSA
...
table.
1984-10-01 14:54:09 +00:00
keie
7f6105c294
Initial revision
1984-09-25 16:33:15 +00:00
keie
1f59bd7223
Added National semiconductor assembler.
1984-09-25 16:32:45 +00:00
em
8f7669b247
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
f950163854
Made the buffer long enough for the machine state on most machines.
1984-09-24 15:18:20 +00:00
keie
38b8391594
Initial revision
1984-09-24 15:18:07 +00:00
keie
e88fe13466
Initial revision
1984-09-24 14:10:23 +00:00
em
e29ef2395a
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
546bcee023
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
a9beb24998
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
96da898a4a
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
a69b503ad0
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
5fd55904ec
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
195c808f88
unlk a6 added to restr().
1984-09-11 15:44:14 +00:00
keie
50e3b4fe4a
Added ego, basic and callname conventions.
1984-09-10 17:34:04 +00:00
keie
f366afdae1
No comment.
1984-09-10 16:51:02 +00:00
keie
c08fe56b97
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
ed3db93f56
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
71dc6af5a8
The input file names of the linker are to be found in a different place.
1984-09-10 16:45:12 +00:00
keie
cfdc2ce05f
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
845c92825a
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
3adba1b759
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
ea6c20f5d1
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
d99b36abf8
Naming of the tempname is changed (see files.c).
1984-09-10 16:29:37 +00:00
keie
93693877be
Initial revision
1984-09-03 13:49:40 +00:00
sater
2aa5c6b7d9
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
bbc3cb33cc
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
77ebfceac5
The ACK tree on the vax has as default machine 'vax2'.
1984-08-23 13:27:14 +00:00
keie
3d10bd6e59
The missing trailing " trick is now also used for TMP_DIR.
1984-08-23 13:26:44 +00:00
keie
03a31cf3fc
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
81267df9ad
*** empty log message ***
1984-08-23 13:20:59 +00:00
keie
113cf23e0f
Initial revision
1984-08-23 13:18:14 +00:00
keie
3154365fff
Initial revision
1984-08-23 13:00:32 +00:00
sater
e006f1ec29
increased MAXNODES in small memory mode
1984-08-23 12:25:24 +00:00
sater
1c36c470db
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
1da13e49e1
Added comment.
1984-08-17 14:57:31 +00:00
keie
f077a39568
Added RCS identification.
1984-08-17 14:44:24 +00:00
sater
6474db065f
Revised to include rcsid of pattern file in binary opt
1984-08-16 16:08:39 +00:00
sater
10b16f7c76
enlarged string table in big memory case
1984-08-16 13:34:59 +00:00
sater
1ff6c3236f
added patterns to prevent stacking in *p++ cases
1984-08-15 16:05:54 +00:00
sater
19b13e8e4f
added patterns to remove some more dup's
1984-08-15 16:04:19 +00:00
sater
e5d1aebbae
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
b23de46c3a
added patterns to remove as many dup's as possible.
1984-08-15 14:23:42 +00:00
sater
9bdd1abf9a
added definition of malloc().
...
Program crashed on 2/4 machines
1984-08-08 10:54:04 +00:00
sater
6180399964
reworked patterns for autoincrement stores, now that peephole optimizer
...
rearranged it.
1984-08-07 10:22:49 +00:00
sater
db0822fa37
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
11026ace27
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
76281fa307
removed some superfluous patterns.
...
Were special cases not needed with the general case.
1984-08-03 13:16:59 +00:00
sater
dbcebe6e4c
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
8a4d834bc6
The name "unix" is now predefined for preprocessor usage.
1984-08-02 14:13:04 +00:00
sater
925701dc62
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
385d7ffbd8
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
e1c24cb475
bug fixed: added "fprintf(codefile,""rts\n");" to restr()
1984-07-30 12:47:54 +00:00
bal
964976ff0b
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
4eea24fe69
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
811bc78f04
added rcsid
1984-07-27 10:28:48 +00:00
sater
b07af506d6
added PR* routines
1984-07-26 13:15:21 +00:00
sater
5e97bff353
Changed procedure prolog to use PR* routines.
1984-07-26 13:05:22 +00:00
keie
c001aa20d7
*** empty log message ***
1984-07-23 11:49:00 +00:00
sater
61da47ea52
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
d6a3a26314
removed blm.s, not used by table anymore
1984-07-20 16:20:54 +00:00
sater
eca6c1f306
edited to make reentrant, no more globals in use
1984-07-20 16:20:28 +00:00
sater
189e577315
added copyright notice
1984-07-20 13:54:36 +00:00
sater
8b9ebd989f
added rcsid
...
adapted to new archive updating style, with LIST and march and all that
1984-07-20 11:32:47 +00:00
sater
182f3ee338
Initial revision
1984-07-20 11:25:31 +00:00
sater
8707eb1715
added rcsid
1984-07-20 11:25:18 +00:00
sater
9935b1fc88
added copyright notice
1984-07-20 11:20:12 +00:00
sater
06249087bd
removed copyright notice, wasn't really *written* by us.
1984-07-20 11:07:12 +00:00
sater
5e3c08728c
added rcsid
1984-07-20 11:03:31 +00:00
sater
f54556ac0f
Initial revision
1984-07-20 10:44:57 +00:00
sater
1a0102783f
A sti 8 of a regdef8 token went into panic mode. Fixed.
1984-07-20 10:32:48 +00:00
sater
1e5056bcc0
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
96e8152f11
added rcsid
1984-07-19 15:03:30 +00:00
sater
7683ff7d03
Initial revision
1984-07-19 15:01:43 +00:00
sater
309ed81674
Archive made with archiver in environment ASAR if set, arch otherwise
1984-07-19 14:55:12 +00:00
sater
badfdeb5db
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
ea793ccff5
Initial revision
1984-07-19 13:52:18 +00:00
sater
3c037725e9
added rcsid
1984-07-19 13:34:12 +00:00
sater
b28024573a
changed name from comparchentry to compmodule
1984-07-19 13:22:36 +00:00
sater
320c575b54
Initial revision
1984-07-19 13:20:15 +00:00
sater
1e806d2a28
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
18d72ffde3
makefile adapted to new style archive handling, RCS and all that
1984-07-19 13:11:36 +00:00
sater
53c19368d5
a setl instruction was changed to a setd
...
setl was just plain wrong
1984-07-19 13:09:53 +00:00
sater
fa6f4b86e3
Initial revision
1984-07-19 12:51:00 +00:00
bal
0f199294ae
rcsid added
1984-07-19 11:50:29 +00:00
bal
ff6056a6b6
Initial revision
1984-07-19 11:50:28 +00:00
sater
92c1e38b42
Initial revision
1984-07-19 11:50:18 +00:00
bal
8bbb3ddca7
New implementation of GTO (without register save masks)
...
several optimizations added
1984-07-19 11:15:28 +00:00
bal
8fef858ce8
New implementation of GTO (without register save masks)
1984-07-19 11:07:15 +00:00
bal
39428d2028
rcsid added
...
several optimizations added
1984-07-19 11:02:06 +00:00
bal
e5895a2768
rcsid added
...
clr.w -(sp) generated in prolog if register save mask is 0
1984-07-19 10:57:19 +00:00
bal
250f0df7f7
Initial revision
1984-07-19 10:03:10 +00:00
bal
85c15fca29
Initial revision
1984-07-19 09:37:24 +00:00
sater
3422e2338c
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
e92ac2c6d3
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
35fbddd030
added definition of index, to keep compiler happy
1984-07-18 14:14:46 +00:00
sater
c65b0f7044
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
84fca60378
added rcsid
...
changed instruction label format to allow more than 256 procedures
1984-07-18 13:32:11 +00:00
sater
7c5508ddbd
changed instruction label format to allow more than 256 procedures
1984-07-18 13:28:01 +00:00
sater
d33e4ac474
added rcsid
...
converted to recognize and generate new 0%o format
1984-07-18 13:14:18 +00:00
sater
0a4d372056
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
f98fe503a0
Improved error handling on unterminated strings
1984-07-18 11:04:58 +00:00
sater
4410480e32
added -f flags to all calls to rm
1984-07-16 15:29:48 +00:00
sater
97b50be407
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 )
1984-07-16 14:39:21 +00:00
keie
f3d3393af3
*** empty log message ***
1984-07-16 09:36:12 +00:00
keie
32f55c5462
Added z8000 assembler manual.
1984-07-16 09:32:22 +00:00
sater
42c556cc1f
added missing #endif
...
added two patterns, big improvement
added patterns for ciu and cui
some cosmetic change
1984-07-13 16:13:56 +00:00
keie
edcf39e999
*** empty log message ***
1984-07-13 15:20:58 +00:00
keie
ac940fe687
Added lines for DECUS cpp manual.
1984-07-13 15:19:19 +00:00
keie
a618660635
The check for a too high offset in a hol is repaired.
1984-07-13 15:03:05 +00:00
keie
965a2fa352
A bug in the exchange was repaired.
...
Exchanges across pseudo-instructions didn't work properly.
1984-07-13 15:01:23 +00:00
sater
d8238383ca
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.
1984-07-13 14:55:37 +00:00
sater
f33edd402e
Initial revision
1984-07-13 11:25:46 +00:00
sater
a4f3d3c503
Initial revision
1984-07-13 11:12:23 +00:00
sater
d1994a651b
changed format of rcsid message
1984-07-12 15:18:13 +00:00
sater
ba79fb2a37
Initial revision
1984-07-12 15:16:23 +00:00
sater
743bbb551f
added rcsid
1984-07-12 14:55:49 +00:00
sater
df7b70c37e
changed explanation of .base pseudo
...
added rcsid
1984-07-12 14:55:22 +00:00
sater
58170d17d2
added rcsid
...
added lines for formatting new manuals
1984-07-12 14:53:30 +00:00
sater
b758fc47aa
*** empty log message ***
1984-07-12 14:51:48 +00:00
sater
d608d58ad1
Initial revision
1984-07-12 14:14:54 +00:00
sater
cb1d7f7e96
*** empty log message ***
1984-07-12 14:08:27 +00:00
sater
0ae1957f80
added rcsid
1984-07-12 14:07:14 +00:00
sater
3671970cc5
added rcsid
...
added compilation of tstgto.p
1984-07-12 14:05:03 +00:00
sater
463090c3a4
Initial revision
1984-07-12 13:50:44 +00:00
keie
e1666e49b0
asprint is removed at cleanup time.
1984-07-12 13:24:02 +00:00
keie
3d2f1d3690
1 - Dump has a parameter.
...
2 - Dump are enabled.
1984-07-12 13:23:03 +00:00
keie
06a8899eec
1 - A header is treated as an unsigned number.
...
2 - The low order word of the size in archives is fetched as unsigned.
3 - Sizes are unsigned.
1984-07-12 13:20:48 +00:00
keie
3565805b63
Parameter added to dump preprocessor variable.
1984-07-12 12:58:18 +00:00
keie
207bd9dcf7
1 - Header fetch was changed to unsigned.
...
2 - Extra parentheses are needed by some compilers.
1984-07-12 12:57:36 +00:00
keie
e2482166f7
Initial revision
1984-07-12 12:48:33 +00:00
sater
af88eafe02
removed REGPATCH define
1984-07-12 11:03:18 +00:00
sater
8f9fb0ad77
added definition of newplb()
...
removed a tab from some string
1984-07-12 11:02:44 +00:00
sater
8a6604f224
Removed unbalanced quotes in comments, needed for new cpp
1984-07-12 10:50:47 +00:00
sater
6c021a0800
reworked to use ack instead of npc.
...
made more user-friendly (ha ha)
1984-07-12 10:42:33 +00:00
sater
2eeeba3225
Now lexical analyzer skips lines starting with #
...
to kill off remnants of some preprocessor.
1984-07-12 10:18:19 +00:00
sater
c79d077c3f
added description of newplb macro.
...
Enlarged an example.
1984-07-12 10:13:56 +00:00
sater
6a1228a5cd
The sequence:
...
lin 100
cal $foo
lin 101
used to have it's second lin lni'ed. This is obviously wrong.
A check is now made for procedure calls.
1984-07-12 09:29:49 +00:00
sater
b2d4b9d42d
Replaced call to newilb after pro pseudo to call to newplb,
...
including retrofit for existing mach.h files
1984-07-12 09:26:24 +00:00
sater
60b6d9c00d
Increased MAXINSTANCE in big memory model
1984-07-12 09:23:38 +00:00
keie
00a6b2f4c6
Added the entries for instructions with 32-bit arguments.
1984-07-02 16:04:26 +00:00
keie
0a797a2688
1 - added routines to read unsigned 16-bit numbers
...
2 - cleanup of writing of ABS block, was in error for wordsize>4.
3 - strings are now padded up to a multiple of the wordsize.
4 - the padding algorithm for alignment was in error for wordsize>2.
1984-07-02 16:01:50 +00:00
keie
2e3eb2f103
Not in the initial distribution.
1984-07-02 15:46:59 +00:00
keie
5ce6138a58
Added asprint to list of files to remove with 'clean'.
1984-07-02 15:46:06 +00:00
keie
82d0bd9091
1 - Altered an incorrect dependency for assrl.o
...
2 - Added asprint
1984-07-02 15:42:37 +00:00
keie
e1466b3e09
Initial revision
1984-07-02 15:35:56 +00:00
sater
51243ce443
Initial revision
1984-07-02 11:26:53 +00:00
sater
c6790d4142
Initial revision
1984-07-02 10:45:13 +00:00
sater
9a91288da9
Added missing .DE macro
1984-06-29 14:51:23 +00:00
sater
79d76cf153
Changed all occurrences of -ms into a macro $(MS)
1984-06-29 14:50:23 +00:00
sater
2a026953ff
Initial revision
1984-06-29 14:46:39 +00:00
sater
fb9cd1ed17
Initial revision
1984-06-29 11:29:28 +00:00
sater
3efa053ae7
Initial revision
1984-06-29 11:21:50 +00:00
sater
f5b641009b
Initial revision
1984-06-29 11:00:55 +00:00
sater
f3f3069f54
Fixed bug: after BRA instruction was optimized away the variable lastbra
...
pointed to the instruction following. This could lead to anything,
including bus errors. Lastbra is now reset to 0.
Bug discovered at Philips PMDS by Hans de Vries. The fix is also his.
Actually the function cleaninstr should be rewritten.
1984-06-28 10:40:09 +00:00
sater
ef3aa6fa57
added rcsid
1984-06-26 10:08:37 +00:00
sater
380aa1515e
Initial revision
1984-06-26 10:03:31 +00:00
sater
2af94af5c6
Initial revision
1984-06-25 16:22:03 +00:00
sater
af55840493
Initial revision
1984-06-25 11:02:34 +00:00
em
3afc39c1ea
The name cpp.new for the alternative C-preprocessor is
...
no longer needed.
1984-06-21 13:16:26 +00:00
keie
abde37e1fc
artificial commit to compensate for changes in 93f3093f2b7e from a CVS
...
vendor branch
1984-06-21 13:13:10 +00:00
em
a8ee954405
Assembler peephole optimizer added.
1984-06-21 13:09:51 +00:00
keie
dc3874ad9d
Ack assumed that files resulting from transformations
...
would not need to be fed through a pre-processor.
This assumption proved false. Ack was altered and allows
use of a pre-processor on files produced by other passes.
1984-06-21 11:29:22 +00:00
keie
c74da38c3d
Adapted to use the new backend.
1984-06-21 11:26:10 +00:00
keie
f13d0d6c3e
Adapted to the new C preprocessor that does NOT have
...
ANY default include directories like /usr/include.
1984-06-21 11:25:05 +00:00
keie
0c1ac8e7dd
Initial revision
1984-06-21 11:24:08 +00:00
em
580b5f5d7f
Added warning about forthcoming shift/reduce conflict
1984-06-21 11:13:28 +00:00
keie
1568cd2dbc
The slightly altered error message format greatly
...
enhances use of the pascal compiler under emacs.
1984-06-21 11:10:16 +00:00
keie
05aa585c9a
Also remove the program, it should be installed by now.
1984-06-21 11:09:51 +00:00
keie
80c6a9c771
Initial revision
1984-06-21 11:09:15 +00:00