Re: gdb 8.3: "handler for the OSI ABI "FreeBSD" is not built into this configuration"

Martin Simmons
2020-05-28T17:30:51Z

OK, that shows a reasonable set of registers and a reasonable backtrace.
It shows that llvm-tblgen jumped to address 0 from inside __once_proxy
for some reason.

Gdb seems to be working, at least for this core file, so you can safely
ignore the OS ABI warning.

__Martin

>>>>> On Thu, 28 May 2020 08:40:03 -0600, Chris Nicol said:
>
> Thanks, Martin. Here is the log from
>
> /usr/local/bin/gdb ./llvm-tblgen llvm-tblgen.core:
>
> nicolc@phonix:~/llvm/llvm-9.0.1.src/Mybuilddir/bin % /usr/local/bin/gdb
> ./llvm-tblgen llvm-tblgen.core
> /usr/local/bin/gdb: warning: A handler for the OS ABI "FreeBSD" is not
> built into this configuration
> of GDB. Attempting to continue with the default sparc settings.
>
> GNU gdb (GDB) 9.1
> Copyright (C) 2020 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later
> <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "sparc64-unknown-freebsd12.1".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
> <http://www.gnu.org/software/gdb/documentation/>.
>
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from ./llvm-tblgen...
> [New LWP 100161]
> Core was generated by `./llvm-tblgen -version'.
> Program terminated with signal SIGSEGV, Segmentation fault.
> #0 0x0000000000000000 in ?? ()
> (gdb) info all
> g0 0x0 0
> g1 0x0 0
> g2 0x417bfddc 1098644956
> g3 0x80000000 2147483648
> g4 0x4090c000 1083228160
> g5 0x408a6688 1082812040
> g6 0x0 0
> g7 0x408ad910 1082841360
> o0 0x408a6698 1082812056
> o1 0x2 2
> o2 0x10 16
> o3 0xf4 244
> o4 0x106838 1075256
> o5 0x7fffffff 2147483647
> sp 0x7fdffffd5e1 0x7fdffffd5e1
> o7 0x41017944 1090615620
> l0 0x0 0
> l1 0x4090c000 1083228160
> l2 0x1 1
> l3 0x0 0
> l4 0x0 0
> l5 0x0 0
> l6 0x0 0
> l7 0x41238000 1092845568
> i0 0x884c80 8932480
> i1 0x3 3
> i2 0x0 0
> i3 0x0 0
> i4 0x0 0
> i5 0x0 0
> fp 0x7fdffffd691 0x7fdffffd691
> i7 0x409addf0 1083891184
> f0 0 (raw 0x00000000)
> f1 0 (raw 0x00000000)
> f2 0 (raw 0x00000000)
> f3 0 (raw 0x00000000)
> f4 0 (raw 0x00000000)
> f5 0 (raw 0x00000000)
> f6 0 (raw 0x00000000)
> f7 0 (raw 0x00000000)
> f8 0.00999999978 (raw 0x3c23d70a)
> f9 0 (raw 0x00000000)
> f10 2 (raw 0x40000000)
> f11 0 (raw 0x00000000)
> --Type <RET> for more, q to quit, c to continue without paging--
> f12 0 (raw 0x00000000)
> f13 0 (raw 0x00000000)
> f14 0 (raw 0x00000000)
> f15 0 (raw 0x00000000)
> f16 0 (raw 0x00000000)
> f17 0 (raw 0x00000000)
> f18 0 (raw 0x00000000)
> f19 0 (raw 0x00000000)
> f20 0 (raw 0x00000000)
> f21 0 (raw 0x00000000)
> f22 0 (raw 0x00000000)
> f23 0 (raw 0x00000000)
> f24 0 (raw 0x00000000)
> f25 0 (raw 0x00000000)
> f26 0 (raw 0x00000000)
> f27 0 (raw 0x00000000)
> f28 0 (raw 0x00000000)
> f29 0 (raw 0x00000000)
> f30 0 (raw 0x00000000)
> f31 0 (raw 0x00000000)
> f32 0 (raw 0x0000000000000000)
> f34 0 (raw 0x0000000000000000)
> f36 0 (raw 0x0000000000000000)
> f38 0 (raw 0x0000000000000000)
> f40 0 (raw 0x0000000000000000)
> f42 0 (raw 0x0000000000000000)
> f44 0 (raw 0x0000000000000000)
> f46 0 (raw 0x0000000000000000)
> f48 0 (raw 0x0000000000000000)
> f50 0 (raw 0x0000000000000000)
> f52 0 (raw 0x0000000000000000)
> f54 0 (raw 0x0000000000000000)
> f56 0 (raw 0x0000000000000000)
> f58 0 (raw 0x0000000000000000)
> f60 0 (raw 0x0000000000000000)
> f62 0 (raw 0x0000000000000000)
> pc 0x0 0x0
> npc 0x4 0x4
> state 0x4400001205 292057780741
> fsr 0x0 [ ]
> fprs 0x3 [ DL DU ]
> y 0x0 0
> cwp 0x5 5
> pstate 0x12 [ IE PEF ]
> --Type <RET> for more, q to quit, c to continue without paging--
> asi 0x0 0
> ccr 0x44 [ icc.z xcc.z ]
> d0 0 (raw 0x0000000000000000)
> d2 0 (raw 0x0000000000000000)
> d4 0 (raw 0x0000000000000000)
> d6 0 (raw 0x0000000000000000)
> d8 5.3776417829113669e-19 (raw 0x3c23d70a00000000)
> d10 2 (raw 0x4000000000000000)
> d12 0 (raw 0x0000000000000000)
> d14 0 (raw 0x0000000000000000)
> d16 0 (raw 0x0000000000000000)
> d18 0 (raw 0x0000000000000000)
> d20 0 (raw 0x0000000000000000)
> d22 0 (raw 0x0000000000000000)
> d24 0 (raw 0x0000000000000000)
> d26 0 (raw 0x0000000000000000)
> d28 0 (raw 0x0000000000000000)
> d30 0 (raw 0x0000000000000000)
> d32 0 (raw 0x0000000000000000)
> d34 0 (raw 0x0000000000000000)
> d36 0 (raw 0x0000000000000000)
> d38 0 (raw 0x0000000000000000)
> d40 0 (raw 0x0000000000000000)
> d42 0 (raw 0x0000000000000000)
> d44 0 (raw 0x0000000000000000)
> d46 0 (raw 0x0000000000000000)
> d48 0 (raw 0x0000000000000000)
> d50 0 (raw 0x0000000000000000)
> d52 0 (raw 0x0000000000000000)
> d54 0 (raw 0x0000000000000000)
> d56 0 (raw 0x0000000000000000)
> d58 0 (raw 0x0000000000000000)
> d60 0 (raw 0x0000000000000000)
> d62 0 (raw 0x0000000000000000)
> q0 0 (raw 0x00000000000000000000000000000000)
> q4 0 (raw 0x00000000000000000000000000000000)
> q8 7.03365791880182537906194915943984275e-298 (raw
> 0x3c23d70a000000004000000000000000)
> q12 0 (raw 0x00000000000000000000000000000000)
> q16 0 (raw 0x00000000000000000000000000000000)
> q20 0 (raw 0x00000000000000000000000000000000)
> q24 0 (raw 0x00000000000000000000000000000000)
> q28 0 (raw 0x00000000000000000000000000000000)
> q32 0 (raw 0x00000000000000000000000000000000)
> q36 0 (raw 0x00000000000000000000000000000000)
> --Type <RET> for more, q to quit, c to continue without paging--
> q40 0 (raw 0x00000000000000000000000000000000)
> q44 0 (raw 0x00000000000000000000000000000000)
> q48 0 (raw 0x00000000000000000000000000000000)
> q52 0 (raw 0x00000000000000000000000000000000)
> q56 0 (raw 0x00000000000000000000000000000000)
> q60 0 (raw 0x00000000000000000000000000000000)
> (gdb) where
> #0 0x0000000000000000 in ?? ()
> #1 0x000000004101794c in __once_proxy () from
> /usr/local/lib/gcc9/libstdc++.so.6
> #2 0x00000000409addf8 in pthread_once () from /lib/libthr.so.3
> #3 0x000000000059ca94 in __gthread_once (__once=0x884c80
> <mutex_init_flag>, __func=0x41017920 <__once_proxy>)
> at
> /usr/local/lib/gcc9/include/c++/sparc64-portbld-freebsd12.1/bits/gthr-default.h:700
> #4 0x000000000059ceb0 in std::call_once<void (&)()> (__once=...,
> __f=@0x59c494: {void (void)} 0x59c494 <initializeMutex()>)
> at /usr/local/lib/gcc9/include/c++/mutex:683
> #5 0x000000000059cc14 in llvm::call_once<void (&)()> (flag=...,
> F=@0x59c494: {void (void)} 0x59c494 <initializeMutex()>)
> at
> /home/nicolc/llvm/llvm-9.0.1.src/include/llvm/Support/Threading.h:104
> #6 0x000000000059c52c in getManagedStaticMutex () at
> /home/nicolc/llvm/llvm-9.0.1.src/lib/Support/ManagedStatic.cpp:30
> #7 0x000000000059c5d8 in llvm::ManagedStaticBase::RegisterManagedStatic
> (this=0x884230 <GlobalParser>,
> Creator=0x577f08 <llvm::object_creator<(anonymous
> namespace)::CommandLineParser>::call()>,
> Deleter=0x577fb0 <llvm::object_deleter<(anonymous
> namespace)::CommandLineParser>::call(void*)>)
> at /home/nicolc/llvm/llvm-9.0.1.src/lib/Support/ManagedStatic.cpp:38
> #8 0x000000000057784c in llvm::ManagedStatic<(anonymous
> namespace)::CommandLineParser, llvm::object_creator<(anonymous
> namespace)::CommandLineParser>, llvm::object_deleter<(anonymous
> namespace)::CommandLineParser> >::operator* (this=0x884230 <GlobalParser>)
> at
> /home/nicolc/llvm/llvm-9.0.1.src/include/llvm/Support/ManagedStatic.h:89
> #9 0x0000000000576cc0 in llvm::ManagedStatic<(anonymous
> namespace)::CommandLineParser, llvm::object_creator<(anonymous
> namespace)::CommandLineParser>, llvm::object_deleter<(anonymous
> namespace)::CommandLineParser> >::operator-> (this=0x884230 <GlobalParser>)
> at
> /home/nicolc/llvm/llvm-9.0.1.src/include/llvm/Support/ManagedStatic.h:94
> #10 0x000000000056921c in llvm::cl::OptionCategory::registerCategory
> (this=0x883288 <AsmMatcherEmitterCat>)
> at /home/nicolc/llvm/llvm-9.0.1.src/lib/Support/CommandLine.cpp:468
> #11 0x000000000013e508 in llvm::cl::OptionCategory::OptionCategory
> (this=0x883288 <AsmMatcherEmitterCat>, Name=..., Description=...)
> at
> /home/nicolc/llvm/llvm-9.0.1.src/include/llvm/Support/CommandLine.h:199
> #12 0x0000000000139400 in __static_initialization_and_destruction_0
> (__initialize_p=1, __priority=65535)
> at
> /home/nicolc/llvm/llvm-9.0.1.src/utils/TableGen/AsmMatcherEmitter.cpp:126
> #13 0x000000000013951c in _GLOBAL__sub_I_AsmMatcherEmitter.cpp(void) ()
> at
> /home/nicolc/llvm/llvm-9.0.1.src/utils/TableGen/AsmMatcherEmitter.cpp:3918
> #14 0x000000004087f504 in ?? () from /libexec/ld-elf.so.1
> Backtrace stopped: previous frame identical to this frame (corrupt stack?)
> (gdb)
>
> On 5/28/2020 4:57 AM, Martin Simmons wrote:
> > Hi Chris,
> >
> > I received your email below but it looks like the mailing list rejected
> > it. For a small amount of output, it is better to just paste the text
> > into the email rather than attaching an rtf.
> >
> > I can see what causes the warning but I think it might be unrelated to
> > the problem of debugging llvm-tblgen.
> >
> > Rather than running gdb inside gdb, please just run:
> >
> > /usr/local/bin/gdb ./llvm-tblgen llvm-tblgen.core
> >
> > and then use the gdb commands:
> >
> > info all
> > where
> >
> > and send the full output.
> >
> > __Martin
>
>
> --
> ______________________________________________________________________
> Dr. Christopher J. Nicol, Phone: (403) 329-2261
> University Librarian and FAX: (403) 329-2234
> Professor of Economics,
> The University of Lethbridge, E-Mail: nicolc@uleth.ca
> Lethbridge, Alberta, T1K 3M4, CANADA. http://people.uleth.ca/~nicolc
>