[PATCH] D102707: Fix non-global-value-max-name-size not considered by LLParser

Dimitry Andric via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 24 15:09:34 PST 2022


dim added a comment.

In D102707#3267708 <https://reviews.llvm.org/D102707#3267708>, @mehdi_amini wrote:

> In D102707#3267278 <https://reviews.llvm.org/D102707#3267278>, @dim wrote:
>
>> For some reason, this commit causes a huge memory usage, and extreme slowdown, when compiling the FreeBSD port `math/openturns` (https://github.com/openturns/openturns) port; see https://bugs.freebsd.org/261341.
>>
>> With `llvmorg-13-init-11364-g0ce58c52d50` (i.e. just before this commit):?
>> ... 
>> I had to terminate the clang process after ~9 minutes, as it was using >115GiB virtual memory, and this was a bit of a risk to crash the (shared) machine I was working on.
>>
>> Any ideas, before I attempt reducing the ~196,000 line test case? :)
>
> This is pretty bad... Can you clarify if your clang is built with assertions or in release mode?

Ah sorry, forgot to mention that, all clang builds I do for bisecting are with assertions enabled (`LLVM_ENABLE_ASSERTIONS=ON` and `CMAKE_BUILD_TYPE=Release`). This is also the case for clang in FreeBSD 14-CURRENT (aka our main branch).

> By default clang in release mode does not enable value names so this patch should be a no-op.
>
> In non-release mode (or when value names are explicitly enabled), I could see some code path changing in `Value::setNameImpl` possibly.
> Could you take a profile of your clang? Even if your interrupt after 30s the samples should already point to some interesting places...

I'm currently reducing the test case, which seems to go fairly well, I'll post this in a proper github ticket tomorrow, and I'll attempt to get some profiling done.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D102707/new/

https://reviews.llvm.org/D102707



More information about the llvm-commits mailing list