OSDN Git Service

compiler: Move import of Go export data to gcc side of interface.
[pf3gnuchains/gcc-fork.git] / gcc / go / ChangeLog
index 002c9e3..9b17bf4 100644 (file)
@@ -1,3 +1,228 @@
+2011-12-13  Ian Lance Taylor  <iant@google.com>
+
+       * go-backend.c: #include "simple-object.h" and "intl.h".
+       (GO_EXPORT_SEGMENT_NAME): Define if not defined.
+       (GO_EXPORT_SECTION_NAME): Likewise.
+       (go_write_export_data): Use GO_EXPORT_SECTION_NAME.
+       (go_read_export_data): New function.
+       * go-c.h (go_read_export_data): Declare.
+
+2011-11-29  Sanjoy Das  <thedigitalangel@gmail.com>
+           Ian Lance Taylor  <iant@google.com>
+
+       * go-location.h: New file.
+       * go-linemap.cc: New file.
+       * go-gcc.cc: Change all uses of source_location to Location.
+       * Make-lang.in (GO_OBJS): Add go/go-linemap.o.
+       (GO_LINEMAP_H): New variable.
+       (GO_LEX_H): Use $(GO_LINEMAP_H).
+       (GO_GOGO_H, GO_TYPES_H, GO_IMPORT_H): Likewise.
+       (go/go-linemap.o): New target.
+
+2011-11-02  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
+
+2011-08-24  Roberto Lublinerman  <rluble@gmail.com>
+
+       * lang.opt: Add fgo-optimize-.
+       * go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
+       * go-c.h (go_enable_optimize): Declare.
+       * Make-lang.in (GO_OBJS): Add go/go-optimize.o.
+       (GO_EXPORT_H): Define.
+       (GO_IMPORT_H): Add $(GO_EXPORT_H).
+       (GO_AST_DUMP_H): Define.
+       (go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
+       (go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
+       (go/types.o): Likewise.
+       (go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
+       (go/go-optimize.o): New target.
+
+2011-08-24  Joseph Myers  <joseph@codesourcery.com>
+
+       * Make-lang.in (CFLAGS-go/go-lang.o): New.
+       (go/go-lang.o): Remove explicit compilation rule.
+
+2011-08-08  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
+
+2011-08-02  Roberto Lublinerman  <rluble@gmail.com>
+
+       * Make-lang.in (GO_OBJS): Add go/ast-dump.o.
+       (go/ast-dump.o): New target.
+       (go/expressions.o): Depend on go/gofrontend/ast-dump.h.
+       (go/statements.o): Likewise.
+
+2011-07-06  Richard Guenther  <rguenther@suse.de>
+
+       * go-lang.c (go_langhook_init):
+       Merge calls to build_common_tree_nodes and build_common_tree_nodes_2.
+
+2011-06-14  Joseph Myers  <joseph@codesourcery.com>
+
+       * Make-lang.in (go/go-lang.o, go/go-backend.o): Update
+       dependencies.
+       * go-backend.c: Include common/common-target.h.
+       (go_write_export_data): Use targetm_common.have_named_sections.
+       * go-lang.c: Include common/common-target.h.
+       (go_langhook_init_options_struct): Use
+       targetm_common.supports_split_stack.
+
+2011-06-13  Ian Lance Taylor  <iant@google.com>
+
+       * Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
+
+2011-06-10  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc: Include "toplev.h".
+       (Gcc_backend::immutable_struct): New function.
+       (Gcc_backend::immutable_struct_set_init): New function.
+       (Gcc_backend::immutable_struct_reference): New function.
+       * Make-lang.in (go/go-gcc.o): Depend on toplev.h.
+
+2011-06-09  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::zero_expression): New function.
+
+2011-06-07  Richard Guenther  <rguenther@suse.de>
+
+       * go-lang.c (go_langhook_init): Do not set
+       size_type_node or call set_sizetype.
+
+2011-05-27  Ian Lance Taylor  <iant@google.com>
+
+       * go-backend.c: Include "output.h".
+       (go_write_export_data): New function.
+       * go-c.h (go_write_export_data): Declare.
+       * Make-lang.in (go/go-backend.o): Depend on output.h.
+       (go/export.o): Depend on $(GO_C_H).  Do not depend on
+       $(MACHMODE_H), output.h, or $(TARGET_H).
+
+2011-05-24  Joseph Myers  <joseph@codesourcery.com>
+
+       * Make-lang.in (GCCGO_OBJS): Remove prefix.o.
+       (gccgo$(exeext)): Use libcommon-target.a.
+
+2011-05-20  Joseph Myers  <joseph@codesourcery.com>
+
+       * Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
+
+2011-05-13  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::function_type): When building a struct
+       for multiple results, check that all fields types have a size.
+       (Gcc_backend::placeholder_pointer_type): Permit name to be empty.
+
+2011-05-12  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::local_variable): Add is_address_taken
+       parameter.
+       (Gcc_backend::parameter_variable): Likewise.
+
+2011-05-07  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * go-lang.c (global_bindings_p): Return bool and simplify.
+
+2011-05-05  Nathan Froyd  <froydnj@codesourcery.com>
+
+       * go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
+
+2011-05-04  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::struct_type): Call fill_in_struct.
+       (Gcc_backend::fill_in_struct): New function.
+       (Gcc_backend::array_type): Implement.
+       (Gcc_backend::fill_in_array): New function.
+       (Gcc_backend::placeholder_pointer_type): New function.
+       (Gcc_backend::set_placeholder_pointer_type): New function.
+       (Gcc_backend::set_placeholder_function_type): New function.
+       (Gcc_backend::placeholder_struct_type): New function.
+       (Gcc_backend::set_placeholder_struct_type): New function.
+       (Gcc_backend::placeholder_array_type): New function.
+       (Gcc_backend::set_placeholder_array_type): New function.
+       (Gcc_backend::named_type): New function.
+       (Gcc_backend::circular_pointer_type): New function.
+       (Gcc_backend::is_circular_pointer_type): New function.
+
+2011-04-26  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::struct_type): Implement.
+
+2011-04-25  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::error_type): Implement.
+       (Gcc_backend::string_type): Remove.
+       (Gcc_backend::function_type): Change signature and implement.
+       (Gcc_backend::struct_type): Change signature.
+       (Gcc_backend::slice_type, Gcc_backend::map_type): Remove.
+       (Gcc_backend::channel_type, Gcc_backend::interface_type): Remove.
+       (Gcc_backend::pointer_type): Check for error.
+       * Make-lang.in (go/types.o): Depend on go/gofrontend/backend.h.
+
+2011-04-25  Evan Shaw  <edsrzf@gmail.com>
+
+       * go-gcc.c (class Gcc_tree): Make get_tree const.
+       (Gcc_backend::void_type): Implement.
+       (Gcc_backend::bool_type): Implement.
+       (Gcc_backend::integer_type): Implement.
+       (Gcc_backend::float_type): Implement.
+       (Gcc_backend::complex_type): New function.
+       (Gcc_backend::pointer_type): New function.
+       (Gcc_backend::make_type): New function.
+       (type_to_tree): New function.
+
+2011-04-21  Ian Lance Taylor  <iant@google.com>
+
+       * go-system.h (go_assert, go_unreachable): Define.
+
+2011-04-19  Ian Lance Taylor  <iant@google.com>
+
+       * go-system.h: Include "intl.h".
+       * Make-lang.in (GO_SYSTEM_H): Add intl.h.
+       (go/statements.o): Remove dependencies on intl.h $(TREE_H)
+       $(GIMPLE_H) convert.h tree-iterator.h $(TREE_FLOW_H) $(REAL_H).
+
+2011-04-19  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::temporary_variable): New function.
+
+2011-04-19  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (class Bblock): Define.
+       (Gcc_backend::if_statement): Change then_block and else_block to
+       Bblock*.
+       (Gcc_backend::block): New function.
+       (Gcc_backend::block_add_statements): New function.
+       (Gcc_backend::block_statement): New function.
+       (tree_to_block, block_to_tree): New functions.
+
+2011-04-18  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc: Include "go-c.h".
+       (class Bvariable): Define.
+       (Gcc_backend::init_statement): New function.
+       (Gcc_backend::global_variable): New function.
+       (Gcc_backend::global_variable_set_init): New function.
+       (Gcc_backend::local_variable): New function.
+       (Gcc_backend::parameter_variable): New function.
+       (tree_to_type, var_to_tree): New functions.
+       * Make-lang.in (go/go-gcc.o): Depend on $(GO_C_H).
+       * (go/gogo-tree.o): Depend on go/gofrontend/backend.h.
+
+2011-04-15  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Gcc_backend::compound_statement): New function.
+       (Gcc_backend::assignment_statement): Use error_statement.
+       (Gcc_backend::return_statement): Likewise.
+       (Gcc_backend::if_statement): Likewise.
+       (Gcc_backend::switch_statement): Likewise.
+       (Gcc_backend::statement_list): Likewise.
+
+2011-04-14  Ian Lance Taylor  <iant@google.com>
+
+       * go-gcc.cc (Backend::error_statement): New function.
+
 2011-04-13  Ian Lance Taylor  <iant@google.com>
 
        * Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).