Fixing the evaluating of HLS metadata for simulation#74
Merged
Conversation
Signed-off-by: Jan-Oliver Opdenhövel <Jan-Oliver.Opdenhovel@amd.com>
Signed-off-by: Jan-Oliver Opdenhövel <Jan-Oliver.Opdenhovel@amd.com>
Collaborator
Author
|
The issue with the VRT unit tests was that they would run a system update before installing new packages. Apparently, this sometimes brakes and isn't best practice, so I have removed the system update. Now, it works and should also work for all other PRs with failing VRT unit testing workflows. |
Collaborator
|
lgtm |
hpc-aulmamei
approved these changes
May 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
generate_sim_tclwas overwriting itskernel_hls_by_typemapping with an empty dict immediately after building it, sobuild_system_map_contextreceived no HLS metadata and silently fell back to the register-stem heuristic in_build_functional_args_fallback.The user-visible effect: for simulation builds, buffer-typed
<arg>entries insystem_map.xmlwere emitted without theport=attribute (the fallback has no access to thehwRefsinterface info needed to resolve the AXI4FULL port), and argnameattributes were derived from register stems rather than the original HLS argument name. Emulation builds were unaffected becausegenerate_emu_tclpopulates the dict correctly.Reproduction
Build
examples/00_axilitefor both emulation and simulation and diff the twosystem_map.xmlfiles. Before this fix, theincrement_0buffer arg appears as:Fix
Drop the stray
kernel_hls_by_type: dict[str, Path] = {}re-declaration inlinker/v80pp/emit/sim/tcl_gen.pyso the populated mapping survives intobuild_system_map_context. With HLS metadata available, the existing logic atsystem_map_ctx.py:249-271correctly resolves and emits theport=attribute, and arg names come from the HLSArgsrather than register stems.