Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: amaranth-lang/amaranth
base: 6fd7cbad0d6c
Choose a base ref
...
head repository: amaranth-lang/amaranth
compare: cce6b8687bd0
Choose a head ref
  • 1 commit
  • 2 files changed
  • 1 contributor

Commits on Feb 1, 2020

  1. build.plat: align pipeline with Fragment.prepare().

    Since commit 7257c20, platform code calls create_missing_domains()
    before _propagate_domains_up() (as a part of prepare() call). Since
    commit a7be3b4, without a platform, create_missing_domains() is
    calle after _propagate_domains_up(); because of that, it adds
    the missing domain to the fragment. When platform code then calls
    prepare() again, this causes an assertion failure.
    
    The true intent behind the platform code being written this way is
    that it *overrides* a part of prepare()'s mechanism. Because it was
    not changed when prepare() was modified in 7257c20, the override,
    which happened to work by coincidence, stopped working. This is
    now fixed by inlining the relevant parts of Fragment.prepare() into
    Platform.prepare().
    
    This is not a great solution, but given the amount of breakage this
    causes (no platform-using code works), it is acceptable for now.
    
    Fixes #307.
    whitequark committed Feb 1, 2020
    Copy the full SHA
    cce6b86 View commit details
    Browse the repository at this point in the history