[LLVMdev] [llvm-tblgen] Two issues: crash case and mysterious double-inclusion case
Dmitry Mikushin
dmitry at kernelgen.org
Wed Feb 6 20:07:24 PST 2013
Hi Chen,
Thanks for trying!
Your favorite llvm-tblgen 3.1 is too old. Here we need 3.2svn, should be
also reproducible with TOT.
- D.
2013/2/7 陳韋任 (Wei-Ren Chen) <chenwj at iis.sinica.edu.tw>
> On Wed, Feb 06, 2013 at 11:47:31PM +0100, Dmitry Mikushin wrote:
> > Dear all,
> >
> > I need your help to understand weird llvm-tblgen behavior. Please take
> your
> > favourite version of llvm-tblgen and use it in the root directory of the
> > archive attached in both bug reports:
> >
> > http://llvm.org/bugs/show_bug.cgi?id=15188
> > http://llvm.org/bugs/show_bug.cgi?id=15189
>
> $ llvm-tblgen --version
> LLVM (http://llvm.org/):
> LLVM version 3.1
> Optimized build.
> Built Oct 17 2012 (19:26:30).
> Default target: amd64-portbld-freebsd8.3
> Host CPU: core2
>
> > ====
> > 1) First test case: crashing
> > ====
> >
> > $ ./llvm-tblgen -gen-tgt-intrinsic NVPTX1.td
> >
> > assert(iid <= Intrinsic::0 llvm-tblgen 0x00000000005c56b6
> > 1 llvm-tblgen 0x00000000005c54b2
> > 2 libpthread.so.0 0x00007fc734644a10
> > 3 libstdc++.so.6 0x00007fc7345bba5e std::string::_M_data() const + 12
> > 4 libstdc++.so.6 0x00007fc7345bba9c std::string::_M_rep() const + 24
> > 5 libstdc++.so.6 0x00007fc7345bba4c std::string::length() const + 24
> > 6 llvm-tblgen 0x000000000042507f
> > 7 llvm-tblgen 0x000000000051efd9
> > 8 llvm-tblgen 0x000000000051be22
> > 9 llvm-tblgen 0x000000000054f4f9
> > 10 llvm-tblgen 0x000000000055ce65
> > 11 llvm-tblgen 0x000000000054fb50
> > 12 libc.so.6 0x00007fc73426ca76 __libc_start_main + 370
> > 13 llvm-tblgen 0x00000000004071f9
> > Stack dump:
> > 0. Program arguments: ./llvm-tblgen -gen-tgt-intrinsic NVPTX1.td
> > Segmentation fault (core dumped)
>
> $ llvm-tblgen -gen-tgt-intrinsic NVPTX1.td
> Included from NVPTX1.td:18:
> NVPTXRegisterInfo.td:32:14: error: Value list is not of list type
> foreach i = 0-395 in {
> ^
> Included from NVPTX1.td:18:
> NVPTXRegisterInfo.td:32:14: error: expected declaration in for
> foreach i = 0-395 in {
> ^
>
> > ====
> > 2) Second test case: double inclusion of file, that is definitely
> included
> > once:
> > ====
> >
> > $ ./llvm-tblgen -gen-tgt-intrinsic NVPTX2.td
> > Included from NVPTX2.td:20:
> > NVPTXIntrinsics.td:10:1: error: def 'immFloat0' already defined
> > def immFloat0 : PatLeaf<(fpimm), [{
> > ^
>
> $ llvm-tblgen -gen-tgt-intrinsic NVPTX2.td
> Included from NVPTX2.td:18:
> NVPTXRegisterInfo.td:32:14: error: Value list is not of list type
> foreach i = 0-395 in {
> ^
> Included from NVPTX2.td:18:
> NVPTXRegisterInfo.td:32:14: error: expected declaration in for
> foreach i = 0-395 in {
> ^
>
> > NVPTX1.td differs from NVPTX2.td just in one line:
> >
> > include "NVPTXIntrinsics.td"
>
> Regards,
> chenwj
>
> --
> Wei-Ren Chen (陳韋任)
> Computer Systems Lab, Institute of Information Science,
> Academia Sinica, Taiwan (R.O.C.)
> Tel:886-2-2788-3799 #1667
> Homepage: http://people.cs.nctu.edu.tw/~chenwj
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130207/12d3d53e/attachment.html>
More information about the llvm-dev
mailing list