MCInstrDesc provides the mayLoad and mayStore flags that seem
appropriate to use as a target-independent way to implement isLoad and
isStore.
I believe this is currently good enough to use for the RISC-V target as
well. I've provided a test for this that checks the generated dyno
stats (which seems to be the only thing both isLoad and isStore are
used for).
I'm not completely sure, but shouldn't we check here that we may not store here? E.g. atomic instructions seems would return both true for store and load and the current logic is designed here to handle load-only instructions. What do you think?