Paul C. Anagnostopoulos via llvm-dev
2020-Oct-07 13:32 UTC
[llvm-dev] New TableGen backend for debugging
I'm glad you find it useful. I haven't thought about it being done as part of the build, nor am I any sort of build guru. What do other people think? At 10/7/2020 08:12 AM, Nemanja Ivanovic wrote:>This is really useful. Is there a way to produce this output automatically (by providing some CMake variable)? For example, something like: >-DBUILD_TBLGEN_DEBUG=<Target> > >On Sat, Oct 3, 2020 at 10:48 AM Paul C. Anagnostopoulos via llvm-dev <<mailto:llvm-dev at lists.llvm.org>llvm-dev at lists.llvm.org> wrote: >I'd like to announce a new TableGen backend: Print Detailed Records. I hope this will help people when they are debugging complex TableGen files. It prints all the global variables, classes, and records with more detail than the default backend. In particular, it includes the source locations of the class and record definitions, and the source locations of the places where field values were set. It also includes the defm sequence for records that were generated by one or more defm statements. > >You can read about it here: > ><https://llvm.org/docs/TableGen/BackGuide.html#the-printdetailedrecords-backend>https://llvm.org/docs/TableGen/BackGuide.html#the-printdetailedrecords-backend
Nicolai Hähnle via llvm-dev
2020-Oct-07 18:58 UTC
[llvm-dev] New TableGen backend for debugging
Hi Paul, On Wed, Oct 7, 2020 at 3:33 PM Paul C. Anagnostopoulos via llvm-dev <llvm-dev at lists.llvm.org> wrote:> I'm glad you find it useful. I haven't thought about it being done as part of the build, nor am I any sort of build guru. What do other people think?I think this overloads the build system. Our build configuration is already full of really badly documented options (kind of general disease of large CMake-using projects), and it removes the developer from what's really going on. I think it would be better to - Teach people how to invoke TableGen manually - Teach people how to determine by themselves how TableGen is invoked during the build Teach a person to fish, and all that. Cheers, Nicolai> > > At 10/7/2020 08:12 AM, Nemanja Ivanovic wrote: > >This is really useful. Is there a way to produce this output automatically (by providing some CMake variable)? For example, something like: > >-DBUILD_TBLGEN_DEBUG=<Target> > > > >On Sat, Oct 3, 2020 at 10:48 AM Paul C. Anagnostopoulos via llvm-dev <<mailto:llvm-dev at lists.llvm.org>llvm-dev at lists.llvm.org> wrote: > >I'd like to announce a new TableGen backend: Print Detailed Records. I hope this will help people when they are debugging complex TableGen files. It prints all the global variables, classes, and records with more detail than the default backend. In particular, it includes the source locations of the class and record definitions, and the source locations of the places where field values were set. It also includes the defm sequence for records that were generated by one or more defm statements. > > > >You can read about it here: > > > ><https://llvm.org/docs/TableGen/BackGuide.html#the-printdetailedrecords-backend>https://llvm.org/docs/TableGen/BackGuide.html#the-printdetailedrecords-backend > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev-- Lerne, wie die Welt wirklich ist, aber vergiss niemals, wie sie sein sollte.
Paul C. Anagnostopoulos via llvm-dev
2020-Oct-07 20:49 UTC
[llvm-dev] New TableGen backend for debugging
I certainly agree that there are a boatload of CMake options. I haven't even scratched the surface. In keeping with your suggestion: Is there a way to tell Ninja to build just one target machine? At 10/7/2020 02:58 PM, Nicolai Hähnle wrote:>Hi Paul, > >On Wed, Oct 7, 2020 at 3:33 PM Paul C. Anagnostopoulos via llvm-dev ><llvm-dev at lists.llvm.org> wrote: >> I'm glad you find it useful. I haven't thought about it being done as part of the build, nor am I any sort of build guru. What do other people think? > >I think this overloads the build system. Our build configuration is >already full of really badly documented options (kind of general >disease of large CMake-using projects), and it removes the developer >from what's really going on. I think it would be better to > >- Teach people how to invoke TableGen manually >- Teach people how to determine by themselves how TableGen is invoked >during the build > >Teach a person to fish, and all that. > >Cheers, >Nicolai