[llvm-dev] Early Tail Duplication Inefficiency
Florian Hahn via llvm-dev
llvm-dev at lists.llvm.org
Wed Jan 30 12:02:09 PST 2019
> On Jan 30, 2019, at 18:00, Riyaz Puthiyapurayil via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> I didn’t see any response on this. Is there any way to turn off early tail duplication with a clang-7 option (other than completely turning off all optimizations)? The issue is reproducible with a very simple test case. Clang-7 with optimizations turned on takes hours compared to minutes with clang-5.0. Here is a simple cooked up test (the real-life example is of course different but this simple test exposes the same inefficiency):
>
> // test.cpp
> #include <string>
>
> struct Foo {
> std::string s1;
> std::string s2;
> std::string s3;
> };
>
> Foo Array[] = {
> { “0”, “0”, “0” },
> { “1”, “1”, “1” },
> :
> :
> :
> { “9999”, “9999”, “9999” }
> };
>
> Compile:
>
> % clang++ -c -O3 test.cpp
> …
I think a bug report would be useful to track the issue. It would be great if you could file one here: https://bugs.llvm.org/ <https://bugs.llvm.org/>
Ideally with a reproducer.
Thanks,
Florian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190130/d5682229/attachment.html>
More information about the llvm-dev
mailing list