Mapping between instruction ins/outs to instruction bits-field


How does the mapping between instruction inputs and outputs
to the instruction bits-field is done?

From what I saw it either by name matching or by positional

matching of unassigned bits-fields, and the two methods can't
be mixed. Is it correct?

Supposing the above is correct then, setting inputs names in
MIOperandInfo (of custom Operand) should behave as if they were
specified directly in the out/ins list?


CGIOperandList::CGIOperandList() ignores names that are specified in
MIOperandInfo (Not my preferred logic).

I did find "noNamedPositionallyEncodedOperands" that will probably do
fine in most of my cases.

Anyway, thanks for your help.