add gcc/gdb interface files
authorTom Tromey <tromey@redhat.com>
Wed, 14 May 2014 19:42:57 +0000 (13:42 -0600)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Fri, 12 Dec 2014 21:23:53 +0000 (22:23 +0100)
commita92a2e3435f9f579365424fb95d5e07cbd4c4ffd
tree8f7edb36bd6340819d67f80b61cb887c34dffaba
parentde571fc5fbd89d21436119ca2cd9dce1375bdcb3
add gcc/gdb interface files

The gcc plugin is split into two parts.  One part is an ordinary gcc
plugin.  The other part is a shared library that is loaded by gdb.

This patch adds some files that define the interface exported by this
shared library to gdb.  These files also define the internal API by
which the gdb- and gcc-sides communicate.

These files will be kept in sync between gcc and gdb like much of
include/.

The exported API has been intentionally kept very simple.  In
particular only a single function is exported from the gdb-side
library; symbol visibility is used to hide everything else.  This
exported symbol is a function which is called to return a structure
holding function pointers that gdb then uses.  This structure is
versioned so that changes can be made without necessarily requiring a
simultaneous gdb upgrade.

Note that the C compiler API is broken out separately.  This lets us
extend it to other GCC front ends as desired.  We plan to investigate
C++ in the future.

include/ChangeLog
2014-12-12  Phil Muldoon  <pmuldoon@redhat.com>
    Jan Kratochvil  <jan.kratochvil@redhat.com>
    Tom Tromey  <tromey@redhat.com>

* gcc-c-fe.def: New file.
* gcc-c-interface.h: New file.
* gcc-interface.h: New file.
include/ChangeLog
include/gcc-c-fe.def [new file with mode: 0644]
include/gcc-c-interface.h [new file with mode: 0644]
include/gcc-interface.h [new file with mode: 0644]