- Make ATOMIC_I, ATOMIC_NRI, AtomicLoad, AtomicStore classes and make other operations inherit from them
- Factor the common opcode prefix '0xfe' out from the opcodes into the common class
- Reorder instructions in the order of increasing opcodes
Nice! LGTM with nits.
|22 ↗||(On Diff #187184)|
It looks like this multiclass isn't used anywhere. Can it be omitted for simplicity?
|63 ↗||(On Diff #187184)|
Why make the kind an argument when it only ever has one value? This could just be a def : Pat<...> instead of a class. Same with other NotifyPat... classes with only one instantiation. If you want to keep the classes for symmetry with other instructions, I think it would still make sense to inline the kind argument.