33 Commits

Author SHA1 Message Date
ceriel
ae57d22fc9 Some minor modifications reflecting some changes in the peephole optimizer 1992-09-01 10:19:21 +00:00
ceriel
8daa5b2260 Do not use '#endif/#else xxx'; it is not allowed for ANSI C 1991-12-17 15:05:43 +00:00
ceriel
8f4b447757 Only call NOP routine when debugging table 1991-09-04 10:55:52 +00:00
ceriel
a1aaae55f2 corrected CFU 1988-06-07 11:08:55 +00:00
ceriel
1f7094655b CMI was translated wrongly; corrected 1988-03-14 13:56:33 +00:00
ceriel
afffb11b6a bug fix: sometimes register variables were treated as scratch regs! 1987-07-06 10:24:51 +00:00
ceriel
79b7a598aa divided time costs by 10, because of overflow 1987-05-21 13:59:55 +00:00
ceriel
db44f48cf6 Some more adaptions to new assembler 1987-05-20 17:15:59 +00:00
ceriel
f8e96a3d8c Added a pattern for better *p++ operation 1987-05-19 08:50:17 +00:00
ceriel
961c5d58b4 some bug fixes with 'bisb' 1987-05-18 18:34:59 +00:00
ceriel
aaea94c9ed deleted FORMAT, fixed con_float 1987-05-15 16:32:14 +00:00
ceriel
553ed226de Some fixes 1987-04-23 14:49:49 +00:00
ceriel
2de30a84a8 "word" is now always a "long" 1987-04-02 09:54:41 +00:00
ceriel
c31c23a3ec Fixed a problem with SRU: no regs available 1987-03-25 16:26:58 +00:00
ceriel
c43aa963d8 Added some neccessary NC's 1987-02-04 15:11:51 +00:00
keie
98761203cb 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
36f75c8404 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
sater
1ff6c3236f added patterns to prevent stacking in *p++ cases 1984-08-15 16:05:54 +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
6180399964 reworked patterns for autoincrement stores, now that peephole optimizer
rearranged it.
1984-08-07 10:22:49 +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
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
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
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
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
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
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
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
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
af88eafe02 removed REGPATCH define 1984-07-12 11:03:18 +00:00
sater
6a3909683b added rcsid
Some constants had survived in the text. They were parametrized.
1984-05-19 12:52:25 +00:00
sater
9c4b5b8dca Initial revision 1984-05-19 12:48:59 +00:00