The backend can bake a kernel's HBM addresses in as arith.constant, computed from a fixed formula —
pointer i at i × 16 GiB. Nothing supports that path: compiler.py:221-229 already marks it
SOON TO BE DEPRECATED, and per docs/designs/level-d-fixture-coverage.md:385 all 28 device
compiles take the symbolic branch. Remove it.
Delete
_SEGMENT_BYTES, _MAX_POINTER_ARGS, _elem_bytes, _segment_addresses,
infer_base_addresses_from_ptr_types (backend/compiler.py:113-199); the
if not options.symbolic_args: block in _make_ktir (:596-600); the .ktir-entry error
(:651-661).
SpyreOptions.base_addresses and symbolic_args, the mutual-exclusion check (:291-296), the
parse_options inference (:434-435).
lib/Transforms/MaterializeBaseAddresses.cpp, its Passes.td entry
(include/Transforms/Passes.td:136-185), the Passes.h:27 factory declaration, and the 6 lit
fixtures under test/Transforms/MaterializeBaseAddresses/.
bindBaseAddresses / baseAddresses on SpyrecodePipelineOptions (include/Pipeline.h:52-56) and
the branch at lib/Pipeline.cpp:185-195, whose canonicalize + CSE exist only to fold the
constants it introduces.
SpyreLauncher._check_argument_mode_agrees (backend/driver.py:316-351) — with one mode there is
nothing to disagree with.
The backend can bake a kernel's HBM addresses in as
arith.constant, computed from a fixed formula —pointer i at i × 16 GiB. Nothing supports that path:
compiler.py:221-229already marks itSOON TO BE DEPRECATED, and perdocs/designs/level-d-fixture-coverage.md:385all 28 devicecompiles take the symbolic branch. Remove it.
Delete
_SEGMENT_BYTES,_MAX_POINTER_ARGS,_elem_bytes,_segment_addresses,infer_base_addresses_from_ptr_types(backend/compiler.py:113-199); theif not options.symbolic_args:block in_make_ktir(:596-600); the.ktir-entry error(
:651-661).SpyreOptions.base_addressesandsymbolic_args, the mutual-exclusion check (:291-296), theparse_optionsinference (:434-435).lib/Transforms/MaterializeBaseAddresses.cpp, itsPasses.tdentry(
include/Transforms/Passes.td:136-185), thePasses.h:27factory declaration, and the 6 litfixtures under
test/Transforms/MaterializeBaseAddresses/.bindBaseAddresses/baseAddressesonSpyrecodePipelineOptions(include/Pipeline.h:52-56) andthe branch at
lib/Pipeline.cpp:185-195, whosecanonicalize+CSEexist only to fold theconstants it introduces.
SpyreLauncher._check_argument_mode_agrees(backend/driver.py:316-351) — with one mode there isnothing to disagree with.