restrict YBNDSWI to 8-bits (anticipating a smaller immediate following ARC review)#873
restrict YBNDSWI to 8-bits (anticipating a smaller immediate following ARC review)#873tariqkurd-repo wants to merge 1 commit intoriscv:mainfrom
Conversation
|
A) We'd already pretty severely restricted B) If you're going to restrict to 8 bits worth of immediate, almost surely "1 through 256" is not the best choice. C) This doesn't change that we're still expanding into a whole new I-type-shaped chunk of the encoding space (opcode=0011011, funct3=011), so... why? |
|
This seems like speculative spec churn without concrete feedback from ARC. Can we please just wait? If they somehow go for the very specific position of giving us an I-type whose immediate (and/or rs1) we can carve up sort like this, but for some reason a 10-bit slice of that I-type is too much but an 8-bit slice is OK, I'd suggest redoing the survey with this formula: |
|
We can wait - I'l mark this as draft. The spreadsheet is here: https://codasipazure-my.sharepoint.com/:x:/r/personal/tariq_kurd_codasip_com/Documents/CSetBounds%20immediates%20in%20FreeBSD.xlsx?d=w065e4286b1044a5da28421eb2c659e34&csf=1&web=1&e=RWHkmo |
|
None of my MS hats have access to that URL. For CHERIoT, at least, the data you've shown suggests that there was no gain in moving from 7 to 8 bits, and since there is gain to be had in moving from 8 to 9 bits, that suggests that a formula with further reach (be that |
|
I think we should just wait and see what ARC decides on the opcode allocation. |
04be082 to
5db1a95
Compare

We don't have any compelling data for the top 2 bits of the 10-bit immediate, so instead of waiting for it to be rejected by ARC we may as well trim it up-front.
The 8-bit immediate covers all the CHERIoT use cases, and almost all of the FreeBSD use cases too.