diff options
author | Than McIntosh <thanm@google.com> | 2016-10-11 00:11:43 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2016-10-11 00:11:43 +0000 |
commit | 3c061ac0525eebec030eee46aab6671023177eea (patch) | |
tree | 2cb8646afabaf58b7f77d2990aa7cd375f662850 /gcc/go/go-lang.c | |
parent | abe08b7d909d27884e9f5f2cb879739e2c909106 (diff) | |
download | gcc-3c061ac0525eebec030eee46aab6671023177eea.zip gcc-3c061ac0525eebec030eee46aab6671023177eea.tar.gz gcc-3c061ac0525eebec030eee46aab6671023177eea.tar.bz2 |
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
Diffstat (limited to 'gcc/go/go-lang.c')
-rw-r--r-- | gcc/go/go-lang.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/go/go-lang.c b/gcc/go/go-lang.c index 88667e0..8d66ee0 100644 --- a/gcc/go/go-lang.c +++ b/gcc/go/go-lang.c @@ -37,6 +37,7 @@ along with GCC; see the file COPYING3. If not see #include <mpfr.h> #include "go-c.h" +#include "go-gcc.h" /* Language-dependent contents of a type. */ @@ -111,6 +112,8 @@ go_langhook_init (void) args.check_divide_overflow = go_check_divide_overflow; args.compiling_runtime = go_compiling_runtime; args.debug_escape_level = go_debug_escape_level; + args.linemap = go_get_linemap(); + args.backend = go_get_backend(); go_create_gogo (&args); build_common_builtin_nodes (); |