* desc-cpu.scm (cgen-desc.h): Don't print virtual enums.
authorDoug Evans <dje@google.com>
Mon, 25 Jan 2010 03:50:44 +0000 (03:50 +0000)
committerDoug Evans <dje@google.com>
Mon, 25 Jan 2010 03:50:44 +0000 (03:50 +0000)
* 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.

cpu/ChangeLog
cpu/frv.cpu

index f2dcc51..939544c 100644 (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.
index 8935924..b6c4f80 100644 (file)
        (.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)))
   )
 )
        (.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)))
   )
 )
        (+ 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)))
   )
 )
        (.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)))
   )
 )
        (+ 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)))
   )
 )
 
 (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