545d7be0 | 06-May-2024 |
Yangyu Chen <[email protected]> |
riscv-zicond: Add Zicond Extension (#2941)
This PR added RISC-V Integer Conditional Operations Extension, which is
in the RVA23U64 Profile Mandatory Base. And the performance of
conditional move i
riscv-zicond: Add Zicond Extension (#2941)
This PR added RISC-V Integer Conditional Operations Extension, which is
in the RVA23U64 Profile Mandatory Base. And the performance of
conditional move instructions in micro-architecture is an interesting
point to explore.
Zicond instructions added: czero.eqz, czero.nez
Changes based on spec:
https://github.com/riscvarchive/riscv-zicond/releases/download/v1.0.1/riscv-zicond_1.0.1.pdf
Signed-off-by: Yangyu Chen <[email protected]>
show more ...
|
4aa00286 | 28-Apr-2024 |
Xuan Hu <[email protected]> |
Decode: add waitForward and blockBackward in vector segment load/store
* Only the first uop has waitForward flag. * Only the last uop has blockBackward flag. * Only the uop with blockBackward flag w
Decode: add waitForward and blockBackward in vector segment load/store
* Only the first uop has waitForward flag. * Only the last uop has blockBackward flag. * Only the uop with blockBackward flag will block the next uop in Dispatch, remove waitForward flag from block condition.
show more ...
|
e8b68a8e | 17-Apr-2024 |
good-circle <[email protected]> |
DecodeUnit: Unmasked vld should not rely on unnecessary old vd
Old vd refers to the original value in the register, which may be repeatedly assigned during the loop, causing the same load instructio
DecodeUnit: Unmasked vld should not rely on unnecessary old vd
Old vd refers to the original value in the register, which may be repeatedly assigned during the loop, causing the same load instruction to be mistakenly dependent in two consecutive loops.
For example: vsetvli a5,a4,e32,m1,tu,ma vle32.v v5,(a2) should rely on old vd as this instruction is tail undisturbed. beqz
Another example: vsetvli a5,t1,e32,m1,ta,ma vle32.v v1,(s4) need not rely on old vd, because it is tail agnostic. beqz
However, store instructions should always need vd as store data.
show more ...
|