[lldb-dev] Emacs LLDB support & the GDB/MI Interface
Jan Kratochvil via lldb-dev
lldb-dev at lists.llvm.org
Sat Jul 29 13:43:59 PDT 2017
On Sat, 29 Jul 2017 21:59:03 +0200, ylluminate via lldb-dev wrote:
> And one thread seems to indicate that if if we could "convince LLDB
> developers to provide
> a decent implementation of the GDB/MI protocol,
That is an oxymoron.
MI protocol was designed to minimize the amount of data transferred between
gdb/lldb and a front end. But this communication isn't anything expensive as
the debugger always runs on the same host as the frontend anyway
(gdb/lldb<->gdbserver link is for remote debugging). Unfortunately complexity
of the GDB/MI protocol from this misoptimization leads to many bugs on both
sides of the implementation, for GDB:
https://sourceware.org/bugzilla/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=SUSPENDED&bug_status=WAITING&bug_status=REOPENED&component=mi&list_id=37310&product=gdb&query_format=advanced
101 bugs found.
The MI protocol in use does not conform to its spec as there is a bug-to-bug
compatibility instead such as:
https://sourceware.org/ml/gdb-patches/2008-11/msg00275.html
There still also isn't any reasonable MI library to be used by a front end.
I find the LLDB API to be a better choice to be used by the frontend/emacs
(I have only little but great experience with the LLDB API).
Jan
More information about the lldb-dev
mailing list