Commit graph

2192 commits

Author SHA1 Message Date
em 89a37681fc *** empty log message *** 1985-04-22 14:12:26 +00:00
bal d0e857ddb2 Initial revision 1985-04-18 15:14:37 +00:00
bal 928e341f16 Bug fixed: incorrect return value
New version adapted from m68k4 version.
1985-04-18 15:12:29 +00:00
bal 3759de23eb Extra systems calls added 1985-04-18 15:12:06 +00:00
ceriel 9c9976c121 Er zat een bug in het patroon
lol adp stl met $1 < 0.
Ten onrechte werd in de gegenereerde code het AP register gebruikt.
Dit moest natuurlijk FP zijn.
1985-04-17 13:38:36 +00:00
keie eb3fc1d43e Added provision to print (possibly in mach.h defined) modhead
on the output assmble file as the very first text.
1985-04-16 16:14:55 +00:00
bal 7b745d6fb2 Bug fixed for pattern 'sti $1 > 4' (ADDREG -> ADDSCR)
Bug was present since version 1.1
1985-04-16 15:24:23 +00:00
keie f337b8df6d Removed RANLIB . 1985-04-14 14:27:04 +00:00
em 8b4f21bd95 Added libraries needed after installation of cg. 1985-04-14 13:57:31 +00:00
em ab820d3083 8080->i80. 1985-04-14 13:54:33 +00:00
em fb23d440f0 Removed a superfluous line. 1985-04-14 13:46:54 +00:00
em bd07643039 To prevent a (incorrrect) error message from distr/mktree. 1985-04-12 20:32:06 +00:00
keie 34ccddfc2d The library name was incorrect. 1985-04-12 17:21:52 +00:00
keie c19324dfea *** empty log message *** 1985-04-12 17:06:38 +00:00
keie 772b64fabd *** empty log message *** 1985-04-12 16:56:43 +00:00
keie ef92740400 Deletion of a few coercions caused a translation failure
for setjmp.e.
The coercions have been grabbed from an old version by FvH.
1985-04-12 16:43:40 +00:00
keie ee9c5be180 Initial revision 1985-04-12 16:40:22 +00:00
bal ca9a6feeb0 floating point stuff added 1985-04-12 15:47:30 +00:00
em fb6d291d38 *** empty log message *** 1985-04-12 14:33:09 +00:00
em e4e29ae837 Added flp.s, contains subroutines for all EM fp instructions.
They trap.
1985-04-12 14:29:07 +00:00
em 94534b7c15 1- Floating point routines now call routines instead of calling trp. 1985-04-12 14:25:59 +00:00
keie dcfe4e8a97 *** empty log message *** 1985-04-09 13:48:55 +00:00
keie 620216fb26 Error code 0 was returned when the installation failed! 1985-04-02 10:55:02 +00:00
keie 70d71f4355 Copy of ../libbc/compmodule. 1985-04-02 10:50:53 +00:00
keie 6b87f1082e Removed -DCPM. 1985-04-02 10:46:43 +00:00
em fd44c34a61 *** empty log message *** 1985-04-01 17:02:55 +00:00
keie 6c247029bd *** empty log message *** 1985-04-01 14:44:26 +00:00
keie 6bbdb92784 Adapted after installation of backend. 1985-04-01 14:02:58 +00:00
em 1879c8e724 *** empty log message *** 1985-03-29 21:44:50 +00:00
em 693830b09a *** empty log message *** 1985-03-29 21:10:43 +00:00
keie b3d11b1fa5 Removed pascal library. 1985-03-26 16:27:23 +00:00
keie 2b6187a009 *** empty log message *** 1985-03-26 16:23:21 +00:00
keie a8fc6009f7 The dl programs is replaced by a more general cv. 1985-03-26 16:20:11 +00:00
keie 92141b52ce Installed backend and libraries. 1985-03-26 16:18:24 +00:00
keie b63f304db1 Or's are not allowed on a-registers, add's are. 1985-03-26 16:09:07 +00:00
keie ec3e755168 Adapted to Unisoft signal handling. 1985-03-26 16:08:09 +00:00
keie a41ff68078 *** empty log message *** 1985-03-26 15:04:46 +00:00
keie 244e172413 Added head_em. 1985-03-26 15:04:02 +00:00
keie da936740a6 Added head_em to libsys. 1985-03-26 15:00:09 +00:00
keie c5a739c68f Moved head_em to libsys. 1985-03-26 14:53:00 +00:00
keie dc92fe358e *** empty log message *** 1985-03-26 14:48:32 +00:00
keie 59996174b6 Added some more system calls.
Moved errno to a separate file.
1985-03-21 14:13:55 +00:00
keie 84f9364d4c errno is moved to a sfile of its own. 1985-03-21 14:05:03 +00:00
keie a635fb0203 *** empty log message *** 1985-03-21 14:04:45 +00:00
em e3e1c5ac20 *** empty log message *** 1985-03-18 17:27:42 +00:00
em e3e9add8b1 Initial revision 1985-03-18 17:24:31 +00:00
em ffd0d165a7 *** empty log message *** 1985-03-18 15:52:00 +00:00
em 3e743d78f3 *** empty log message *** 1985-03-18 14:39:26 +00:00
em 90c847ca59 *** empty log message *** 1985-03-18 14:32:46 +00:00
em 1b162c577e *** empty log message *** 1985-03-18 13:46:31 +00:00
em a5f4b01d82 Initial revision 1985-03-18 13:15:00 +00:00
em c5508c7c0b *** empty log message *** 1985-03-18 13:12:07 +00:00
garde 80e349860b Added RCS id. 1985-03-18 12:55:07 +00:00
em 157b243956 *** empty log message *** 1985-03-18 12:46:51 +00:00
garde d52117c8dd Some less important changes 1985-03-18 10:00:30 +00:00
keie d457c50945 The universal assembler has a bug that precludes use of .align
in text segments, except as the very last command.
1985-03-15 11:03:41 +00:00
keie b294ab5042 The universal assembler has a bug that precludes use of .align
in text segments, except as the very last command.
1985-03-15 10:50:35 +00:00
em 9d0812746b The assembler proved to contain yet another bug.
.align in text segments will not work for values that are
not a divisor of the gcd of the instruction sizes.
1985-03-14 17:33:28 +00:00
em 9f203c9a17 Expressions are now always calculated in long.
Some backends needed that.
1985-03-12 10:41:29 +00:00
em 0c92039ba4 Expression are always evaluated in longs.
Some 2-4 backends needed long expressions.
1985-03-12 10:39:24 +00:00
em cf6d084155 Use of the Pascal library will not occur.
/.
1985-03-12 10:24:51 +00:00
bal 954d3a0326 Argument is 4 bytes (pointer), not 2 bytes. 1985-03-05 12:33:29 +00:00
keie 6f6356e0b4 Initial revision 1985-03-05 00:17:40 +00:00
keie 9e26d0e0c0 *** empty log message *** 1985-03-05 00:15:40 +00:00
keie bf3ba84e92 Adapted to 4-4. 1985-03-04 17:26:31 +00:00
keie ccdb8693ee Now using 4-byte integers and clearing D1 for double size
instruction pointers.
1985-03-04 16:12:10 +00:00
keie a8c5699241 Now returns correct values. 1985-03-04 16:11:56 +00:00
keie e0c4e4b686 Added execv and execle. 1985-03-04 16:11:41 +00:00
keie 8a40c25069 Now using .reghp. 1985-03-04 16:11:26 +00:00
keie 0fd729951a Removed superfluous instruction. 1985-03-04 16:10:47 +00:00
keie 7a30dc4868 *** empty log message *** 1985-03-04 16:08:41 +00:00
keie 4b1965afbc *** empty log message *** 1985-03-04 15:55:28 +00:00
keie b2b281f525 To force the first part of a circular ring of modules in from
tail_em.
/.
1985-03-04 15:37:38 +00:00
keie d2a6847715 The previous version still assumed two-byte integers. 1985-03-04 15:33:28 +00:00
keie 2690f07cbd Incorrect alignment caused odd _end, which caused
failures of malloc().
1985-03-04 15:30:44 +00:00
keie aa82964563 Now also prints stack height. 1985-03-04 15:29:36 +00:00
keie c636aba734 Alignment now also works when the alignment ended on odd boundaries. 1985-03-04 15:28:02 +00:00
keie ce92663b0a Initial revision 1985-03-04 15:27:09 +00:00
keie a89ba7074f Always returned non-zero value. 1985-03-04 15:25:33 +00:00
keie a71e706aa4 *** empty log message *** 1985-03-04 15:14:01 +00:00
garde 736a2d1022 Many things improved and extended 1985-03-04 13:42:38 +00:00
keie 9d7b94ba34 Adapted to a single cv for all machines. 1985-03-01 22:10:44 +00:00
keie 218f7ed718 Corrected a horrible typing mistake. 1985-03-01 20:08:45 +00:00
keie cb0b2e08cf 1 - At RREMOVE also check the stack set aside for coercions.
2 - When coercions unexpectedly need stack of part of the
stakpattern, discontinue this option.
1985-03-01 16:25:21 +00:00
keie c2a990768d The top of the stack, which is set aside for certain
coercions is now saved with special routines.
This allows RREMOVE to check for registers.
1985-03-01 16:20:13 +00:00
keie 36537eccc0 Also clear D1 (for static link). 1985-03-01 16:00:23 +00:00
keie 6cdcb391fb Added RCS ID. 1985-03-01 10:34:00 +00:00
keie 9d9c9ae97b *** empty log message *** 1985-03-01 10:30:23 +00:00
keie e7f7f33f60 cg tried to stack register parameters of moves, when
these registers were killed.
1985-02-26 16:31:38 +00:00
keie 408dacc2aa The stacking pattern for ldc C and 4 with highw(c)==0 was incorrect.
The effect was that rand() from libcc/gen always returned
a 0.
1985-02-19 13:41:30 +00:00
keie 445d52de66 Moved retar from ret.s to trp.s.
trp.s needed it and is behind ret.s in the library.
When ret.s is loaded, it calls (via unknown) trp.s so
inclusion in trp.s should work.
1985-02-17 22:31:10 +00:00
keie b82c00e153 Added a line for
loc loc cuu $1==$1, because write.e contained the line
loc 2
loc 2
ciu
and the cg failed to translate.
1985-02-17 22:03:44 +00:00
em bbfb511322 Added .align 2. Prevents end of bss to be odd.
Especially important for malloc, it distinguishes between
odd and even word pointers.
1985-02-17 01:12:36 +00:00
cvs2hg 3f3bddef8f fixup commit for tag 'dist2' 1985-02-17 00:57:20 +00:00
keie 9f45dd0650 Added .align 2.
Especially important for malloc.
1985-02-17 00:57:19 +00:00
keie 14875e6ca5 *** empty log message *** 1985-02-16 16:48:18 +00:00
em d32de5df93 Now chooses between Vax and Pdp conversion. 1985-02-16 15:58:34 +00:00
keie eeb944f6e3 The assembler is used for both 2/4 and 4/4. 1985-02-16 15:49:03 +00:00
em 4f80e81ee7 *** empty log message *** 1985-02-15 22:53:13 +00:00
keie 2a4335787e Adfded RCS id. 1985-02-12 14:37:52 +00:00
keie 1b5278f3d4 As left by Hans v. Staveren. 1985-02-12 14:32:20 +00:00
keie 815b0e0f0f *** empty log message *** 1985-02-12 14:20:30 +00:00
keie 70c000b03e Now using the same em.c as in m68k2/int.
The interpreters are moved from pdp/pdp_int (or some such)
to lib/int22.
1985-02-12 13:11:27 +00:00
keie f59262745e Initial revision 1985-02-12 12:54:44 +00:00
keie 0122bc2dd7 *** empty log message *** 1985-02-07 22:59:50 +00:00
keie c0085c2dd4 A list without double entries, for the moment supposing
that trp,etc always gets loaded, so will be there when .dvu needs it.
1985-02-07 22:51:12 +00:00
keie 00d75279e7 d2 contains the remainder of dvu i.s.o. d3. 1985-02-07 22:26:11 +00:00
keie c0d87aaa16 *** empty log message *** 1985-02-07 22:06:32 +00:00
keie 3c7fcfe81a Initial revision 1985-02-07 17:43:43 +00:00
keie 4ff7e05f7e Initial revision 1985-02-07 17:18:06 +00:00
keie 3df42a584c *** empty log message *** 1985-02-07 15:58:40 +00:00
keie 9c93cbdfaa *** empty log message *** 1985-02-07 15:33:13 +00:00
garde 20986fd6ea monitor calls open, close and ioctl removed. 1985-02-06 16:56:41 +00:00
garde 293dfd2c64 Initial revision 1985-02-06 16:50:52 +00:00
em e1b8023da1 *** empty log message *** 1985-02-05 14:52:52 +00:00
em 52d0f32e32 Copied from vax2, takes its info on which files
to use in which order from LIST.
1985-02-05 14:52:02 +00:00
em c8e426ffb8 This one is made with lorder|tsort. 1985-02-05 14:51:17 +00:00
em b70b6ba980 The first one, Duk's order. 1985-02-05 14:50:24 +00:00
keie 987ed39adb Added an entry "distr" to make tables1.c and tables1.h. 1985-02-03 23:50:51 +00:00
keie 3d4a5efe99 The creation of the library is now done by the process of creating
the distribution directory.
1985-02-03 23:23:50 +00:00
keie 46f5004866 Tail_em.s.a is now extracted from the RCS directory by the
distribution making process in em/distr2.
1985-02-03 23:21:24 +00:00
em 2cc4735151 Added libmon to libraries to be translated. 1985-02-02 18:06:37 +00:00
em dd7e9436a2 *** empty log message *** 1985-02-01 22:12:31 +00:00
garde 8e154eb826 Many, many improvements made, ususually small ones.
For example: many em-patterns have got alternative code-rules.
1985-02-01 12:51:56 +00:00
keie ca219d89e9 Now using ../../proto/libg/Makefile. 1985-02-01 12:38:08 +00:00
keie 26999bb517 To avoid conflict while compiling with acc itself the word
size of the target machine is now defined as TEM_WSIZE.
1985-02-01 12:32:46 +00:00
bal d1c0d1db13 Bugs fixed for the following patterns:
lol loc 255 and 2  (byte order was wrong)
loc x beq , 0 < x < 128  (was 0 < x < 256)
loc x bne (idem).
These bugs were introduced in version 2.2.
1985-01-30 16:34:14 +00:00
ceriel e936aea1e1 Added -DCPM to the flags. 1985-01-30 12:37:10 +00:00
keie fd4d46036a Added ranlib commends. 1985-01-24 16:16:32 +00:00
keie 1e3ec09984 Some minor changes. 1985-01-24 15:34:23 +00:00
bal 1732114593 bug fixed: the "incr" parameter of sbrk() is a 2-byte integer,
not a 4-byte integer.
1985-01-23 16:31:51 +00:00
garde a849b751a9 src1 and src2 extended.
Errors in 'pat loc cmi teq' and 'pat loc cmi tne' recovered.
Second stack-pattern for 'pat zlt' and 'pat zge' added.
Patterns for 'lil loc adi sil', 'lil inc sil', 'lil dec sil'
and 'sil lil' added.
1985-01-22 19:55:11 +00:00
em ea337060ec User defined trap handling routine is called with calls instruction.
A message is printed if there is no routine at all.
1985-01-22 15:20:19 +00:00
em 33c81637db Added `movl r3,ap' to restore the argument pointer before returning
vi jmp (r0).
1985-01-22 13:10:35 +00:00
em 08c8edf314 Changed #define's of newlbss of cst_fmt. 1985-01-21 16:40:02 +00:00
em 603f82a578 Bug fix: redefined a Local local causing an INTERNAL ERROR from as. 1985-01-21 15:49:22 +00:00
garde cd78a1a27a case 8 and case 6 deleted in switch of function 'prolog' 1985-01-21 14:17:11 +00:00
em cb49888304 To have a file preprocessed, it must start with a # in column o1.
The RCSid is replaced to accomplish this.
1985-01-21 12:56:09 +00:00
em a33d0e8e14 Replaced RCSid so that file starts with # in column 0 so it gets preprocessed. 1985-01-21 12:28:59 +00:00
em 4f40987ff0 Corrected type; forgot closing ". 1985-01-21 12:14:59 +00:00
em ccfa0db0de Removed #define IDFIRST because fmt_id() replaces it. 1985-01-21 12:09:44 +00:00
em 6ac5841c7f Initial revision 1985-01-18 16:06:21 +00:00
em f9c86fc6f6 Routines are now called with calls instead of jsb. We use ap as argument
pointer register. EM_BSIZE is required to be a constant.
1985-01-18 15:39:07 +00:00
em a4ca3054f0 Changed label generators and added fmt_id(). 1985-01-18 15:36:51 +00:00
em 10ce06ff2b Routines are called with calls instead of jsb. EM_BSIZE is required to
be a constant.
1985-01-18 15:33:44 +00:00
duk 8d87404836 Initial revision 1985-01-18 14:30:03 +00:00
garde d8d2068664 Initial revision 1985-01-17 14:31:34 +00:00
duk e1ef16649c Initial revision 1985-01-17 14:20:52 +00:00
bal 218ce4596e The EM runtime routines are reentrant now, so the remark about
reentrancy is removed from this file.
1985-01-17 10:39:33 +00:00
bal 8f7a447719 Bug fixed: a0 is changed by call to _brk, so it should be saved & restored. 1985-01-17 10:33:23 +00:00
keie 14a9b13fd3 Added RCS id. 1985-01-11 17:03:53 +00:00
keie d72ad93216 Allows optional second argument.
This is the name of the destination file. The destination directory
is determined by compare.
1985-01-11 16:46:02 +00:00
keie 081413cfda 1 - Allows 2 arguments, 1 - name of source in current directory.
2 - name of destination file(!path), default arg 1.
2 - Make the necessary dirctory.
3 - runs ranlib if "ar t ... | grep SYMDEF succeeds.
1985-01-11 16:43:56 +00:00
keie f0d34942e3 Added RCS id. 1985-01-11 16:28:30 +00:00
sater 7f0def8861 RREMOVE section updated. 1985-01-11 09:44:34 +00:00
sater 4ba6e7a39c *** empty log message *** 1985-01-08 15:34:54 +00:00
keie 576688fc10 *** empty log message *** 1985-01-08 11:48:43 +00:00
keie 5edf93d2de *** empty log message *** 1985-01-07 15:54:38 +00:00
keie dd0951f114 *** empty log message *** 1985-01-07 15:43:50 +00:00
keie 5779a88371 *** empty log message *** 1985-01-07 14:39:27 +00:00
keie 22c95138aa *** empty log message *** 1985-01-07 14:26:46 +00:00
keie d0268a4ec1 *** empty log message *** 1985-01-07 14:15:47 +00:00
keie 112211eb3b *** empty log message *** 1985-01-07 13:57:25 +00:00
keie d0444e3a04 15-5-83 EGK
The coercion from rm1 to register contained
                allocate(%[1],GENREG).
                The %[1] here is incorrect and has been removed.
16-5-83         EGK
                The word before the movb was cleared by a xor.
                Now we clear the upper byte after the movb.
                This allows the %[1] to be added to the allocate.
1985-01-07 13:51:36 +00:00
keie 9beb72e69b *** empty log message *** 1985-01-07 13:49:31 +00:00
keie 5fedca22ad *** empty log message *** 1985-01-07 13:37:12 +00:00
keie b4ad7c46da *** empty log message *** 1985-01-07 13:08:48 +00:00
sater 18dbfc024e Routine was wrong, leaving things on the stack in the one bit case,
the inclusion of slu in this routine was bogus.
It is never called anyway, so slu is taken out.
1984-12-20 15:17:05 +00:00
keie e129db8343 1 - Added RCS id.
2 - Used two argument [feature] of install.
1984-12-20 14:26:14 +00:00
keie 6c9e4c84f0 The definition if the symbols, end, endbss etc, is moved
from a library to a file. This to avoid 2 libraries in this
directory.
1984-12-20 14:13:48 +00:00
keie 37d01caabd 1 - signal did not clear the stack properly.
2 - lseek did not return correct.
1984-12-18 17:12:12 +00:00
keie 7b39ce2cfa Traps now work as documented. 1984-12-18 17:11:35 +00:00
keie 53a88ccd69 1 - Human readable profile and count.
2 - Length of last table is now 64.
1984-12-18 17:09:36 +00:00
keie 2d4614ca5a Profile, count, flow in non-local goto corrected. 1984-12-18 17:08:54 +00:00
keie 246f45c867 1 - Improved line number updating when returning from library routines.
2 - Line 234, 0xD must be #0x1C, crashed at error handling for
    incorrect return size.
1984-12-18 17:07:23 +00:00
keie b544d3b401 Replaced clr by the faster mov #0, (for d registers). 1984-12-18 17:06:36 +00:00
keie 5f41dcd958 1 - Indexed addressing mode gave unwanted sign extends.
They are replaced by additions.
2 - Added pointer checks.
3 - Completed parametrization of addresses of locals.

1984-12-18 17:04:24 +00:00
keie 9ea83d0838 Finishing profile tables. 1984-12-18 16:59:51 +00:00
keie 45e2eea414 1 - length of last table
2 - human readable profile and count output.
1984-12-18 16:58:30 +00:00
keie 8b60227186 Added pointer checks. 1984-12-18 16:58:11 +00:00
keie f0a6c2fbcf Altered 1980 in 1984. 1984-12-18 16:57:56 +00:00
keie eb15231cf4 Don't rely on cpp to be in the $PATH, call it from em/lib. 1984-12-18 13:12:30 +00:00
keie cf947cedd3 Added Ack distribution Makefile names. 1984-12-18 13:12:03 +00:00
keie 3b3d3f16b4 Adapted to new library. 1984-12-17 11:21:11 +00:00
keie 4f071008c8 *** empty log message *** 1984-12-17 11:11:37 +00:00
keie d77b2081c0 Now using LIST. 1984-12-17 11:06:48 +00:00
keie b097fe72a7 *** empty log message *** 1984-12-17 11:03:13 +00:00
keie 66d68121c8 Added F_DUM(Author of change-- Henry Bal). 1984-12-17 10:45:27 +00:00
keie 5060a9fcd6 *** empty log message *** 1984-12-17 10:44:08 +00:00
bal 523457f6ee Initial revision 1984-12-14 15:57:39 +00:00
bal 6babe9fccd Initial revision 1984-12-14 15:52:15 +00:00
bal ad815f1061 Initial revision 1984-12-14 15:41:14 +00:00
keie aa0f76a6cd Removed entries for pmds. 1984-12-14 13:45:42 +00:00
keie 0b9b183085 *** empty log message *** 1984-12-08 00:50:27 +00:00
keie 4cc2986757 This makefile was copied from ../../m68k2/dl.
The now irrelevant entries are removed.
1984-12-08 00:45:55 +00:00
keie 9f850cbb2d Comparing shouldn't stop when one compare fails. 1984-12-08 00:40:04 +00:00
keie 24204bca9f Added entries for pr and opr. 1984-12-08 00:28:16 +00:00
keie 1e651a534a Adapted to new install + compare, added anties for cmp, clean, opr and pr. 1984-12-08 00:17:39 +00:00
keie 1b210a8104 *** empty log message *** 1984-12-07 17:32:33 +00:00
keie a0f184e3d1 Improved "make pr". 1984-12-07 17:14:43 +00:00
keie 9b6c26ad14 An efficiency change only. 1984-12-07 16:52:09 +00:00
keie 89a757d6f9 Added cmp entry. 1984-12-07 16:45:26 +00:00
keie 518e817345 This one works, the previous one didn't. 1984-12-07 16:42:59 +00:00
keie f9fa5df654 install now allows a source and destination name. 1984-12-07 16:38:13 +00:00
keie 9e4b9fddab Now use prototype makefile from ../../proto. 1984-12-07 15:22:22 +00:00
keie af75a28622 Changed access path of em h directory. 1984-12-07 14:01:33 +00:00
keie c744b44b48 Changed access path of en h directory. 1984-12-07 14:01:11 +00:00
keie 80d4c7ca2f Initial revision 1984-12-07 13:41:58 +00:00
keie c2d3d6ce4a Initial revision 1984-12-07 10:42:27 +00:00
keie 695a914eb3 Added tail_m and tail_ln. 1984-12-04 13:31:03 +00:00
sater 0a00b80726 Added support for the fmt_id and fmt_ilb macros 1984-11-26 10:50:46 +00:00
sater 6a4dc794a2 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 7c07f91e1c The constant 512 slipped in instead of BUFSIZ.
Changed.
1984-11-20 10:22:12 +00:00
bal d07b17ca5c 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 58c679c94c 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 e2e78ccd0a The line with the user message for failure missed the call to echo. 1984-11-06 10:02:25 +00:00
bal 0d5a4693a7 make install also make a tail_mon now. 1984-11-05 15:58:11 +00:00
keie b6cfa32faa *** empty log message *** 1984-11-05 15:11:19 +00:00
bal b9ebdc1a07 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 3e7b7990f2 *** empty log message *** 1984-11-05 12:05:46 +00:00
em 9c66801439 *** empty log message *** 1984-11-05 11:55:15 +00:00
keie 2976b590af 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 a837112d99 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 13685d4bc0 Initial revision 1984-11-02 10:13:29 +00:00
keie fedaa3267a Adapted to make use of ../../compare and ../../install. 1984-10-26 12:58:15 +00:00
keie 3d4feae541 Initial revision 1984-10-26 12:54:35 +00:00
keie 88b487cd7b Adapted to make use of ../../compare and ../../install. 1984-10-26 11:48:51 +00:00
keie 90a899316e Initial revision 1984-10-26 11:48:13 +00:00
keie 08632dc7bd *** empty log message *** 1984-10-26 11:47:56 +00:00
keie ae27a86236 Adapted to make use of ../../compare and ../../install. 1984-10-26 11:04:10 +00:00
keie fd0066f3a6 *** empty log message *** 1984-10-26 11:01:40 +00:00
keie 1092994a09 Initial revision 1984-10-26 11:00:08 +00:00
keie 9d8dd3f989 Adapted to use ../../install and ../../compare and hide knowledge
about final destination of libraries.
1984-10-26 10:25:32 +00:00
keie fd23647c1c Adapted to make use of ../../compare. 1984-10-26 10:21:18 +00:00
keie 4724e96474 Adapted to make use of ../../install and ../../compare. 1984-10-26 10:20:29 +00:00
keie 8df0cf17d6 Initial revision 1984-10-26 10:20:28 +00:00
keie 37730ff9ca *** empty log message *** 1984-10-26 10:19:56 +00:00
keie a1e7cc26f4 *** empty log message *** 1984-10-26 10:12:57 +00:00
keie 137fa9ebce Adapted to use install in ../.. 1984-10-25 14:28:56 +00:00
keie 0cacc96ed8 Now using the compare script in ../.. 1984-10-25 14:28:19 +00:00
keie 4a20e17a9b Initial revision 1984-10-25 14:28:18 +00:00
keie 3bfc57ecd0 *** empty log message *** 1984-10-25 14:24:43 +00:00
keie 86d96452a3 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 e88028dcb9 Altered to make use of ../../install and ../../compare. 1984-10-25 14:19:58 +00:00
keie 1e1fc36653 Initial revision 1984-10-25 14:19:57 +00:00
keie cdebe97db8 *** empty log message *** 1984-10-25 14:15:27 +00:00
keie 08545984f4 Now making use of ../../install and ../../compare. 1984-10-25 14:10:00 +00:00
keie b8e156100f Adapted to make use of compare in ../.. 1984-10-25 11:40:16 +00:00
keie 9109aaaada Adapted to make use of install and compare in ../.. 1984-10-25 11:39:39 +00:00
keie b51fa518be *** empty log message *** 1984-10-25 11:39:38 +00:00
keie c2b1975015 Adapted to make use of install and compare in ../.. 1984-10-25 11:27:08 +00:00
keie ca89e47aa4 *** empty log message *** 1984-10-25 11:25:22 +00:00
keie 26ba8cc8fd Removed the definition of LIBDIR, it is superfluous. 1984-10-25 11:16:31 +00:00
keie c94c590501 Adapted to make use of install and compare in ../.. 1984-10-25 11:16:30 +00:00
keie 38a943d27a Initial revision 1984-10-25 11:15:20 +00:00
keie a72cc54578 Adapted to use compare in ../.. 1984-10-25 10:46:32 +00:00
keie 9b6418c324 Adapted to compare in ../.. 1984-10-25 10:45:22 +00:00
keie e03e8c7607 Initial revision 1984-10-25 10:45:21 +00:00
keie 2cb8aae438 *** empty log message *** 1984-10-23 15:29:53 +00:00
keie 533d2bb940 Initial revision 1984-10-23 15:29:30 +00:00
keie 828b4d62c9 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 7e31dee840 changed EM_WSIZE to TEM_WSIZE 1984-10-23 15:10:15 +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 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
em 94e069fde1 Initial revision 1984-10-09 10:36:29 +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
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
bal ebed9d4804 unlk a6 added to restr(). 1984-09-11 15:44:14 +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
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
sater ce098c78cb added patterns to prevent stacking in *p++ cases 1984-08-15 16:05:54 +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 e41876f32a reworked patterns for autoincrement stores, now that peephole optimizer
rearranged it.
1984-08-07 10:22:49 +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 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
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 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 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 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 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
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 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 e2f49f412d 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
sater 267955e114 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
sater da8966a6c8 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 caa918f7d9 Initial revision 1984-07-13 11:25:46 +00:00
sater 28960f5d32 Initial revision 1984-07-13 11:12:23 +00:00
sater 3e78acff56 removed REGPATCH define 1984-07-12 11:03:18 +00:00
sater e3acc1a9ed added definition of newplb()
removed a tab from some string
1984-07-12 11:02:44 +00:00
sater 4558cb8836 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 25eef41c3a Initial revision 1984-06-25 16:22:03 +00:00
sater 2ef7ee3efc Initial revision 1984-06-25 11:02:34 +00:00
sater 2d4de6d34e added rcsid
Some constants had survived in the text. They were parametrized.
1984-05-19 12:52:25 +00:00
sater f39171e3c4 added rcsid 1984-05-19 12:52:21 +00:00
sater c58492b45b Initial revision 1984-05-19 12:48:59 +00:00
sater 7d75cf2799 Reworked to work, I think 1984-05-19 12:44:53 +00:00
sater c4826294dc added rcsid
Tried to make machine independent,
machine independent sources now taken from ../../proto/cg
Changed according to suggestion from ceriel to prevent running cgg twice
1984-05-19 12:03:22 +00:00
sater ceeeca40f6 added code to save all registers for ms_gto
changed place of #ifdef to make this null-module compile faster
when no register variables are used.
1984-05-19 11:49:37 +00:00
sater 0cd7d8826e erase(reg) now also erases all register whose contents depend on
the contents of reg.
1984-05-19 11:49:01 +00:00
sater 9dfcd76f4b added code to recognize ms_gto 1984-05-19 11:48:40 +00:00
sater 54e681c6cc added rcsid 1984-05-19 11:42:19 +00:00
sater 445ee4ccb8 added rcsid
added code to check for write errors on codefile
1984-05-19 11:40:08 +00:00
sater f792cb549e added rcsid
removed sign extension bug in large constants
1984-05-19 11:38:48 +00:00
sater 65e35e6d53 added rcsid
added code to insure instructions come out in .text space
1984-05-19 11:38:15 +00:00
sater 18e0859e5d Initial revision 1984-05-19 11:08:27 +00:00
sater 5eeba1c1e0 Initial revision 1984-05-18 21:27:39 +00:00