Skip to content

Commit a808cba

Browse files
committed
Update c_backend to use breaking_changes as intended
1 parent dc3e273 commit a808cba

File tree

1 file changed

+13
-12
lines changed

1 file changed

+13
-12
lines changed

py/dml/c_backend.py

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
from . import objects, logging, crep, output, ctree, serialize, structure
1616
from . import traits
17-
from . import breaking_changes as compat
17+
from . import breaking_changes
1818
import dml.globals
1919
from .structure import get_attr_name, port_class_ident, need_port_proxy_attrs
2020
from .logging import *
@@ -261,7 +261,7 @@ def generate_hfile(device, headers, filename):
261261
out("/* Generated by dmlc, do not edit! */\n\n")
262262
emit_guard_start(filename)
263263
out('#define DML_PREFIX(x) '+crep.cname(device)+'_##x\n\n')
264-
legacy_attrs = int(compat.legacy_attributes in dml.globals.enabled_compat)
264+
legacy_attrs = int(not breaking_changes.remove_legacy_attributes.enabled())
265265
out(f'#define DML_LEGACY_ATTRS {legacy_attrs}\n')
266266

267267
with allow_linemarks():
@@ -893,7 +893,7 @@ def generate_implement(code, device, impl):
893893
# descendants of the device object
894894
if (port.parent is dml.globals.device
895895
and port.objtype in {'port', 'bank'}
896-
and compat.port_proxy_ifaces in dml.globals.enabled_compat):
896+
and not breaking_changes.remove_port_proxy_ifaces.enabled()):
897897
if port.local_dimensions() == 0:
898898
code.out("static const %s = %s;\n" % (
899899
ifacetype.declaration('port_iface'),
@@ -1684,7 +1684,7 @@ def generate_pre_delete(device):
16841684
+ 'NULL);\n')
16851685
out('}\n', preindent=-1)
16861686

1687-
if dml.globals.api_version < compat.api_7:
1687+
if dml.globals.api_version < breaking_changes.api_7:
16881688
out(f'{crep.cname(device)}_deinit(_obj);\n')
16891689
out('}\n\n', preindent = -1)
16901690

@@ -1938,7 +1938,7 @@ def generate_init_data_objs(device):
19381938
for (start, end) in [('A', 'Z'), ('a', 'z'), ('0', '9'), ('_', '_')]
19391939
for i in range(ord(start), ord(end) + 1))
19401940
def init_function_name(device, outprefix):
1941-
if dml.globals.api_version <= compat.api_4_8:
1941+
if dml.globals.api_version <= breaking_changes.api_4_8:
19421942
return 'initialize_' + crep.cname(device)
19431943
return '_initialize_' + ''.join(
19441944
(ch if ch in ident_chars else '_') for ch in outprefix)
@@ -1966,7 +1966,7 @@ def generate_init(device, initcode, outprefix):
19661966
out('.init = '+crep.cname(device)+'_init,\n')
19671967
out('.finalize = '+crep.cname(device)+'_finalize,\n')
19681968
out('.objects_finalized = '+crep.cname(device)+'_objects_finalized,\n')
1969-
if dml.globals.api_version >= compat.api_7:
1969+
if dml.globals.api_version >= breaking_changes.api_7:
19701970
out('.deinit = '+crep.cname(device)+'_deinit,\n')
19711971
out('.dealloc = '+crep.cname(device)+'_dealloc,\n')
19721972
out('.description = '+doc.read()+',\n')
@@ -2166,7 +2166,7 @@ def generate_port_object_assocs_array():
21662166
else node.object_parent)
21672167
if (object_node is not dml.globals.device
21682168
# Anonymous banks
2169-
and (compat.dml12_misc not in dml.globals.enabled_compat
2169+
and (breaking_changes.remove_misc_quirks.enabled()
21702170
or object_node.ident is not None)):
21712171
port_obj_offset = (
21722172
f'offsetof({crep.structtype(dml.globals.device)}, '
@@ -3276,8 +3276,9 @@ def generate_cfile(device, footers,
32763276
full_module):
32773277
global c_file
32783278

3279-
sym = 'SIMICS_%s_API' % ('4_8' if dml.globals.api_version == compat.api_4_8
3280-
else dml.globals.api_version.str)
3279+
sym = 'SIMICS_%s_API' % (
3280+
'4_8' if dml.globals.api_version == breaking_changes.api_4_8
3281+
else dml.globals.api_version.str)
32813282
api_define = '#ifndef %s\n#define %s\n#endif\n' % (
32823283
sym, sym)
32833284

@@ -3336,8 +3337,8 @@ def generate_cfile_body(device, footers, full_module, filename_prefix):
33363337
generate_events(device)
33373338
generate_identity_data_decls()
33383339
generate_object_vtables_array()
3339-
if not (dml.globals.dml_version == (1, 2)
3340-
and compat.shared_logs_on_device in dml.globals.enabled_compat):
3340+
if (dml.globals.dml_version != (1, 2)
3341+
or breaking_changes.shared_logs_locally.enabled()):
33413342
generate_port_object_assocs_array()
33423343
generate_class_var_decl()
33433344
generate_startup_calls_entry_function(device)
@@ -3470,7 +3471,7 @@ def generate_cfile_body(device, footers, full_module, filename_prefix):
34703471

34713472
if full_module:
34723473
# caught as error earlier on
3473-
assert dml.globals.api_version == compat.api_4_8
3474+
assert dml.globals.api_version == breaking_changes.api_4_8
34743475
out('\n')
34753476
out('EXPORTED void\n')
34763477
out('init_local(void)\n')

0 commit comments

Comments
 (0)