Commit graph

392 commits

Author SHA1 Message Date
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