Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

why new instruction for a subset of FENCE.I #16

Open
jnk0le opened this issue Jan 8, 2022 · 0 comments
Open

why new instruction for a subset of FENCE.I #16

jnk0le opened this issue Jan 8, 2022 · 0 comments

Comments

@jnk0le
Copy link

jnk0le commented Jan 8, 2022

about id-consistency-proposal.pdf v0.9.1

Default (conservative) behaviour of FENCE.I is to flush the pipeline, all uncoherent instruction caches and anything else related.
fence.i also didn't allocate whole 22.125 bits of opcode just to waste it.

IMPORT.I - is just an isb like pipeline flush that is already subset of fence.i. Why can't we use those 12bits of imm to somehow encode fence.ipipe instruction? In this way it degrades to regular fence.i on "legacy" cores.

There is also an likely need for fence.ipipe instruction for different purposes than importing new instructions, so fence.ipipe and import.i probably should be encoded with a different bit pattern as the latter might not need to perform whole pipeline flush.

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

No branches or pull requests

1 participant