Siddharth Bhat via llvm-dev
2017-Oct-22 07:50 UTC
[llvm-dev] How to dump broken IR from LLVM backend?
You can also `-disable-verify -o <output-filename> ` which will disable the verify check. On Sat, 21 Oct 2017 at 23:54 Dipanjan Das via llvm-dev < llvm-dev at lists.llvm.org> wrote:> > Yes, that definitely works. Wanted to know if there's a switch for file > output or not. > > On 21 October 2017 at 23:45, 陳韋任 <chenwj.cs97g at g2.nctu.edu.tw> wrote: > >> Just use Unix IO redirect? `llc -mllvm -print-after-all &> a.txt` >> >> 2017-10-22 14:17 GMT+08:00 Dipanjan Das via llvm-dev < >> llvm-dev at lists.llvm.org>: >> >>> >>> Seems like "-mllvm -print-after-all" does the trick. Is there any switch >>> that dumps the output to a file instead of console? >>> >>> On 21 October 2017 at 21:33, Dipanjan Das <mail.dipanjan.das at gmail.com> >>> wrote: >>> >>>> >>>> My pass complains and gives up after spitting out: >>>> >>>> =====================================>>>> Instruction does not dominate all uses! >>>> %44 = icmp ne i8** %endptr, null >>>> br i1 %44, label %32, label %33 >>>> Instruction has bogus parent pointer! >>>> =====================================>>>> >>>> Is there any way to dump the entire IR even in broken form from the >>>> backend so that I can inspect what's going on? >>>> >>>> -- >>>> >>>> Thanks & Regards, >>>> Dipanjan >>>> >>> >>> >>> >>> -- >>> >>> Thanks & Regards, >>> Dipanjan >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>> >>> >> >> >> -- >> Wei-Ren Chen (陳韋任) >> Homepage: https://people.cs.nctu.edu.tw/~chenwj >> > > > > -- > > Thanks & Regards, > Dipanjan > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-- Sending this from my phone, please excuse any typos! -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171022/16c5e901/attachment-0001.html>
Dipanjan Das via llvm-dev
2017-Oct-22 16:37 UTC
[llvm-dev] How to dump broken IR from LLVM backend?
Neither '-disable-verify' nor '-mllvm -disable-verify' seem to work with LLVM/Clang 3.8.0 On 22 October 2017 at 00:50, Siddharth Bhat <siddu.druid at gmail.com> wrote:> You can also `-disable-verify -o <output-filename> ` which will disable > the verify check. > > On Sat, 21 Oct 2017 at 23:54 Dipanjan Das via llvm-dev < > llvm-dev at lists.llvm.org> wrote: > >> >> Yes, that definitely works. Wanted to know if there's a switch for file >> output or not. >> >> On 21 October 2017 at 23:45, 陳韋任 <chenwj.cs97g at g2.nctu.edu.tw> wrote: >> >>> Just use Unix IO redirect? `llc -mllvm -print-after-all &> a.txt` >>> >>> 2017-10-22 14:17 GMT+08:00 Dipanjan Das via llvm-dev < >>> llvm-dev at lists.llvm.org>: >>> >>>> >>>> Seems like "-mllvm -print-after-all" does the trick. Is there any >>>> switch that dumps the output to a file instead of console? >>>> >>>> On 21 October 2017 at 21:33, Dipanjan Das <mail.dipanjan.das at gmail.com> >>>> wrote: >>>> >>>>> >>>>> My pass complains and gives up after spitting out: >>>>> >>>>> =====================================>>>>> Instruction does not dominate all uses! >>>>> %44 = icmp ne i8** %endptr, null >>>>> br i1 %44, label %32, label %33 >>>>> Instruction has bogus parent pointer! >>>>> =====================================>>>>> >>>>> Is there any way to dump the entire IR even in broken form from the >>>>> backend so that I can inspect what's going on? >>>>> >>>>> -- >>>>> >>>>> Thanks & Regards, >>>>> Dipanjan >>>>> >>>> >>>> >>>> >>>> -- >>>> >>>> Thanks & Regards, >>>> Dipanjan >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> llvm-dev at lists.llvm.org >>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>>> >>>> >>> >>> >>> -- >>> Wei-Ren Chen (陳韋任) >>> Homepage: https://people.cs.nctu.edu.tw/~chenwj >>> >> >> >> >> -- >> >> Thanks & Regards, >> Dipanjan >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >> > -- > Sending this from my phone, please excuse any typos! >-- Thanks & Regards, Dipanjan -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171022/4459c2d3/attachment.html>
Don Hinton via llvm-dev
2017-Oct-22 17:44 UTC
[llvm-dev] How to dump broken IR from LLVM backend?
Unfortunately, it depends on which tool you are running, e.g.: $ bin/clang -cc1 --help | grep verifier -disable-llvm-verifier Don't run the LLVM IR verifier pass $ bin/opt --help-list-hidden | grep disable-verify -disable-verify - Do not run the verifier On Sun, Oct 22, 2017 at 9:37 AM, Dipanjan Das via llvm-dev < llvm-dev at lists.llvm.org> wrote:> > Neither '-disable-verify' nor '-mllvm -disable-verify' seem to work with > LLVM/Clang 3.8.0 > > On 22 October 2017 at 00:50, Siddharth Bhat <siddu.druid at gmail.com> wrote: > >> You can also `-disable-verify -o <output-filename> ` which will disable >> the verify check. >> >> On Sat, 21 Oct 2017 at 23:54 Dipanjan Das via llvm-dev < >> llvm-dev at lists.llvm.org> wrote: >> >>> >>> Yes, that definitely works. Wanted to know if there's a switch for file >>> output or not. >>> >>> On 21 October 2017 at 23:45, 陳韋任 <chenwj.cs97g at g2.nctu.edu.tw> wrote: >>> >>>> Just use Unix IO redirect? `llc -mllvm -print-after-all &> a.txt` >>>> >>>> 2017-10-22 14:17 GMT+08:00 Dipanjan Das via llvm-dev < >>>> llvm-dev at lists.llvm.org>: >>>> >>>>> >>>>> Seems like "-mllvm -print-after-all" does the trick. Is there any >>>>> switch that dumps the output to a file instead of console? >>>>> >>>>> On 21 October 2017 at 21:33, Dipanjan Das <mail.dipanjan.das at gmail.com >>>>> > wrote: >>>>> >>>>>> >>>>>> My pass complains and gives up after spitting out: >>>>>> >>>>>> =====================================>>>>>> Instruction does not dominate all uses! >>>>>> %44 = icmp ne i8** %endptr, null >>>>>> br i1 %44, label %32, label %33 >>>>>> Instruction has bogus parent pointer! >>>>>> =====================================>>>>>> >>>>>> Is there any way to dump the entire IR even in broken form from the >>>>>> backend so that I can inspect what's going on? >>>>>> >>>>>> -- >>>>>> >>>>>> Thanks & Regards, >>>>>> Dipanjan >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Thanks & Regards, >>>>> Dipanjan >>>>> >>>>> _______________________________________________ >>>>> LLVM Developers mailing list >>>>> llvm-dev at lists.llvm.org >>>>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>>>> >>>>> >>>> >>>> >>>> -- >>>> Wei-Ren Chen (陳韋任) >>>> Homepage: https://people.cs.nctu.edu.tw/~chenwj >>>> >>> >>> >>> >>> -- >>> >>> Thanks & Regards, >>> Dipanjan >>> _______________________________________________ >>> LLVM Developers mailing list >>> llvm-dev at lists.llvm.org >>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >>> >> -- >> Sending this from my phone, please excuse any typos! >> > > > > -- > > Thanks & Regards, > Dipanjan > > _______________________________________________ > 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/20171022/e939fa6f/attachment.html>