On 10/12/18 10:30 AM, Bastian Koppelmann wrote:
> +%pred   24:4
> +%succ   20:4
...
> +@noargs  ................................
...
> +@fence   .... .... .... .....  ... ..... ....... %pred %succ
...
> +fence    0000 .... ....   00000 000 00000 0001111 @fence
> +fence_i  000000000000     00000 001 00000 0001111 @noargs

@noargs is useless, even as documentation, since by its omission there are no
arguments.

Also, "the unused fields in the FENCE instruction, imm[11:8], rs1, and rd, are
reserved for finer-grain fences in future extensions. For forward
compatibility, base implementations shall ignore these fields, and standard
software shall zero these fields."

Therefore "-" not "0" in the relevant portions.  And for clarity I would simply
fold it all together as

fence   ---- pred:4 succ:4 ----- 000 ----- 0001111
fence_i ---- ----   ----   ----- 001 ----- 0001111

Or just use "@i", which is the underlying format and ignore the rs1 and rd
fields in the trans_ expanders, and pull pred+succ out of imm there.


r~

Reply via email to