https://gcc.gnu.org/g:41a5a97dba6873d928675fd789a2d884c6d20a8d

commit r15-6865-g41a5a97dba6873d928675fd789a2d884c6d20a8d
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Mon Jan 13 13:57:18 2025 +0100

    expr: Fix up the divmod cost debugging note [PR115910]
    
    Something I've noticed during working on the crc wrong-code fix.
    My first version of the patch failed because of no longer matching some
    expected strings in the assembly, so I had to add TDF_DETAILS debugging
    into the -fdump-rtl-expand-details dump which the crc tests can use.
    
    For PR115910 Andrew has added similar note for the division/modulo case
    if it is positive and we can choose either unsigned or signed
    division.  The problem is that unlike most other TDF_DETAILS diagnostics,
    this is not done before emitting the IL for the function, but during it.
    
    Other messages there are prefixed with ;;, both details on what it is doing
    and the GIMPLE IL for which it expands RTL, so the
    ;; Generating RTL for gimple basic block 4
    
    ;;
    
    (code_label 13 12 14 2 (nil) [0 uses])
    
    (note 14 13 0 NOTE_INSN_BASIC_BLOCK)
    positive division: unsigned cost: 30; signed cost: 28
    
    ;; return _4;
    
    message in between just looks weird and IMHO should be ;; prefixed.
    
    2025-01-13  Jakub Jelinek  <ja...@redhat.com>
    
            PR target/115910
            * expr.cc (expand_expr_divmod): Prefix the TDF_DETAILS note with
            ";; " and add a space before (needed tie breaker).  Formatting 
fixes.

Diff:
---
 gcc/expr.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/expr.cc b/gcc/expr.cc
index 07fc85712e6b..a310b2d91315 100644
--- a/gcc/expr.cc
+++ b/gcc/expr.cc
@@ -9710,9 +9710,9 @@ expand_expr_divmod (tree_code code, machine_mode mode, 
tree treeop0,
        }
 
       if (dump_file && (dump_flags & TDF_DETAILS))
-         fprintf(dump_file, "positive division:%s unsigned cost: %u; "
-                 "signed cost: %u\n", was_tie ? "(needed tie breaker)" : "",
-                 uns_cost, sgn_cost);
+       fprintf (dump_file, ";; positive division:%s unsigned cost: %u; "
+                           "signed cost: %u\n",
+                was_tie ? " (needed tie breaker)" : "", uns_cost, sgn_cost);
 
       if (uns_cost < sgn_cost || (uns_cost == sgn_cost && unsignedp))
        {

Reply via email to