On 3/6/20 8:36 PM, LIU Zhiwei wrote: > I define fields shared between vector helpers and decode code. > FIELD(VDATA, MLEN, 0, 8) > FIELD(VDATA, VM, 8, 1) > FIELD(VDATA, LMUL, 9, 2) > FIELD(VDATA, NF, 11, 4) > > But I can't find a good place to place the fields. There is not a > "translate.h" in target/riscv. > Is cpu.h OK? Perhaps "internals.h" would be better. About 4 of the targets have one of these. It keeps things that are not relevant to the actual architecture, only to the implementation, separate. r~