-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
enhancementNew feature or requestNew feature or request
Description
We want to effectively allow instruction reordering at pipeline edges, which means reordering is associated with --- operators.
Then, we also need to re-establish the original order at some later point in the pipeline (a different --- boundary).
Tasks for this feature:
- syntax that wraps a "re-order" region (i.e., a start and finish). Options are "block" syntax, or "start" and "end" statements. I tend to prefer the former. We want this to be associated with two edges between pipeline stages.
- rethink existing "Out-of-order" parallel execution of branches in if statements. If these are inside of a "re-order" region, we could relax the in-order requirement part since they will get re-ordered correctly later (potentially).
- runtime implementation of a re-order buffer which checks all of the necessary blocking conditions (i.e.,
blockstatements for each entry) - a pluggable issue scheduler that can take data from the instruction and order issue requests based on custom logic.
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request