Commit graph

59 commits

Author SHA1 Message Date
ceriel e4838a6225 dont generate .data4 1988-04-25 10:31:33 +00:00
ceriel b68e30f6ff avoid use of modf; not portable 1988-04-22 14:11:55 +00:00
ceriel 083d520d38 SUN4 frexp strikes again ... 1988-04-20 14:42:04 +00:00
ceriel bf3cfae610 CMI was translated wrongly; corrected 1988-03-14 13:56:33 +00:00
ceriel d6593abd5e bug fix: sometimes register variables were treated as scratch regs! 1987-07-06 10:24:51 +00:00
ceriel 798261d992 pass EMHOME to nested make 1987-06-09 10:19:47 +00:00
ceriel 61a5c8ce08 divided time costs by 10, because of overflow 1987-05-21 13:59:55 +00:00
ceriel 1b47f26e4b Some more adaptions to new assembler 1987-05-20 17:15:59 +00:00
ceriel 643dee0ab6 Added a pattern for better *p++ operation 1987-05-19 08:50:17 +00:00
ceriel 6731de5286 some bug fixes with 'bisb' 1987-05-18 18:34:59 +00:00
ceriel 9e72c25a0f deleted FORMAT, fixed con_float 1987-05-15 16:32:14 +00:00
ceriel 5053f2a183 generate code for ACK assembler, including floats 1987-05-14 14:58:21 +00:00
ceriel 2b9292bc38 Some fixes 1987-04-23 14:49:49 +00:00
ceriel 81b1d21c35 Initial revision 1987-04-13 10:32:47 +00:00
ceriel 4b30a95d7a minor mods 1987-04-03 11:16:46 +00:00
ceriel af7b083fd8 "word" is now always a "long" 1987-04-02 09:54:41 +00:00
ceriel 11db9b8fdc Added EMHOME 1987-04-01 08:54:00 +00:00
ceriel e5116f86dc Fixed a problem with SRU: no regs available 1987-03-25 16:26:58 +00:00
ceriel 5537abbdfb Added copyright notice 1987-03-10 01:26:51 +00:00
ceriel 815166e421 Added copyright notice 1987-03-09 19:15:41 +00:00
ceriel 78a60d9959 %03x --> %x_, because the former does not work on System V 1987-02-09 16:35:24 +00:00
ceriel fe3fe78538 Added some neccessary NC's 1987-02-04 15:11:51 +00:00
ceriel a0dad9f908 adapted to new assembler syntax 1987-02-04 15:09:31 +00:00
ceriel 6c762a19e7 Changed /lib/cpp to ../../../lib/cpp 1987-01-20 13:09:56 +00:00
ceriel f45f393b71 replaced all occurrences of "cc" by "$(CC)". 1986-07-22 11:01:54 +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 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
keie 987ed39adb Added an entry "distr" to make tables1.c and tables1.h. 1985-02-03 23:50:51 +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 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 5d5a09a5d0 added code to generate code for ACK assembler.
Works if ACK_ASS is defined.
1984-10-16 13:31:44 +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 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 5894adfd67 Changed procedure prolog to use PR* routines. 1984-07-26 13:05:22 +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 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 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 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 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