Commit graph

407 commits

Author SHA1 Message Date
ceriel a761166dfa *** empty log message *** 1986-11-05 21:31:23 +00:00
ceriel 97e027db33 Added some code to skip to EOF with LL_NEWMESS. 1986-11-03 14:09:28 +00:00
ceriel 7d2ee932e9 That was: LL_NEWMESS, not LL_NEWMESSAGE! 1986-11-03 10:28:21 +00:00
sater 79a736a9f6 Output was wrong with maxmembers<2 1986-11-03 09:13:32 +00:00
ceriel a0a3f2d2b6 Added code that calls LLmessage(-1) when needed, and when LL_NEWMESS is
defined.
1986-10-29 11:30:50 +00:00
ceriel eedc332a04 Added "nflag". 1986-10-29 11:29:47 +00:00
ceriel ee27adc926 Added nflag, that allows the LLmessage(-1) call, to indicate garbage
at end of program.
1986-10-29 11:27:47 +00:00
ceriel de5ac65dd6 Bug fix. Error recovery did not always work as expected. The generated
parser sometimes assumed that a token would not be deleted, and inserted
tokens in front of it, and then deleted the token after all. It should
at each error, first delete, and then insert.
1986-10-29 11:16:55 +00:00
ceriel 200034075d Some name changes in ../../modules/lib. 1986-10-28 17:04:40 +00:00
ceriel aac1207beb Error messages are printed differently now. A '%' in an error message
used to cause difficulties.
1986-10-22 15:30:46 +00:00
ceriel c19358ee50 Bug fix involving '\\'. 1986-10-22 13:36:22 +00:00
ceriel 0595f74596 minor simplification. 1986-10-22 13:36:04 +00:00
ceriel cb2543df8a Improved the "clean"-entry 1986-10-20 14:58:25 +00:00
ceriel 8129bf95a4 Initial revision 1986-10-20 14:56:37 +00:00
ceriel 991df05826 *** empty log message *** 1986-10-20 14:42:41 +00:00
ceriel d8ba814b26 Adapted to the use of ../../modules/lib/libstr.a 1986-10-20 13:59:14 +00:00
ceriel 11d442c0a0 Use our own string-routines "strindex" and "strrindex". At least we
know their name!
1986-10-20 13:52:16 +00:00
ceriel 784bd9ec54 Use our own string routines strindex and strrindex. At least we know
their name!
1986-10-20 13:48:26 +00:00
ceriel 84f0869fde Fixed a bug: ack could not see the difference between ".mod" and ".m".
This is corrected.
1986-10-20 13:47:26 +00:00
ceriel 3a076895bb Caused a core dump on 68000-based machines (read: non-VAX) when called
at a certain (high) level of verbosity, -v5 for instance.
Cause: a null-reference. This is fixed.
1986-10-20 13:28:59 +00:00
ceriel baf5b74da2 A new version, that no longer tries to move all null parts to the end
of a segment. It also uses the "object" library to read and write ACK-
object files and libraries.
1986-10-20 10:17:57 +00:00
ceriel 8ffde3c86a I don't really know why, but the file was changed. 1986-10-20 09:35:51 +00:00
ceriel bfad7d30f0 Added a pattern for "ldc ads". 1986-09-24 12:17:25 +00:00
ceriel a2599744f0 Addition of new patterns. 1986-09-23 09:41:47 +00:00
em c685aa11b5 set limit on optimization passes to prevent loop
in optimizer in case of bad table.
1986-09-09 13:10:15 +00:00
sater 14b982346f Error fixed where w==2 was assumed 1986-08-28 10:28:42 +00:00
ceriel 2acc260239 Adapted so that anybody can do "make install". 1986-07-22 10:47:51 +00:00
ceriel 3c76cbaa1e Some changes needed for the new 4-4 Pascal compiler. 1986-07-21 09:53:44 +00:00
sater f1a0c90fb1 removed sanity checking on result from sprintf
System IIIish systems seem to have their own idea.
1986-06-17 09:13:11 +00:00
ceriel db258b68ea Increased the size of the expression node table. 1986-06-05 13:56:31 +00:00
sater 5a84f07281 Non existing token fields in the format string caused memfaults
because fields were checked beyond the end of the tokeninfo. Fixed.
1986-05-21 15:08:57 +00:00
sater 5c71bad6e1 Relaxed input syntax for from STACK coercions
No gen clause is necessary anymore.
1986-03-19 16:14:12 +00:00
keie 7592c2cb1a Adapted to our ack environment. 1986-02-11 11:22:43 +00:00
bal b48d45c38d increased STACK_DEPTH from 50 to 250 1986-02-10 11:04:33 +00:00
ceriel e2cfecffe3 Added some new patterns involving multiplies with 0, 1 etc. 1986-02-10 10:14:41 +00:00
em f3e2248cc4 fixed bug in number() -- hex letters mistreated 1986-02-03 14:30:19 +00:00
sater ef48465b2a Hex numbers didn't work. Corrected bug in myatoi(). 1986-01-24 16:08:34 +00:00
dick d112eb710c adapted to phototypesetter 1986-01-20 20:39:09 +00:00
sater a91e33ce96 Corrected error in otime of initialisation of booleans 1985-12-02 13:55:06 +00:00
ceriel 5b09f4211d A minor change in the LL.output format. 1985-11-26 13:27:51 +00:00
ceriel 4b31842ecc Remove targets before installing new ones 1985-11-25 16:26:59 +00:00
ceriel 7e978197d2 New manual page for a completely new version of LLgen. 1985-11-25 16:00:18 +00:00
ceriel 1284cf0187 Changed dependancies 1985-11-25 15:57:43 +00:00
ceriel fb36b6b633 New version of LLgen, new version of this Makefile ... 1985-11-25 15:52:56 +00:00
ceriel 8b48512de7 New version, with a much faster parser. 1985-11-25 15:50:51 +00:00
ceriel 70a5d416d1 New version, much faster 1985-11-25 15:50:19 +00:00
ceriel 42d0e056fb Completely new version, generating a much faster parser 1985-11-25 15:48:42 +00:00
ceriel f055d610d3 Completely new version, generating a much faster parser. 1985-11-25 15:47:51 +00:00
keie 2e947a5e91 BSD4.3 size returns an error when it cannot find one of
its arguments.
1985-10-15 15:47:12 +00:00
ceriel e494e09063 Initial revision 1985-10-03 18:31:47 +00:00
ceriel aab6140bfa different interface. 1985-10-03 17:19:14 +00:00
bal dcb4b71a3d 0 / -1 confusion for properties (bug reported by sater). 1985-10-03 14:41:44 +00:00
ceriel d07e8114c6 More safety, also after terms and nonterminals. 1985-10-03 12:38:55 +00:00
ceriel ca4cc6fe80 Initial revision 1985-10-03 10:35:55 +00:00
ceriel 6b74749c12 Initial revision 1985-10-03 10:25:23 +00:00
ceriel b83ab7873e A more precise safety after a term. 1985-10-02 22:49:16 +00:00
ceriel 73153b484b Initial revision 1985-10-02 22:20:04 +00:00
bal 8668e313f8 bug fixed: same problem as in r1.3, now with csb.
Solution: only do block fusion if first block end on bra.
1985-09-19 11:14:55 +00:00
bal a18c5dd9c4 bug fixed: last instruction of first block in block fusion optimization
can be a conditional branch. (bug detected by Ceriel).
1985-09-18 16:27:29 +00:00
bal 53f6b51cde sprintf does not return pointer to string so the assert(s==string) does
not make any sense.
1985-09-06 11:39:06 +00:00
bal 6a4d9703cc exit(0) added (trouble with make) 1985-09-06 11:38:00 +00:00
keie 6f22e5b7d9 %D => %ld 1985-06-21 12:55:17 +00:00
keie 3e6e781c8d Now using AALMAG instead of ARMAG for led libraries. 1985-06-12 10:31:28 +00:00
keie 8749fb1da8 Using new magic number for 'aal' archives. 1985-06-10 12:41:51 +00:00
keie dacde83aae Removed debugging printout. 1985-06-10 11:23:22 +00:00
keie 42c2a9754f Adapted by Sjoerd to amoeba. 1985-06-10 10:53:15 +00:00
keie 44ccf469d9 Changed to get led working under amoeba.
Author: K.S. Mullender.
1985-06-10 10:48:49 +00:00
keie 177af75c93 *** empty log message *** 1985-05-13 11:19:24 +00:00
keie f90babad30 Adapted to installation in the EM tree. 1985-05-13 11:09:53 +00:00
keie eb025dae5c Added a message to the effect that 'local commons' can not be handled. 1985-04-29 11:55:30 +00:00
keie 7b6ed6733f Added assignment for debuuging info. 1985-04-19 13:28:56 +00:00
keie 78961d37c1 Now using out.h from ../../h 1985-04-18 15:22:22 +00:00
keie b391be598b Now using arch.h, out.h and ranlib.h from ../../h 1985-04-18 15:21:16 +00:00
em f70b857d1b Added pmds4. 1985-04-14 13:22:26 +00:00
keie 022cb596be *** empty log message *** 1985-04-12 15:06:05 +00:00
keie 9eb53c3d47 *** empty log message *** 1985-04-12 14:59:45 +00:00
keie dfcfa9883b Initial revision 1985-04-12 14:55:00 +00:00
em 491040b2c7 *** empty log message *** 1985-04-12 14:01:20 +00:00
keie bae4084355 *** empty log message *** 1985-04-12 11:25:21 +00:00
em c1d5a0c721 Changed 8080 into i80. 1985-03-18 14:44:15 +00:00
bal c478b62711 bug fixed in kill_much():
for ( .. ; i != (Lindex) i; ..  ) should be
for ( .. ; i != (Lindex) 0; ..  ).
1985-02-28 10:35:57 +00:00
bal d5098fe70f Bug fixed: co_lfirst received wrong value for multiply-optimization. 1985-02-25 14:03:09 +00:00
bal 469d075e77 Calls of which the actual and formal parameters do not match
are no longer substituted inline.
1985-02-20 15:01:02 +00:00
bal 7397122695 p_use->u_ext field deleted from showptable() 1985-02-19 11:16:11 +00:00
bal abcbc93b5d Dependencies for .m files added. 1985-02-19 11:13:13 +00:00
keie b449b94b48 Removed nascom from linked list. 1985-02-18 23:06:13 +00:00
keie 7d85a4c0b3 Added link to 6805. 1985-02-18 23:01:05 +00:00
bal 66ab97d2b0 bug fixed: lifetime of an item was too short; it should also cover
any live/dead message prior to its initial live-message.
1985-02-18 15:14:22 +00:00
keie 241a7de970 The PDP 11 needs -i, Vax'en ignore it. 1985-02-18 12:45:31 +00:00
bal a1c2dadb2a Compare group (cmp,cmi,cmu,cms,cmf) added as cheap operators. 1985-02-15 13:18:57 +00:00
bal e704ddc158 restructured. 1985-02-11 10:52:49 +00:00
bal f7699474b8 The binaries of the phases of ego are now put in a single directory. 1985-02-11 10:07:47 +00:00
bal 6909adbf9c Macros newcflpx and oldcflpx added. 1985-02-11 09:52:11 +00:00
bal 156775643e Include files and declaration of em_flag added. 1985-02-11 09:51:02 +00:00
bal d41c902b12 Memory allocation/deallocation for extends changed. 1985-02-11 09:48:32 +00:00
bal b99ce86e16 register save costs changed: they are now linearly dependent on
the number of registers to be saved (for time).
1985-01-30 15:43:02 +00:00
bal bec394f7bd Entry for LOI changed from CLASS1 to CLASS12. 1985-01-30 14:49:03 +00:00
bal db19d06f61 CLASS12 added for the LOI instruction. A "LOI n", n < wordsize,
loads wordsize bytes, not n bytes.
1985-01-30 14:47:49 +00:00
bal 31eab814f2 Debugging procedure print_allocs now writes to stderr. 1985-01-30 10:52:33 +00:00
bal 7f9dd27dc8 bug fixed: assemble_allocs() did generate whole_procedure allocations.
These allocations were initialized with a very low profit. Consequently
account_regsave rejected these allocations.
Solution: repl_allocs() updates the al_profits field of the
whole_procedure allocation.
1985-01-30 10:47:47 +00:00
bal 387191a2c7 bug fixed: oldmap(lmap,llength) was sometimes called when no new map
had to be allocated for the current (data-) unit.
1985-01-28 11:38:06 +00:00
bal a49f2d23f7 Number of address registers decreased from 5 to 4. 1985-01-25 13:24:12 +00:00
bal 66eabbcddf parameter of fscanf changed from "%d" to "%hd" to read a short. 1985-01-23 16:28:58 +00:00
bal 468401cb81 core allocation macros added. 1985-01-23 16:27:47 +00:00
bal cac6ffd8c2 ovfl_harmful and arrbound_harmful turned into ints 1985-01-23 16:25:29 +00:00
bal d32d4e6ba0 Interface of tmplocal() changed: second parameter is a long now 1985-01-23 16:23:15 +00:00
bal 5cad6f6aa7 interface with tmplocal() changed: second parameter is a long now. 1985-01-23 16:18:33 +00:00
bal e46c49e291 bug fixed in get_instrs(): instr should be an int rather than a Celem_t. 1985-01-23 16:16:49 +00:00
bal 5a95c31414 bug fixed in last_mnem(): test on nil-pointer.
bug fixed in try_tail(): add line "if(l1==0||l2==0) return FALSE".
1985-01-23 16:13:57 +00:00
bal f487f26e00 bug fixed in last_line() : assert(l!=0) should be assert(lines!=0). 1985-01-23 16:12:21 +00:00
bal e95492dfb0 bug fixed in routine get_ca_lines(): test on nil-pointer. 1985-01-23 16:10:43 +00:00
bal fefe15a844 init_regcnt renamed initregcnt to avoid name conflict.
bug fixed in routine fits_in(): test on nil-pointer.
routine choose_location(): interface with tmplocal() changed, second
parameter now is a long, so a cast is added.
1985-01-23 16:07:09 +00:00
bal 3d2c33e277 rules for itemtab.h and makeitems added. 1985-01-23 15:50:17 +00:00
bal 2ea3be322d clean_items renamed cleanitems to avoid name conflict.
clean_timeset renamed cleantimeset to avoid name conflict.
bugs fixed: calls to fscanf() with a pointer-to-short as argument
should provide a "%hd" instead of "%d".
1985-01-23 15:45:58 +00:00
bal 2d8dcaa2df Initial revision 1985-01-18 09:59:09 +00:00
sater dac2f97109 extra define added to aid in generation of DO_RREMOVE 1985-01-11 09:42:17 +00:00
sater 3a528a7324 code was added to generate DO_RREMOVE 1985-01-11 09:41:47 +00:00
sater 3534869cb5 code was added to cause generation of DO_RREMOVE in some cases 1985-01-11 09:41:13 +00:00
sater e9b6045b5a diffs were applied to make default register property at stacking rule
-1 instead of 0.
1985-01-11 09:40:40 +00:00
sater a1a8fd99a0 Optional register property in stacking rules must be -1 when absent.
Fixed this.
1985-01-10 16:30:09 +00:00
duk d7fb9edfe2 Maybe some minor changes. 1985-01-10 13:35:39 +00:00
duk 58126396af Added call to trap signals. 1985-01-10 13:24:36 +00:00
duk 55017702e2 Header and section table now allocated statically. 1985-01-10 13:22:04 +00:00
duk 7d312abd59 Inline expansion of index_adjust() and compute_origins().
Section table now allocated statically.
1985-01-10 13:19:47 +00:00
duk ba826bad5c Added routine to check signals. 1985-01-10 13:17:22 +00:00
duk f532b58045 Added provisions for copying everything after the string area into the
resulting object file. Because this is most likely symbolic debugging
information, these are parametrized by #ifdef SYMDBUG.
1985-01-08 11:54:57 +00:00
sater 72b83cca59 *** empty log message *** 1985-01-08 09:59:28 +00:00
sater c2229e5c60 Initial revision 1985-01-04 14:05:25 +00:00
keie 57115f49cc Take precautions against an already existing march. 1985-01-01 21:32:02 +00:00
keie fe6eed6c76 Added RCS identification. 1985-01-01 18:35:40 +00:00
keie 0ebd337637 *** empty log message *** 1985-01-01 18:34:12 +00:00
bal ffb167e8b2 lay-out enhanced; flags (CFLAGS etc.) inherited from central Makefile;
entry for compiling this phase with ack -O created.
1984-12-21 14:41:47 +00:00
keie 8636bd025e Added machines to be sent with the second distribution to the LNTABLES. 1984-12-18 15:28:19 +00:00
keie a5e9c4f8d1 *** empty log message *** 1984-12-17 15:52:04 +00:00
keie 8c874d4632 Run $RANLIB if the shell variable is set. 1984-12-17 15:50:02 +00:00
sater d267037189 *** empty log message *** 1984-12-17 15:13:39 +00:00
bal 98989fd9ca Initial revision 1984-12-10 13:36:12 +00:00
keie 9932e38ab2 Removed the definition of the NEEDS variable. 1984-12-10 12:49:56 +00:00
ceriel 7f12f20be6 Removed a reference to a non existing Makefile ( in the lib directory). 1984-12-07 15:21:25 +00:00
bal 9019141137 Bug fixed in optimizing two adjacent basic blocks. 1984-12-07 14:19:53 +00:00
ceriel 2c7c97051b Changed so that the installation process will continue if LLgen
is not present yet.
Also added Makefile to the "make pr" entry.
1984-12-06 10:39:28 +00:00
bal 4e461a9860 Initial revision 1984-12-04 15:04:44 +00:00
bal 3cdaf9f4ba WORDLENGTH now defined in automatically generated file wordlen.h
Generate this file from makewlen.c
1984-12-04 15:04:01 +00:00
bal 0d0e2d2d22 WORDLENGTH now defined in automatically generated file worlen.h 1984-12-04 15:03:22 +00:00
bal 8d659c015f Bug fixed: fill_item() should initialize item->it_desirable to TRUE. 1984-12-04 14:41:20 +00:00
bal 9b72991e27 regsave_cost() return void instead of short. 1984-12-04 13:04:27 +00:00
bal 8db2c12881 regsave_cost() returns void instead of short. 1984-12-04 13:03:49 +00:00
bal ee3ef338db Comment closer ("*/") added to description of getlines(). 1984-12-03 12:12:37 +00:00
ceriel 7e3e49082c Increased MAXPATLEN to 8000. 1984-11-30 11:14:18 +00:00
bal 0778ce4a9a 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