[PATCH] [ARM] Mark a bunch of .td Operands with type _MEMORY.

Ahmed Bougacha ahmed.bougacha at gmail.com
Fri Apr 3 14:37:15 PDT 2015


================
Comment at: lib/Target/ARM/ARMInstrInfo.td:837
@@ -833,2 +836,3 @@
   let MIOperandInfo = (ops i32imm);
+  let OperandType = "OPERAND_MEMORY";
 }
----------------
qcolombet wrote:
> What is the rational behind the non-consistent uses of MemOperand and let OperandType = “OPERAND_MEMORY"?
I tried to distinguish operands that are actual pointers (e.g., ldst_so_reg above), to operands that are merely components of a pointer (postidx_imm8, postidx_reg, etc..), and aren't pointers by themselves.

For instance, grepping around for postidx_reg, it's used as an index added to addr_offset_none, which is a MemOperand.

This is a very weak argument though, and writing it now, I'm not even convinced anymore.  Should I stick with MemOperand?

http://reviews.llvm.org/D8620

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list