OSDN Git Service

config/sh/sh.md ("length"): Increase branch length when SH1 pic code to 18:
authornickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Sep 2004 13:43:40 +0000 (13:43 +0000)
committernickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 1 Sep 2004 13:43:40 +0000 (13:43 +0000)
12 bytes of instructions, 4 byte for the constant, 2 byte for aligning the
constant.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86886 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/sh/sh.md

index 6846701..606a214 100644 (file)
@@ -1,3 +1,10 @@
+2004-09-01  J"orn Rennecke <joern.rennecke@superh.com>
+           Nick Clifton  <nickc@redhat.com>
+
+       * config/sh/sh.md ("length"): Increase branch length when
+       SH1 pic code to 18: 12 bytes of instructions, 4 byte for the
+       constant, 2 byte for aligning the constant.
+
 2004-09-01  Richard Earnshaw  <rearnsha@arm.com>
 
        * arm/arm-cores.def (ARM_CORE): Add new field for the real name of the
index a21a2a4..31e05a2 100644 (file)
         (cond [(eq_attr "med_branch_p" "yes")
                (const_int 2)
                (and (eq (symbol_ref "GET_CODE (prev_nonnote_insn (insn))")
-                        (symbol_ref "INSN"))
-                    (eq (symbol_ref "INSN_CODE (prev_nonnote_insn (insn))")
-                        (symbol_ref "code_for_indirect_jump_scratch")))
-               (if_then_else (eq_attr "braf_branch_p" "yes")
-                             (const_int 6)
-                             (const_int 10))
+                         (symbol_ref "INSN"))
+                     (eq (symbol_ref "INSN_CODE (prev_nonnote_insn (insn))")
+                         (symbol_ref "code_for_indirect_jump_scratch")))
+                (cond [(eq_attr "braf_branch_p" "yes")
+                       (const_int 6)
+                       (eq (symbol_ref "flag_pic") (const_int 0))
+                       (const_int 10)
+                       (ne (symbol_ref "TARGET_SH2") (const_int 0))
+                       (const_int 10)] (const_int 18))
                (eq_attr "braf_branch_p" "yes")
                (const_int 10)
 ;; ??? using pc is not computed transitively.