[llvm-dev] Scaling to many basic blocks
Joerg Sonnenberger via llvm-dev
llvm-dev at lists.llvm.org
Sun Aug 23 11:35:42 PDT 2015
On Sun, Aug 23, 2015 at 01:46:12AM +0100, Russell Wallace via llvm-dev wrote:
> On Sat, Aug 22, 2015 at 11:57 PM, Michael Zolotukhin <mzolotukhin at apple.com>
> wrote:
>
> > Hi,
> >
> > Several passes would have troubles with such code (namely, GVN and
> > JumpThreading).
>
>
> Can you just choose not to run those particular passes? I suppose the big
> problem would be if there's a problem with the code generation and related
> stuff like instruction scheduling and register allocation - is that likely
> to be the case?
One problematic pass right now is correlated value propogation. The sad
part is that at least from clang it can't be disabled short of -O0 :(
I have a patch in my tree to at least be able to disable it with -mllvm
magic, but Chandler didn't like it for the obvious reasons for in-tree.
It would be really nice if someone could (finally) add the proper memory
and compute time bounding to that pass.
Joerg
More information about the llvm-dev
mailing list