diff --git a/si-report.py b/si-report.py
index 2bf804930b796a1f993b57f3b614630faf88f785..bbc25c903b161b354aa580841ec91b7e953e4313 100755
--- a/si-report.py
+++ b/si-report.py
@@ -294,14 +294,10 @@ def subtract_stats(x, y):
         result.__dict__[name] = x.__dict__[name] - y.__dict__[name]
     return result
 
-def is_regression(before, after):
+def is_different(before, after):
     for field in before.get_metrics():
-        if field == 'maxwaves':
-            if before.__dict__[field] > after.__dict__[field]:
-                return True
-        else:
-            if before.__dict__[field] < after.__dict__[field]:
-                return True
+        if before.__dict__[field] != after.__dict__[field]:
+            return True
     return False
 
 def divide_stats(num, div):
@@ -617,7 +613,7 @@ def print_tables(before_all_results, after_all_results):
 
             # we don't have to add all shaders, just those that we may need
             # to display
-            if (is_regression(before, after) or
+            if (is_different(before, after) or
                 after.scratch_size > 0 or
                 after.spilled_vgprs > 0 or
                 after.privmem_vgprs > 0 or