kuznia-rdzeni / coreblocks

RISC-V out-of-order core for education and research purposes
https://kuznia-rdzeni.github.io/coreblocks/
BSD 3-Clause "New" or "Revised" License
33 stars 13 forks source link

Precommit using validate_arguments #677

Open tilk opened 2 months ago

tilk commented 2 months ago

This PR makes the precommit method in ROB runnable only if the rob_id from its argument matches. This allows to eliminate m.If expressions comparing rob_ids in FUs.

What do you think? Is this a good idea? I kind of like it because this seems to fit better to Transactron's philosophy: actions which are impossible due to external factors are not performed because of methods not being ready.

This PR depends on #663 and #679.

TODO: