This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

define_constants for m68k


This adds define_constants for the unspec numbers to m68k.md.
Checked in as obvious.

Andreas.

2003-05-18  Andreas Schwab  <schwab@suse.de>

	* config/m68k/m68k.md: Use define_constants for unspec numbers.

--- gcc/config/m68k/m68k.md.~1.56.~	2003-05-16 15:18:58.000000000 +0200
+++ gcc/config/m68k/m68k.md	2003-05-18 23:18:29.000000000 +0200
@@ -76,12 +76,6 @@
 ;;- "%$"    single-precision fp specifier ("s" or "")	f%$add.x fp0,fp1
 ;;- "%&"    double-precision fp specifier ("d" or "")	f%&add.x fp0,fp1
 
-;; UNSPEC usage:
-;; 1  This is a `sin' operation.  The mode of the UNSPEC is MODE_FLOAT.
-;;    operand 1 is the argument for `sin'.
-;; 2  This is a `cos' operation.  The mode of the UNSPEC is MODE_FLOAT.
-;;    operand 1 is the argument for `cos'.
-
 ;;- Information about 68040 port.
 
 ;;- The 68040 executes all 68030 and 68881/2 instructions, but some must
@@ -115,6 +109,19 @@
 ;;- Some of these insn's are composites of several m68000 op codes.
 ;;- The assembler (or final @@??) insures that the appropriate one is
 ;;- selected.
+
+;; UNSPEC usage:
+
+(define_constants
+  [(UNSPEC_SIN  1)
+   (UNSPEC_COS  2)
+  ])
+
+;; UNSPEC_VOLATILE usage:
+
+(define_constants
+  [(UNSPECV_BLOCKAGE	0)
+  ])
 
 (define_insn ""
   [(set (match_operand:DF 0 "push_operand" "=m")
@@ -6984,7 +6991,7 @@
 ;; all of memory.  This blocks insns from being moved across this point.
 
 (define_insn "blockage"
-  [(unspec_volatile [(const_int 0)] 0)]
+  [(unspec_volatile [(const_int 0)] UNSPECV_BLOCKAGE)]
   ""
   "")
 
@@ -7771,7 +7778,7 @@
 
 (define_insn "sinsf2"
   [(set (match_operand:SF 0 "nonimmediate_operand" "=f")
-	(unspec:SF [(match_operand:SF 1 "general_operand" "fm")] 1))]
+	(unspec:SF [(match_operand:SF 1 "general_operand" "fm")] UNSPEC_SIN))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "*
 {
@@ -7783,7 +7790,7 @@
 
 (define_insn "sindf2"
   [(set (match_operand:DF 0 "nonimmediate_operand" "=f")
-	(unspec:DF [(match_operand:DF 1 "general_operand" "fm")] 1))]
+	(unspec:DF [(match_operand:DF 1 "general_operand" "fm")] UNSPEC_SIN))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "*
 {
@@ -7795,13 +7802,13 @@
 
 (define_insn "sinxf2"
   [(set (match_operand:XF 0 "nonimmediate_operand" "=f")
-	(unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] 1))]
+	(unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] UNSPEC_SIN))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "fsin%.x %1,%0")
 
 (define_insn "cossf2"
   [(set (match_operand:SF 0 "nonimmediate_operand" "=f")
-	(unspec:SF [(match_operand:SF 1 "general_operand" "fm")] 2))]
+	(unspec:SF [(match_operand:SF 1 "general_operand" "fm")] UNSPEC_COS))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "*
 {
@@ -7813,7 +7820,7 @@
 
 (define_insn "cosdf2"
   [(set (match_operand:DF 0 "nonimmediate_operand" "=f")
-	(unspec:DF [(match_operand:DF 1 "general_operand" "fm")] 2))]
+	(unspec:DF [(match_operand:DF 1 "general_operand" "fm")] UNSPEC_COS))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "*
 {
@@ -7825,7 +7832,7 @@
 
 (define_insn "cosxf2"
   [(set (match_operand:XF 0 "nonimmediate_operand" "=f")
-	(unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] 2))]
+	(unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] UNSPEC_COS))]
   "TARGET_68881 && flag_unsafe_math_optimizations"
   "fcos%.x %1,%0")
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]