[llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes

Jonas Devlieghere via llvm-dev llvm-dev at lists.llvm.org
Fri Jan 4 15:55:36 PST 2019


On Fri, Jan 4, 2019 at 3:52 PM PaweĊ‚ Bylica via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> On Sat, Jan 5, 2019 at 12:38 AM Duncan P. N. Exon Smith via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> This makes sense to me.
>>
>> One concern is that this in itself will slow down the build, since
>> tablegen will get even slower.  Ideally, there would be some (perhaps
>> default?) configuration where we build the tablegen binaries with
>> optimizations on and then use them in the build, as if we were
>> cross-compiling.
>>
>
> Maybe something simple like -DLLVM_OPTIMIZE_TABLEGEN=ON (enabled by
> default for Debug builds). You would need to set it to off only if you want
> to debug tablegen.
>

+1 on this. If you don't hack on tablegen this is a big win.


>
>
>>
>> > On Jan 4, 2019, at 15:14, Davide Italiano via llvm-dev <
>> llvm-dev at lists.llvm.org> wrote:
>> >
>> > Hi,
>> > I would like to propose, based on a previous discussion on llvm-dev,
>> > the following change.
>> > https://reviews.llvm.org/D56337
>> >
>> > The main motivation for annotating member functions of ADT clases with
>> > LLVM_ALWAYS_INLINE  was that of speeding up `check-llvm` at `-O0`.
>> > Turns out this significantly degrades the debuggability of fundamental
>> > classes in llvm itself, e.g. StringRef or SmallVector.
>> >
>> > After discussing we agreed that it's reasonable to drop
>> > LLVM_ALWYAS_INLINE from ADT classes  member functions and add a note
>> > in the developer's manual.
>> >
>> > If you have any feedbacks or concerns, please speak up.
>> > If nothing major arises, I'm going to commit this patch in a week (or
>> such).
>> >
>> > Thanks for your time,
>> >
>> > --
>> > Davide
>> >
>> > "There are no solved problems; there are only problems that are more
>> > or less solved" -- Henri Poincare
>> > _______________________________________________
>> > LLVM Developers mailing list
>> > llvm-dev at lists.llvm.org
>> > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190104/e5352894/attachment.html>


More information about the llvm-dev mailing list