[LLVMdev] analysis and transformation of Machine IRs
ahatanak at gmail.com
Tue Aug 31 14:45:32 PDT 2010
Thank you for replying to my email.
On Tue, Aug 31, 2010 at 2:01 PM, Jakob Stoklund Olesen <stoklund at 2pi.dk>wrote:
> On Aug 26, 2010, at 11:05 AM, Akira Hatanaka wrote:
> > Is there a class or function that generates an add or sub instruction in
> a target-independent manner?
> No. Such a target hook does not exist.
> > I am looking for something similar to TargetInstrInfo::copyRegTpReg but
> one that creates other types of instructions.
> It almost sounds like you should be writing a normal optimization pass that
> operates on LLVM IR instead of a code generator pass. That is a lot easier
> too. Are you doing something similar to LoopUnroll.cpp?
It reorders and replicates instructions in the original machine basic block,
so in a sense it is similar to LoopUnroll.cpp.
As you have pointed out, I agree that an LLVM IR scheduling pass would be
much easier to write. However, since the scheduling pass I am writing uses
the target instructions' latency and resource usage information, it would be
hard to generate a good schedule if it were operating on the LLVM IR instead
of the Machine IR.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev