Where is the documentation about registering a machine pass? I'm unable to find it. I have built a machine function pass similar to the one found in HexagonHardwareLoops.cpp. So I have generated a machine pass.cpp file, modified 'Target'.h and 'Target'TargetMachine.cpp (to add pass via addPass() in the addPreRegAlloc()). All this builds/compiles fine. When running llc the pass does not get executed. I seem to be missing some steps? Potentially registration of the machine pass? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140714/ef1fed5f/attachment.html>
On Mon, 2014-07-14 at 08:31 -0700, Ryan Taylor wrote:> Where is the documentation about registering a machine pass? I'm > unable to find it. > > > I have built a machine function pass similar to the one found in > HexagonHardwareLoops.cpp. So I have generated a machine pass.cpp file, > modified 'Target'.h and 'Target'TargetMachine.cpp (to add pass via > addPass() in the addPreRegAlloc()). All this builds/compiles fine. > > > When running llc the pass does not get executed. > > > I seem to be missing some steps? Potentially registration of the > machine pass?That should be all you need to do. Are you running in a debugger and making sure your added addPass() call is actually being executed?> > > Thanks.----------------------------------------------------------------------------------- This email message is for the sole use of the intended recipient(s) and may contain confidential information. Any unauthorized review, use, disclosure or distribution is prohibited. If you are not the intended recipient, please contact the sender by reply email and destroy all copies of the original message. -----------------------------------------------------------------------------------
It's not being executed. I'm both trying to print via outs() and add info via STATISTIC, neither is occurring. On Mon, Jul 14, 2014 at 12:22 PM, Justin Holewinski <jholewinski at nvidia.com> wrote:> On Mon, 2014-07-14 at 08:31 -0700, Ryan Taylor wrote: > > Where is the documentation about registering a machine pass? I'm > > unable to find it. > > > > > > I have built a machine function pass similar to the one found in > > HexagonHardwareLoops.cpp. So I have generated a machine pass.cpp file, > > modified 'Target'.h and 'Target'TargetMachine.cpp (to add pass via > > addPass() in the addPreRegAlloc()). All this builds/compiles fine. > > > > > > When running llc the pass does not get executed. > > > > > > I seem to be missing some steps? Potentially registration of the > > machine pass? > > That should be all you need to do. Are you running in a debugger and > making sure your added addPass() call is actually being executed? > > > > > > Thanks. > > > ----------------------------------------------------------------------------------- > This email message is for the sole use of the intended recipient(s) and > may contain > confidential information. Any unauthorized review, use, disclosure or > distribution > is prohibited. If you are not the intended recipient, please contact the > sender by > reply email and destroy all copies of the original message. > > ----------------------------------------------------------------------------------- >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140714/360cc1e3/attachment.html>
Possibly Parallel Threads
- [LLVMdev] Register Machine Pass
- Confused on how to do a machinefunction pass
- Confused on how to do a machinefunction pass
- Confused on how to do a machinefunction pass
- [LLVMdev] Fwd: Re: [PATCH] [TABLEGEN] Do not crash on intrinsics with names longer than 40 characters