[llvm-dev] [GlobalISel] MachineMemOperands for generic memory instructions

Quentin Colombet via llvm-dev llvm-dev at lists.llvm.org
Thu Apr 14 14:13:37 PDT 2016


Hi Tom,

I haven’t looked into those aspects yet, but here are my initial thoughts.

> On Apr 14, 2016, at 10:24 AM, Tom Stellard <tom at stellard.net> wrote:
> 
> Hi,
> 
> Will the generic memory instructions (e.g. G_LOAD, G_STORE) still have
> a MachineMemOperand as the last operand?

Ultimately, no, see my next answer.

> Or was there a plan to use
> something else?

The plan would be to have this information attached to the instruction, not an additional operand.
This would probably live into the description of the generic instruction. The description already needs to evolve for generic instruction to accommodate the type of the instruction and other things like fast maths flags and such.
https://llvm.org/bugs/show_bug.cgi?id=26576

> 
> It seems like we can at least re-use the MachineMemOperand interface,
> as long as we create a sub-class that does not depend on a reference
> to the original LLVM IR memory instruction.

Since you have started to look into that, do you see any problem with what I am suggesting?

Cheers,
-Quentin

> 
> -Tom



More information about the llvm-dev mailing list