[LLVMdev] Post Increment Indirect Move Instructions
hfinkel at anl.gov
Mon Sep 30 12:08:11 PDT 2013
----- Original Message -----
> We have an architecture where the indirect move instruction
> implicitly increments the pointer
> value after the move. We have Instruction format and pattern for this
> type of instructions.
> How to encode the information that the pointer is incremented?
As you seem to be aware, LLVM has patterns specifically to match pre/post increment loads and stores (post_store). In your *ISelLowering.cpp file, you'll need to call setIndexedLoadAction(ISD::POST_INC, <type>, Legal), and the same for setIndexedStoreAction. Then you'll need to implement a getPostIndexedAddressParts function in that same file (you can look in the ARM backend for an example). If you can select your indirect moves using TableGen patterns, then you can probably use the post_store pattern.
> Thanks and regards,
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-dev