|
6 | 6 |
|
7 | 7 | from devito.finite_differences import Max, Min |
8 | 8 | from devito.finite_differences.differentiable import SafeInv |
| 9 | +from devito.logger import warning |
9 | 10 | from devito.ir import (Any, Forward, DummyExpr, Iteration, List, Prodder, |
10 | 11 | FindApplications, FindNodes, FindSymbols, Transformer, |
11 | 12 | Uxreplace, filter_iterations, retrieve_iteration_tree, |
@@ -144,13 +145,12 @@ def generate_macros(graph, **kwargs): |
144 | 145 |
|
145 | 146 |
|
146 | 147 | @iet_pass |
147 | | -def _generate_macros(iet, tracker=None, langbb=None, **kwargs): |
| 148 | +def _generate_macros(iet, tracker=None, langbb=None, printer=CPrinter, **kwargs): |
148 | 149 | # Derive the Macros necessary for the FIndexeds |
149 | 150 | iet = _generate_macros_findexeds(iet, tracker=tracker, **kwargs) |
150 | 151 |
|
151 | 152 | # NOTE: sorting is necessary to ensure deterministic code generation |
152 | 153 | headers = [i.header for i in tracker.values()] |
153 | | - printer = kwargs.get('printer', CPrinter) |
154 | 154 | headers = sorted((printer()._print(define), printer()._print(expr)) |
155 | 155 | for define, expr in headers) |
156 | 156 |
|
@@ -238,7 +238,7 @@ def _(expr, langbb): |
238 | 238 | try: |
239 | 239 | eps = np.finfo(expr.base.dtype).resolution**2 |
240 | 240 | except ValueError: |
241 | | - print(f"Warning: dtype not recognized in SafeInv for {expr.base}") |
| 241 | + warning(f"Warning: dtype not recognized in SafeInv for {expr.base}") |
242 | 242 | eps = np.finfo(np.float32).resolution**2 |
243 | 243 | b = Cast('b', dtype=np.float32) |
244 | 244 | return (('SAFEINV(a, b)', |
|
0 commit comments