Thinking about this again, it seems like you could start with just simple enumerated modifiers like Intel does, and then only switch to more complicated logic with macros and fields if there is an actual need in the future.