compiler: move Backend/Linemap creation out of front end.
authorThan McIntosh <thanm@google.com>
Tue, 11 Oct 2016 00:11:43 +0000 (00:11 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Tue, 11 Oct 2016 00:11:43 +0000 (00:11 +0000)
commit3c061ac0525eebec030eee46aab6671023177eea
tree2cb8646afabaf58b7f77d2990aa7cd375f662850
parentabe08b7d909d27884e9f5f2cb879739e2c909106
compiler: move Backend/Linemap creation out of front end.

    Push the calls to create Backend and Linemap object out
    of the front end into the back end, and instead pass pointers to
    these objects in the go_create_gogo_args struct. This allows
    for more flexibility in the interfaces used to create the
    objects.

    Reviewed-on: https://go-review.googlesource.com/30698

* go-gcc.h: New file.
* go-c.h (struct go_create_gogo_args): Add backend and linemap
fields.
* go-lang.c: Include "go-gcc.h".
(go_langhook_init): Set linemap and backend fields of args.
* go-gcc.cc: Include "go-gcc.h".
* go-linemap.cc: Include "go-gcc.h".

From-SVN: r240959
gcc/go/ChangeLog
gcc/go/go-c.h
gcc/go/go-gcc.cc
gcc/go/go-gcc.h [new file with mode: 0644]
gcc/go/go-lang.c
gcc/go/go-linemap.cc
gcc/go/gofrontend/MERGE
gcc/go/gofrontend/backend.h
gcc/go/gofrontend/go-linemap.h
gcc/go/gofrontend/go.cc