]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - gcc/auto-profile.c
Fix indirect call optimization done by autoFDO.
[thirdparty/gcc.git] / gcc / auto-profile.c
index 552e3331b1510aa037694dce764d6a8012a72c1d..9226e202d50374f0af49d6b583ca06cb52367338 100644 (file)
@@ -774,15 +774,15 @@ autofdo_source_profile::update_inlined_ind_target (gcall *stmt,
      hot any more. Will avoid promote the original target.
 
      To check if original promoted target is still hot, we check the total
-     count of the unpromoted targets (stored in old_info). If it is no less
-     than half of the callsite count (stored in INFO), the original promoted
-     target is considered not hot any more.  */
-  if (total >= info->count / 2)
+     count of the unpromoted targets (stored in TOTAL). If a callsite count
+     (stored in INFO) is smaller than half of the total count, the original
+     promoted target is considered not hot any more.  */
+  if (info->count < total / 2)
     {
       if (dump_file)
-       fprintf (dump_file, " not hot anymore %ld >= %ld",
-                (long)total,
-                (long)info->count /2);
+       fprintf (dump_file, " not hot anymore %ld < %ld",
+                (long)info->count,
+                (long)total /2);
       return false;
     }