Alex Bradbury via llvm-dev
2019-Jan-07 16:33 UTC
[llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes
On Sun, 6 Jan 2019 at 00:42, Mehdi AMINI via llvm-dev <llvm-dev at lists.llvm.org> wrote:> > > > 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. > > > I proposed this a while back, but it think there were some problems with it, I don't remember what exactly but maybe related to bootstrapping / 2-stages builds? > > + Chris, maybe he remembers something?LLVM_OPTIMIZED_TABLEGEN=ON is a handy way of speeding up build times, but it really shouldn't be recommended for anyone who is modifying .td files. You run the risk of making .td modifications that trigger asserts for those not using LLVM_OPTIMIZED_TABLEGEN. Best, Alex
via llvm-dev
2019-Jan-07 16:39 UTC
[llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes
> -----Original Message----- > From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Alex > Bradbury via llvm-dev > Sent: Monday, January 07, 2019 11:33 AM > To: Mehdi AMINI > Cc: LLVM Dev > Subject: Re: [llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes > > On Sun, 6 Jan 2019 at 00:42, Mehdi AMINI via llvm-dev > <llvm-dev at lists.llvm.org> wrote: > > > > > > > > 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. > > > > > > I proposed this a while back, but it think there were some problems with > it, I don't remember what exactly but maybe related to bootstrapping / 2- > stages builds? > > > > + Chris, maybe he remembers something? > > LLVM_OPTIMIZED_TABLEGEN=ON is a handy way of speeding up build times, > but it really shouldn't be recommended for anyone who is modifying .td > files. You run the risk of making .td modifications that trigger > asserts for those not using LLVM_OPTIMIZED_TABLEGEN.Can we make LLVM_OPTIMIZED_TABLEGEN=ON build it as Release+Asserts? --paulr> > Best, > > Alex > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Mehdi AMINI via llvm-dev
2019-Jan-07 16:53 UTC
[llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes
On Mon, Jan 7, 2019 at 8:39 AM <paul.robinson at sony.com> wrote:> > > > -----Original Message----- > > From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of > Alex > > Bradbury via llvm-dev > > Sent: Monday, January 07, 2019 11:33 AM > > To: Mehdi AMINI > > Cc: LLVM Dev > > Subject: Re: [llvm-dev] Removing LLVM_ALWAYS_INLINE from ADT classes > > > > On Sun, 6 Jan 2019 at 00:42, Mehdi AMINI via llvm-dev > > <llvm-dev at lists.llvm.org> wrote: > > > > > > > > > > > > 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. > > > > > > > > > I proposed this a while back, but it think there were some problems > with > > it, I don't remember what exactly but maybe related to bootstrapping / 2- > > stages builds? > > > > > > + Chris, maybe he remembers something? > > > > LLVM_OPTIMIZED_TABLEGEN=ON is a handy way of speeding up build times, > > but it really shouldn't be recommended for anyone who is modifying .td > > files. You run the risk of making .td modifications that trigger > > asserts for those not using LLVM_OPTIMIZED_TABLEGEN. > > Can we make LLVM_OPTIMIZED_TABLEGEN=ON build it as Release+Asserts?There is (use to be) some very expensive assertions in llvm-tblgen. — Mehdi> > --paulr > > > > > Best, > > > > Alex > > _______________________________________________ > > 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/20190107/f775d2ab/attachment.html>