* desc-cpu.scm (cgen-desc.h): Don't print virtual enums.

* sid-cpu.scm (cgen-desc.h): Ditto.
	* enum.scm (enum-builtin!): New function.
	* read.scm (reader-install-builtin!): Call it.
	* rtl-c.scm (s-convop): Delete, replaced with ...
	(s-int-convop, s-float-convop): ... new fns.
	(ext, zext, trunc): Update.
	(fext, ftrunc, float, ufloat, fix, ufix): Update.
	* rtx-funcs.scm (fext, ftrunc, float, ufloat, fix, ufix): New parameter
	`how'.
	* cpu/mep-fmax.cpu (fcvtsw): Update.
	* cpu/sh.cpu (h-fsd, h-fmov): Update.
	* doc/rtl.texi (float-convop): Update.

	* frv.cpu (floating-point-conversion): Update call to fp conv op.
	(floating-point-dual-conversion, ne-floating-point-dual-conversion,
	conditional-floating-point-conversion, ne-floating-point-conversion,
	float-parallel-mul-add-double-semantics): Ditto.
This commit is contained in:
Doug Evans 2010-01-25 03:50:44 +00:00
parent 8053273798
commit 3fa5b97b27
2 changed files with 22 additions and 11 deletions

View File

@ -1,3 +1,10 @@
2010-01-24 Doug Evans <dje@sebabeach.org>
* frv.cpu (floating-point-conversion): Update call to fp conv op.
(floating-point-dual-conversion, ne-floating-point-dual-conversion,
conditional-floating-point-conversion, ne-floating-point-conversion,
float-parallel-mul-add-double-semantics): Ditto.
2010-01-05 Doug Evans <dje@sebabeach.org>
* m32c.cpu (f-dsp-32-u24): Fix mode of extract handler.

View File

@ -7050,7 +7050,7 @@
(.splice (UNIT FMALL) (FR500-MAJOR F-1) (.unsplice attr))
(.str name "$pack $" src ",$" targ)
(+ pack targ op (rs-null) ope src)
(set targ (conv mode src))
(set targ (conv mode FPCONV-DEFAULT src))
((fr500 (unit u-float-convert)) (fr550 (unit u-float-convert)))
)
)
@ -7076,9 +7076,9 @@
(.str name "$pack $" src ",$" targ)
(+ pack targ op (rs-null) ope src)
(sequence ()
(set targ (conv mode src))
(set targ (conv mode FPCONV-DEFAULT src))
(set (nextreg targ_hw targ 1)
(conv mode (nextreg src_hw src 1))))
(conv mode FPCONV-DEFAULT (nextreg src_hw src 1))))
((fr500 (unit u-float-dual-convert)))
)
)
@ -7095,10 +7095,10 @@
(+ pack targ op (rs-null) ope src)
(sequence ()
(c-call VOID "@cpu@_set_ne_index" (index-of targ))
(set targ (conv mode src))
(set targ (conv mode FPCONV-DEFAULT src))
(c-call VOID "@cpu@_set_ne_index" (add (index-of targ) 1))
(set (nextreg targ_hw targ 1)
(conv mode (nextreg src_hw src 1))))
(conv mode FPCONV-DEFAULT (nextreg src_hw src 1))))
((fr500 (unit u-float-dual-convert)))
)
)
@ -7114,7 +7114,7 @@
(.str name "$pack $" src ",$" targ ",$CCi,$cond")
(+ pack targ op (rs-null) CCi cond ope src)
(if (eq CCi (or cond 2))
(set targ (conv mode src)))
(set targ (conv mode FPCONV-DEFAULT src)))
((fr500 (unit u-float-convert)) (fr550 (unit u-float-convert)))
)
)
@ -7131,7 +7131,7 @@
(+ pack targ op (rs-null) ope src)
(sequence ()
(c-call VOID "@cpu@_set_ne_index" (index-of targ))
(set targ (conv mode src)))
(set targ (conv mode FPCONV-DEFAULT src)))
((fr500 (unit u-float-convert)) (fr550 (unit u-float-convert)))
)
)
@ -7626,11 +7626,15 @@
(define-pmacro (float-parallel-mul-add-double-semantics add_sub arg1 arg2 targ)
(sequence ()
(set targ (ftrunc SF (mul DF (fext DF arg1) (fext DF arg2))))
(set targ (ftrunc SF FPCONV-DEFAULT
(mul DF
(fext DF FPCONV-DEFAULT arg1)
(fext DF FPCONV-DEFAULT arg2))))
(set (nextreg h-fr targ 1)
(ftrunc SF (add_sub DF
(fext DF (nextreg h-fr arg1 1))
(fext DF (nextreg h-fr arg2 1))))))
(ftrunc SF FPCONV-DEFAULT
(add_sub DF
(fext DF FPCONV-DEFAULT (nextreg h-fr arg1 1))
(fext DF FPCONV-DEFAULT (nextreg h-fr arg2 1))))))
)
(define-pmacro (float-parallel-mul-add-double