[PATCH] Improve performance of vector code on A15

James Molloy James.Molloy at arm.com
Thu Feb 21 10:53:23 PST 2013


Hi Quentin,


> > Maybe a stupid remark, looking at your patch, unless I miss
> > something, if I choose to disable your pass, I don't get the
> > previous behavior for CortexA15 as the
> > createExecutionDependencyFixPass will be skipped.
> > Is that intended/desirable?

You're entirely right, and that wasn't intended. Thanks for spotting
this, I attach a version with this modified.


Joey,

> Minor thing: You should be using a triple slash /// for documentation
> (especially for A15SDOptimizer::runOnMachineInstruction), and
> I think they have to go above the function.

It's intended to be a comment describing the inner workings of the
algorithm, not documentation (how to use a module/algorithm). It's not
even externally accessible as it's in an anonymous namespace.

But if you want me to, I can convert it to a doxygen comment.

Cheers,

James

On Thu, 2013-02-21 at 18:33 +0000, Quentin Colombet wrote:
> Hi James,
>
>
> Maybe a stupid remark, looking at your patch, unless I miss something,
> if I choose to disable your pass, I don't get the previous behavior
> for CortexA15 as the createExecutionDependencyFixPass will be skipped.
> Is that intended/desirable?
>
> -Quentin
>
> On Feb 21, 2013, at 10:13 AM, James Molloy <James.Molloy at arm.com>
> wrote:
>
> > Hi,
> >
> > Attached is a patch which improves performance of vector code on
> > Cortex-A15.
> >
> > Certain code sequences, where an S register is written but read as a
> > D
> > register, can execute slowly. This patch defines a pass which
> > detects
> > when SPRs are written but read as DPRs and inserts code sequences
> > which,
> > although nonobvious, make code run much quicker.
> >
> > The second patch, implicit-ops.diff, fixes an unrelated bug with
> > implicit defs/uses that happens to impact the A15 pass's efficiency.
> >
> > Please review!
> >
> > Cheers,
> >
> > James
> >
> > -- IMPORTANT NOTICE: The contents of this email and any attachments
> > are confidential and may also be privileged. If you are not the
> > intended recipient, please notify the sender immediately and do not
> > disclose the contents to any other person, use it for any purpose,
> > or store or copy the information in any medium.  Thank
> > you.<a15-sd-optimizer.diff><implicit-ops.diff>_______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>


-- IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium.  Thank you.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: a15-sd-optimizer.diff
Type: text/x-patch
Size: 20724 bytes
Desc: a15-sd-optimizer.diff
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130221/7bb757f3/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: implicit-ops.diff
Type: text/x-patch
Size: 1197 bytes
Desc: implicit-ops.diff
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130221/7bb757f3/attachment-0001.bin>


More information about the llvm-commits mailing list