diff --git a/loopy/precompute.py b/loopy/precompute.py
index 18d066397547370e8ce70a9a8721e625a3fd713e..a8b082d0ad36dd71aefba9e29a01b44b1b1fc01f 100644
--- a/loopy/precompute.py
+++ b/loopy/precompute.py
@@ -839,8 +839,14 @@ def precompute(kernel, subst_use, sweep_inames=[], within=None,
     from loopy import tag_inames
     kernel = tag_inames(kernel, new_iname_to_tag)
 
-    from loopy.kernel.tools import assign_automatic_axes
-    kernel = assign_automatic_axes(kernel)
+    from loopy.kernel.data import AutoFitLocalIndexTag
+    has_automatic_axes = any(
+            isinstance(tag, AutoFitLocalIndexTag)
+            for tag in new_iname_to_tag.values())
+
+    if has_automatic_axes:
+        from loopy.kernel.tools import assign_automatic_axes
+        kernel = assign_automatic_axes(kernel)
 
     return kernel