Skip to content

Commit ad7271f

Browse files
committed
compiler: handle plain text header
1 parent b419050 commit ad7271f

4 files changed

Lines changed: 12 additions & 4 deletions

File tree

devito/ir/iet/visitors.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -715,7 +715,15 @@ def visit_Operator(self, o, mode='all'):
715715
efuncs.extend([self._visit(i), blankline])
716716

717717
# Definitions
718-
headers = [c.Define(*i) for i in o._headers] + [blankline]
718+
headers = []
719+
for h in o._headers:
720+
try:
721+
headers.append(c.Define(*h))
722+
except TypeError:
723+
# Plain string
724+
headers.append(c.Line(h))
725+
headers = headers + [blankline]
726+
# headers = [c.Define(*i) for i in o._headers] + [blankline]
719727

720728
# Header files
721729
includes = self._operator_includes(o) + [blankline]

devito/passes/iet/dtypes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def _complex_includes(iet: Callable, lang: type[LangBB], compiler: Compiler,
3030
return iet, {}
3131

3232
metadata = {}
33-
lib = as_tuple(lang['header-complex'])
33+
lib = as_tuple(lang['includes-complex'])
3434

3535
if lang.get('complex-namespace') is not None:
3636
metadata['namespaces'] = lang['complex-namespace']

devito/passes/iet/languages/C.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class CBB(LangBB):
2525
'alloc-global-symbol': lambda i, j, k:
2626
Call('memcpy', (i, j, k)),
2727
# Complex and float16
28-
'header-complex': 'complex.h',
28+
'includes-complex': 'complex.h',
2929
}
3030

3131

devito/passes/iet/languages/CXX.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ class CXXBB(LangBB):
6161
'alloc-global-symbol': lambda i, j, k:
6262
Call('memcpy', (i, j, k)),
6363
# Complex and float16
64-
'header-complex': 'complex',
64+
'includes-complex': 'complex',
6565
'complex-namespace': [UsingNamespace('std::complex_literals')],
6666
'def-complex': std_arith,
6767
}

0 commit comments

Comments
 (0)