There's no need for each branch-over-branch to choose
its own label format.

gcc:
        * config/aarch64/aarch64.cc (aarch64_gen_far_branch): Drop
        dest argument; always use "L".
        * config/aarch64/aarch64.md: Update to match.
        * config/aarch64/aarch64-protos.h: Update to match.
---
 gcc/config/aarch64/aarch64-protos.h |  2 +-
 gcc/config/aarch64/aarch64.cc       |  4 ++--
 gcc/config/aarch64/aarch64.md       | 12 ++++++------
 3 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/gcc/config/aarch64/aarch64-protos.h 
b/gcc/config/aarch64/aarch64-protos.h
index 36bd88593ff..d1b82e5a5b9 100644
--- a/gcc/config/aarch64/aarch64-protos.h
+++ b/gcc/config/aarch64/aarch64-protos.h
@@ -1013,7 +1013,7 @@ unsigned aarch64_debugger_regno (unsigned);
 unsigned aarch64_trampoline_size (void);
 void aarch64_asm_output_labelref (FILE *, const char *);
 void aarch64_cpu_cpp_builtins (cpp_reader *);
-const char * aarch64_gen_far_branch (rtx *, int, const char *, const char *);
+const char * aarch64_gen_far_branch (rtx *, int, const char *);
 const char * aarch64_output_probe_stack_range (rtx, rtx);
 const char * aarch64_output_probe_sve_stack_clash (rtx, rtx, rtx, rtx);
 void aarch64_err_no_fpadvsimd (machine_mode);
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
index d30c9c75e42..d9bd939c234 100644
--- a/gcc/config/aarch64/aarch64.cc
+++ b/gcc/config/aarch64/aarch64.cc
@@ -1338,13 +1338,13 @@ strip_offset_and_salt (rtx addr, poly_int64 *offset)
 
 /* Generate code to enable conditional branches in functions over 1 MiB.  */
 const char *
-aarch64_gen_far_branch (rtx * operands, int pos_label, const char * dest,
+aarch64_gen_far_branch (rtx * operands, int pos_label,
                        const char * branch_format)
 {
     rtx_code_label * tmp_label = gen_label_rtx ();
     char label_buf[256];
     char buffer[128];
-    ASM_GENERATE_INTERNAL_LABEL (label_buf, dest,
+    ASM_GENERATE_INTERNAL_LABEL (label_buf, "L",
                                 CODE_LABEL_NUMBER (tmp_label));
     const char *label_ptr = targetm.strip_name_encoding (label_buf);
     rtx dest_label = operands[pos_label];
diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md
index dc2be815ede..b3e76158688 100644
--- a/gcc/config/aarch64/aarch64.md
+++ b/gcc/config/aarch64/aarch64.md
@@ -812,7 +812,7 @@
   "!aarch64_track_speculation"
   {
     if (get_attr_length (insn) == 8)
-      return aarch64_gen_far_branch (operands, 1, "Lcb", "<inv_cb>\\t%<w>0, ");
+      return aarch64_gen_far_branch (operands, 1, "<inv_cb>\\t%<w>0, ");
     else
       return "<cbz>\\t%<w>0, %l1";
   }
@@ -845,7 +845,7 @@
     if (get_attr_length (insn) == 8)
       {
        if (get_attr_far_branch (insn) == FAR_BRANCH_YES)
-         return aarch64_gen_far_branch (operands, 1, "Ltb",
+         return aarch64_gen_far_branch (operands, 1,
                                         "<inv_tb>\\t%<w>0, <sizem1>, ");
        else
          {
@@ -892,7 +892,7 @@
   {
     return (get_attr_far_branch (insn) == FAR_BRANCH_NO)
       ? "cb<INT_CMP:cmp_op>\\t%<w>0, %<w>1, %l2"
-      : aarch64_gen_far_branch (operands, 2, "L",
+      : aarch64_gen_far_branch (operands, 2,
           "cb<INT_CMP:inv_cmp_op>\\t%<w>0, %<w>1, ");
   }
   [(set_attr "type" "branch")
@@ -923,7 +923,7 @@
   {
     return (get_attr_far_branch (insn) == FAR_BRANCH_NO)
       ? "cb<SHORT:cmpbr_suffix><INT_CMP:cmp_op>\\t%<w>0, %<w>1, %l2"
-      : aarch64_gen_far_branch (operands, 2, "L",
+      : aarch64_gen_far_branch (operands, 2,
           "cb<SHORT:cmpbr_suffix><INT_CMP:inv_cmp_op>\\t%<w>0, %<w>1, ");
   }
   [(set_attr "type" "branch")
@@ -956,7 +956,7 @@
        but the "." is required for SVE conditions.  */
     bool use_dot_p = GET_MODE (operands[1]) == CC_NZCmode;
     if (get_attr_length (insn) == 8)
-      return aarch64_gen_far_branch (operands, 2, "Lbcond",
+      return aarch64_gen_far_branch (operands, 2,
                                     use_dot_p ? "b.%M0\\t" : "b%M0\\t");
     else
       return use_dot_p ? "b.%m0\\t%l2" : "b%m0\\t%l2";
@@ -1050,7 +1050,7 @@
     if (get_attr_length (insn) == 8)
       {
        if (get_attr_far_branch (insn) == 1)
-         return aarch64_gen_far_branch (operands, 2, "Ltb",
+         return aarch64_gen_far_branch (operands, 2,
                                         "<inv_tb>\\t%<ALLI:w>0, %1, ");
        else
          {
-- 
2.43.0

Reply via email to