+2004-07-27 Nick Clifton <nickc@redhat.com>
+
+ * config/m32r/m32r.c: Include integrate.h in order to get the
+ prototype for get_hard_reg_initial_val().
+
+ * config/m32r/m32r.md (m32rpipeline): Remove unused value "m32r"
+ and tidy up indentation.
+ (final_presence_set): Use absence_set instead, so that if there is
+ nothing in the "o" pipe the "s" pipe can be scheduled.
+
2004-07-27 Diego Novillo <dnovillo@redhat.com>
* tree-ssa-alias.c (create_name_tags): Ignore pointers that
;; Defines the pipeline where an instruction can be executed on.
;; For the M32R, a short instruction can execute one of the two pipes.
;; For the M32Rx, the restrictions are modelled in the second
-;; condition of this attribute definition.
-(define_attr "m32r_pipeline" "either,s,o,long,m32r"
+;; condition of this attribute definition.
+(define_attr "m32r_pipeline" "either,s,o,long"
(cond [(and (eq_attr "cpu" "m32r")
(eq_attr "insn_size" "short"))
(const_string "either")
(eq_attr "insn_size" "!short")
(const_string "long")]
- (cond [(eq_attr "type" "int2")
+ (cond [(eq_attr "type" "int2")
(const_string "either")
- (eq_attr "type" "load2,store2,shift2,uncond_branch,branch,call")
+ (eq_attr "type" "load2,store2,shift2,uncond_branch,branch,call")
(const_string "o")
- (eq_attr "type" "mul2")
+ (eq_attr "type" "mul2")
(const_string "s")]
- (const_string "long"))))
+ (const_string "long"))))
\f
;; ::::::::::::::::::::
;; ::
(define_cpu_unit "o_IF,s_IF,o_E,s_E,memory" "m32r")
;; Prevent the s pipe from being reserved before the o pipe.
-(final_presence_set "s_IF" "o_IF")
-(final_presence_set "s_E" "o_E")
+(absence_set "s_IF" "o_IF")
+(absence_set "s_E" "o_E")
;; On the M32Rx, long instructions execute on both pipes, so reserve
;; both fetch slots and both pipes.