Skip to content

Happens after splicing#1029

Draft
a-alveyblanc wants to merge 26 commits into
inducer:mainfrom
a-alveyblanc:happens-after-splicing
Draft

Happens after splicing#1029
a-alveyblanc wants to merge 26 commits into
inducer:mainfrom
a-alveyblanc:happens-after-splicing

Conversation

@a-alveyblanc

@a-alveyblanc a-alveyblanc commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Depends on #916. Adds generic machinery to enable transformations to update pre-defined happens-after relations. For example, applying an affine transformation to kernel domains or splitting inames invalidates happens-afters that were defined on the old domain/inames.

Adds:

  1. apply_affine_transform_to_happens_afters: used when inames are transformed but statements in a kernel are not touched
  2. splice_happens_after_as_consumer: uses existing happens-after information on producers to "splice" in a happens-after relation on a new instruction that is a consumer
  3. splice_happens_after_as_producer: same as above, but on the producer side
  4. splice_happens_after_as_producer_and_consumer: same, but with incoming and outgoing edges. really, just calls the producer and consumer versions in sequence.

@a-alveyblanc
a-alveyblanc marked this pull request as draft July 21, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant