From: bal Date: Tue, 6 Nov 1984 12:47:26 +0000 (+0000) Subject: Patterns for floating point instruction and for LFR 8 and RET 8 added. X-Git-Tag: release-5-5~5986 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=58c679c94c0b3e054a11b7ccda5707389af337e1;p=ack.git 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. --- diff --git a/mach/6500/cg/table b/mach/6500/cg/table index 0c7f68601..a604fada4 100644 --- a/mach/6500/cg/table +++ b/mach/6500/cg/table @@ -2202,6 +2202,87 @@ lol lal sti $1==$2 && $3==1 | | | | | /* throw away funny C-proc-prolog */ "jsr Pop" | %[a] | | +/* FLOATING POINT + * Every EM floating point instruction is translated + * into a library call. At present, these library + * routines generate an 'Illegal EM instruction' trap. + */ + + +adf $1==4 | STACK | + "jsr Adf4" + | | | +adf $1==8 | STACK | + "jsr Adf8" | | | + +sbf $1==4 | STACK | + "jsr Sbf4" + | | | +sbf $1==8 | STACK | + "jsr Sbf8" | | | + +mlf $1==4 | STACK | + "jsr Mlf4" + | | | +mlf $1==8 | STACK | + "jsr Mlf8" | | | + +dvf $1==4 | STACK | + "jsr Dvf4" + | | | +dvf $1==8 | STACK | + "jsr Dvf8" | | | + +ngf $1==4 | STACK | + "jsr Ngf4" + | | | +ngf $1==8 | STACK | + "jsr Ngf8" | | | + +zrf $1==4 | STACK | + "jsr Zrf4" + | | | +zrf $1==8 | STACK | + "jsr Zrf8" | | | + +cmf $1==4 | STACK | + "jsr Cmf4" + | | | +cmf $1==8 | STACK | + "jsr Cmf8" | | | + +fef $1==4 | STACK | + "jsr Fef4" + | | | +fef $1==8 | STACK | + "jsr Fef8" | | | + +fif $1==4 | STACK | + "jsr Fif4" + | | | +fif $1==8 | STACK | + "jsr Fif8" | | | + +cfi | STACK | + "jsr Cfi" | | | + +cif | STACK | + "jsr Cif" | | | + +cuf | STACK | + "jsr Cuf" | | | + +cff | STACK | + "jsr Cff" | | | + +cfu | STACK | + "jsr Cfu" | | | + +lfr $1==8 | STACK | + "jsr Lfr8" | | | + +ret $1==8 | STACK | + "jmp Ret8" | | | /*************\ * M O V E S *