]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
cfgexpand: Skip doing conflicts if there is only 1 variable
authorAndrew Pinski <quic_apinski@quicinc.com>
Wed, 13 Nov 2024 06:13:35 +0000 (22:13 -0800)
committerAndrew Pinski <quic_apinski@quicinc.com>
Thu, 14 Nov 2024 08:37:34 +0000 (00:37 -0800)
This is a small speed up. If there is only one know stack variable, there
is no reason figure out the scope conflicts as there are none. So don't
go through all the live range calculations just to see there are none.

Bootstrapped and tested on x86_64-linux-gnu with no regressions.

gcc/ChangeLog:

* cfgexpand.cc (add_scope_conflicts): Return right away
if there are only one stack variable.

Signed-off-by: Andrew Pinski <quic_apinski@quicinc.com>
gcc/cfgexpand.cc

index f3a33ff9a07d055a570f3ba6d0b83157ba230d7f..ed890f692e5889b1be7226f82725729879f546f8 100644 (file)
@@ -703,6 +703,11 @@ add_scope_conflicts_1 (basic_block bb, bitmap work, bool for_conflict)
 static void
 add_scope_conflicts (void)
 {
+  /* If there is only one variable, there is nothing to be done as
+     there is only possible partition.  */
+  if (stack_vars_num == 1)
+    return;
+
   basic_block bb;
   bool changed;
   bitmap work = BITMAP_ALLOC (NULL);