[PATCH] optimize MachineBasicBlock::getSymbol a bit

Eli Bendersky eliben at google.com
Mon Apr 22 09:14:07 PDT 2013


Ping!


On Thu, Apr 18, 2013 at 3:27 PM, Eli Bendersky <eliben at google.com> wrote:

> MachineBasicBlock::getSymbol gets called quite a lot and was doing a lot
> of repetitive work. Most of the symbol remains unchanged between MBBs in
> the same function, and yet getSymbol was laboriously reconstructing the
> full symbol with a concatenation of Twines. This patch optimizes this away:
> MachineFunction caches the symbol "template" for its MBBs and does a
> minimal amount of work to generate a new symbol without too much copying.
>
> There's no change in functionality, but this makes
> MachineBasicBlock::getSymbol somewhere between 25-50% faster (exact numbers
> are hard to obtain for this very internal method).
>
> Please take a look,
> Eli
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20130422/66736396/attachment.html>


More information about the llvm-commits mailing list