2013-12-12 03:24:20 +01:00
|
|
|
|
2013-12-11 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_post_options): Disable sibling calls by
|
|
|
|
|
default.
|
|
|
|
|
|
2013-12-10 21:55:41 +01:00
|
|
|
|
2013-12-10 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (check_go_parallelize): Test go-test.exp r* tests
|
|
|
|
|
separately.
|
|
|
|
|
|
2013-12-05 17:39:53 +01:00
|
|
|
|
2013-12-05 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
Revert this change; no longer required.
|
|
|
|
|
2013-11-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_post_options): If
|
|
|
|
|
-fisolate-erroneous-paths was turned on by an optimization option,
|
|
|
|
|
turn it off.
|
|
|
|
|
|
2013-11-23 20:01:57 +01:00
|
|
|
|
2013-11-23 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::function_type): Add result_struct
|
|
|
|
|
parameter.
|
|
|
|
|
|
2013-11-22 16:58:51 +01:00
|
|
|
|
2013-11-22 Andrew MacLeod <amacleod@redhat.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc: Add required include files from gimple.h.
|
|
|
|
|
* go-lang.c: Likewise
|
|
|
|
|
|
c-common.c, [...]: Replace tree_low_cst (..., 0) with tree_to_shwi throughout.
gcc/c-family/
* c-common.c, c-format.c, c-omp.c, c-pretty-print.c: Replace
tree_low_cst (..., 0) with tree_to_shwi throughout.
gcc/c/
* c-parser.c: Replace tree_low_cst (..., 0) with tree_to_shwi
throughout.
gcc/cp/
* class.c, dump.c, error.c, init.c, method.c, parser.c, semantics.c:
Replace tree_low_cst (..., 0) with tree_to_shwi throughout.
gcc/go/
* gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
tree_to_shwi throughout.
gcc/java/
* class.c, expr.c: Replace tree_low_cst (..., 0) with tree_to_shwi
throughout.
gcc/objc/
* objc-next-runtime-abi-02.c: Replace tree_low_cst (..., 0) with
tree_to_shwi throughout.
gcc/
* builtins.c, cilk-common.c, config/aarch64/aarch64.c,
config/alpha/alpha.c, config/arm/arm.c, config/c6x/predicates.md,
config/i386/i386.c, config/ia64/predicates.md, config/s390/s390.c,
coverage.c, dbxout.c, dwarf2out.c, except.c, explow.c, expr.c, expr.h,
fold-const.c, gimple-fold.c, godump.c, ipa-prop.c, omp-low.c,
predict.c, rtlanal.c, sdbout.c, stmt.c, stor-layout.c, targhooks.c,
tree-cfg.c, tree-data-ref.c, tree-inline.c, tree-ssa-forwprop.c,
tree-ssa-loop-prefetch.c, tree-ssa-phiopt.c, tree-ssa-sccvn.c,
tree-ssa-strlen.c, tree-stdarg.c, tree-vect-data-refs.c,
tree-vect-patterns.c, tree.c, tree.h, var-tracking.c, varasm.c:
Replace tree_low_cst (..., 0) with tree_to_shwi throughout.
From-SVN: r204959
2013-11-18 15:52:03 +01:00
|
|
|
|
2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* gofrontend/expressions.cc: Replace tree_low_cst (..., 0) with
|
|
|
|
|
tree_to_shwi throughout.
|
|
|
|
|
|
cuintp.c: Replace host_integerp (..., 0) with tree_fits_shwi_p throughout.
gcc/ada/
* gcc-interface/cuintp.c: Replace host_integerp (..., 0) with
tree_fits_shwi_p throughout.
gcc/c-family/
* c-ada-spec.c, c-common.c, c-format.c, c-pretty-print.c: Replace
host_integerp (..., 0) with tree_fits_shwi_p throughout.
gcc/c/
* c-parser.c: Replace host_integerp (..., 0) with tree_fits_shwi_p
throughout.
gcc/cp/
* error.c, init.c, parser.c, semantics.c: Replace
host_integerp (..., 0) with tree_fits_shwi_p throughout.
gcc/go/
* gofrontend/expressions.cc: Replace host_integerp (..., 0) with
tree_fits_shwi_p throughout.
gcc/java/
* class.c, expr.c: Replace host_integerp (..., 0) with
tree_fits_shwi_p throughout.
gcc/
* builtins.c, config/alpha/alpha.c, config/c6x/predicates.md,
config/ia64/predicates.md, config/iq2000/iq2000.c, config/mips/mips.c,
config/s390/s390.c, dbxout.c, dwarf2out.c, except.c, explow.c, expr.c,
expr.h, fold-const.c, gimple-fold.c, gimple-ssa-strength-reduction.c,
gimple.c, godump.c, graphite-scop-detection.c, graphite-sese-to-poly.c,
omp-low.c, predict.c, rtlanal.c, sdbout.c, simplify-rtx.c,
stor-layout.c, tree-data-ref.c, tree-dfa.c, tree-pretty-print.c,
tree-sra.c, tree-ssa-alias.c, tree-ssa-forwprop.c,
tree-ssa-loop-ivopts.c, tree-ssa-loop-prefetch.c, tree-ssa-math-opts.c,
tree-ssa-phiopt.c, tree-ssa-reassoc.c, tree-ssa-sccvn.c,
tree-ssa-strlen.c, tree-ssa-structalias.c, tree-vect-data-refs.c,
tree-vect-patterns.c, tree-vectorizer.h, tree.c, var-tracking.c,
varasm.c: Replace host_integerp (..., 0) with tree_fits_shwi_p
throughout.
From-SVN: r204955
2013-11-18 15:51:10 +01:00
|
|
|
|
2013-11-18 Richard Sandiford <rdsandiford@googlemail.com>
|
|
|
|
|
|
|
|
|
|
* gofrontend/expressions.cc: Replace host_integerp (..., 0) with
|
|
|
|
|
tree_fits_shwi_p throughout.
|
|
|
|
|
|
gimplify-be.h: New file.
* gimplify-be.h: New file. Add prototypes.
* gimplify.h: Don't include gimple.h.
(struct gimplify_hasher, struct gimplify_ctx, is_gimple_sizepos,
gimplify_hasher::hash, gimplify_hasher::equal): Relocate from gimple.h.
* gimple.h (struct gimplify_hasher, gimplify_hasher::hash,
gimplify_hasher::equal, struct gimplify_ctx, is_gimple_sizepos): Move
to gimplify.h.
(enum gsi_iterator_update): Move to gimple-iterator.h.
* gimple-iterator.h (enum gsi_iterator_update): Relocate from gimple.h.
* gimplify-be.c: New File.
(force_gimple_operand_1, force_gimple_operand,
force_gimple_operand_gsi_1, force_gimple_operand_gsi): Relocate from
gimplify.c.
* gimplify.c (force_gimple_operand_1, force_gimple_operand,
force_gimple_operand_gsi_1, force_gimple_operand_gsi): Move to
gimplify-be.c.
* Makefile.in (OBJS): Add gimplify-be.o
* asan.c: Include only gimplify.h, gimplify-be.h, and/or gimple.h as
required.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* gimple-expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa.c: Likewise.
* langhooks.c: Likewise.
* omp-low.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* targhooks.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* c/c-typeck.c: Include only gimplify.h and gimple.h as needed.
* c-family/c-common.c: Likewise.
* c-family/c-gimplify.c: Likewise.
* c-family/cilk.c: Likewise.
* cp/class.c: Include only gimplify.h and gimple.h as needed.
* cp/cp-gimplify.c: Likewise.
* cp/error.c: Likewise.
* cp/init.c: Likewise.
* cp/optimize.c: Likewise.
* cp/pt.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
* fortran/trans-expr.c: Include only gimplify.h and gimple.h as needed.
* fortran/trans-openmp.c: Likewise.
* go/go-lang.c: Include only gimplify.h and gimple.h as needed.
* java/java-gimplify.c: Include only gimplify.h and gimple.h as needed.
* objc/objc-act.c: Include only gimplify.h and gimple.h as needed.
From-SVN: r204812
2013-11-14 20:39:38 +01:00
|
|
|
|
2013-11-14 Andrew MacLeod <amacleod@redhat.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c: Include only gimplify.h and gimple.h as needed.
|
|
|
|
|
|
2013-11-19 13:31:09 +01:00
|
|
|
|
2013-11-14 Diego Novillo <dnovillo@google.com>
|
|
|
|
|
|
|
|
|
|
* go-backend.c: Include stor-layout.h.
|
|
|
|
|
* go-gcc.cc: Include stringpool.h.
|
|
|
|
|
Include stor-layout.h.
|
|
|
|
|
Include varasm.h.
|
|
|
|
|
* go-lang.c: Include stor-layout.h.
|
|
|
|
|
|
gimple-expr.h (create_tmp_var_name, [...]): Relocate prototypes from gimple.h.
2013-11-12 Andrew MacLeod <amacleod@redhat.com>
* gimple-expr.h (create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, mark_addressable, is_gimple_reg_rhs):
Relocate prototypes from gimple.h.
* gimplify.h: New File. Relocate some prototypes from gimple.h here.
(gimple_predicate, enum fallback, enum gimplify_status): Relocate
from gimple.h.
* gimple.h: Move some prototypes to gimplify.h.
(gimple_predicate, enum fallback, enum gimplify_status): Move to
gimplify.h.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location):
Relocate from gimpify.c.
* gimple-expr.c (remove_suffix, tmp_var_id_num, create_tmp_var_name,
create_tmp_var_raw, create_tmp_var, create_tmp_reg, mark_addressable,
is_gimple_reg_rhs) Relocate from gimplify.c.
* gimplify.c (mark_addressable): Move to gimple-expr.c.
(gimple_seq_add_stmt_without_update): Move to gimple.c.
(remove_suffix, tmp_var_id_num, create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, is_gimple_reg_rhs): Move to
gimple-expr.c.
(should_carry_location_p): Move to gimple.c.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location): Move
to gimple.h.
(annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location): Move to gimple.c.
(compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Move to gimple.c.
(rhs_predicate_for): Make static.
(gimplify_assign): Relocate from gimple.c.
* gimple.c (gimplify_assign): Move to gimplify.c.
(gimple_seq_add_stmt_without_update, should_carry_location_p,
annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location, compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Relocate from gimplify.c.
* tree.h (unshare_expr, unshare_expr_without_location,
mark_addressable): Move prototypes to gimplify.h.
* Makefile.in (GTFILES): gimple-expr.c now has the GTY tag for
tmp_var_id_num
* asan.c: Include gimplify.h rather than gimple.h.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* dwarf2out.c: Dont include gimple.h.
* fold-const.c: Include gimplify.h rather than gimple.h.
* function.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa.c: Likewise.
* langhooks.c: Dont include gimple.h.
* loop-init.c: Include gimplify.h rather than gimple.h.
* omp-low.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* targhooks.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversio: Likewise.n.c
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* config/aarch64/aarch64.c: Include gimplify.h instead of gimple.h.
* config/alpha/alpha.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* ada/gcc-interface/trans.c: Include gimplify.h.
* c/c-typeck.c: Include gimplify.h.
* c-family/c-common.c: Include gimplify.h.
* c-family/c-gimplify.c: Likewise.
* c-family/cilk.c: Likewise.
* c-family/c-omp.c: Include gimple-expr.h instead of gimple.h.
* c-family/c-ubsan.c: Don't include gimple.h.
* cp/class.c: Include gimplify.h.
* cp/cp-gimplify.c: Likewise.
* cp/error.c: Likewise.
* cp/init.c: Likewise.
* cp/optimize.c: Likewise.
* cp/pt.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
* cp/decl2.c: Don't include gimple.h.
* cp/except.c: Likewise.
* cp/method.c: Include pointer-set.h instead of gimple.h.
* fortran/f95-lang.c: Don't include gimple.h.
* fortran/trans-array.c: Include gimple-expr.h instead of gimple.h.
* fortran/trans.c: Likewise.
* fortran/trans-decl.c: Likewise.
* fortran/trans-expr.c: Include gimplify.h.
* fortran/trans-openmp.c: Likewise.
* go/go-lang.c: Include gimplify.h.
* java/java-gimplify.c: Include gimplify.h.
* objc/objc-act.c: Include gimplify.h.
From-SVN: r204717
2013-11-12 21:26:43 +01:00
|
|
|
|
2013-11-12 Andrew MacLeod <amacleod@redhat.com>
|
|
|
|
|
|
gimplify-be.h: New file.
* gimplify-be.h: New file. Add prototypes.
* gimplify.h: Don't include gimple.h.
(struct gimplify_hasher, struct gimplify_ctx, is_gimple_sizepos,
gimplify_hasher::hash, gimplify_hasher::equal): Relocate from gimple.h.
* gimple.h (struct gimplify_hasher, gimplify_hasher::hash,
gimplify_hasher::equal, struct gimplify_ctx, is_gimple_sizepos): Move
to gimplify.h.
(enum gsi_iterator_update): Move to gimple-iterator.h.
* gimple-iterator.h (enum gsi_iterator_update): Relocate from gimple.h.
* gimplify-be.c: New File.
(force_gimple_operand_1, force_gimple_operand,
force_gimple_operand_gsi_1, force_gimple_operand_gsi): Relocate from
gimplify.c.
* gimplify.c (force_gimple_operand_1, force_gimple_operand,
force_gimple_operand_gsi_1, force_gimple_operand_gsi): Move to
gimplify-be.c.
* Makefile.in (OBJS): Add gimplify-be.o
* asan.c: Include only gimplify.h, gimplify-be.h, and/or gimple.h as
required.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* gimple-expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa.c: Likewise.
* langhooks.c: Likewise.
* omp-low.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* targhooks.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* config/aarch64/aarch64.c: Likewise.
* config/alpha/alpha.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* c/c-typeck.c: Include only gimplify.h and gimple.h as needed.
* c-family/c-common.c: Likewise.
* c-family/c-gimplify.c: Likewise.
* c-family/cilk.c: Likewise.
* cp/class.c: Include only gimplify.h and gimple.h as needed.
* cp/cp-gimplify.c: Likewise.
* cp/error.c: Likewise.
* cp/init.c: Likewise.
* cp/optimize.c: Likewise.
* cp/pt.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
* fortran/trans-expr.c: Include only gimplify.h and gimple.h as needed.
* fortran/trans-openmp.c: Likewise.
* go/go-lang.c: Include only gimplify.h and gimple.h as needed.
* java/java-gimplify.c: Include only gimplify.h and gimple.h as needed.
* objc/objc-act.c: Include only gimplify.h and gimple.h as needed.
From-SVN: r204812
2013-11-14 20:39:38 +01:00
|
|
|
|
* go-lang.c: Include gimplify.h.
|
gimple-expr.h (create_tmp_var_name, [...]): Relocate prototypes from gimple.h.
2013-11-12 Andrew MacLeod <amacleod@redhat.com>
* gimple-expr.h (create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, mark_addressable, is_gimple_reg_rhs):
Relocate prototypes from gimple.h.
* gimplify.h: New File. Relocate some prototypes from gimple.h here.
(gimple_predicate, enum fallback, enum gimplify_status): Relocate
from gimple.h.
* gimple.h: Move some prototypes to gimplify.h.
(gimple_predicate, enum fallback, enum gimplify_status): Move to
gimplify.h.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location):
Relocate from gimpify.c.
* gimple-expr.c (remove_suffix, tmp_var_id_num, create_tmp_var_name,
create_tmp_var_raw, create_tmp_var, create_tmp_reg, mark_addressable,
is_gimple_reg_rhs) Relocate from gimplify.c.
* gimplify.c (mark_addressable): Move to gimple-expr.c.
(gimple_seq_add_stmt_without_update): Move to gimple.c.
(remove_suffix, tmp_var_id_num, create_tmp_var_name, create_tmp_var_raw,
create_tmp_var, create_tmp_reg, is_gimple_reg_rhs): Move to
gimple-expr.c.
(should_carry_location_p): Move to gimple.c.
(gimple_do_not_emit_location_p, gimple_set_do_not_emit_location): Move
to gimple.h.
(annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location): Move to gimple.c.
(compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Move to gimple.c.
(rhs_predicate_for): Make static.
(gimplify_assign): Relocate from gimple.c.
* gimple.c (gimplify_assign): Move to gimplify.c.
(gimple_seq_add_stmt_without_update, should_carry_location_p,
annotate_one_with_location, annotate_all_with_location_after,
annotate_all_with_location, compare_case_labels, sort_case_labels,
preprocess_case_label_vec_for_gimple): Relocate from gimplify.c.
* tree.h (unshare_expr, unshare_expr_without_location,
mark_addressable): Move prototypes to gimplify.h.
* Makefile.in (GTFILES): gimple-expr.c now has the GTY tag for
tmp_var_id_num
* asan.c: Include gimplify.h rather than gimple.h.
* cfgloopmanip.c: Likewise.
* cgraphunit.c: Likewise.
* cilk-common.c: Likewise.
* dwarf2out.c: Dont include gimple.h.
* fold-const.c: Include gimplify.h rather than gimple.h.
* function.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-sese-to-poly.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-split.c: Likewise.
* ipa.c: Likewise.
* langhooks.c: Dont include gimple.h.
* loop-init.c: Include gimplify.h rather than gimple.h.
* omp-low.c: Likewise.
* sese.c: Likewise.
* stor-layout.c: Likewise.
* targhooks.c: Likewise.
* trans-mem.c: Likewise.
* tree-affine.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-complex.c: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-nested.c: Likewise.
* tree-parloops.c: Likewise.
* tree-predcom.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa.c: Likewise.
* tree-switch-conversio: Likewise.n.c
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tsan.c: Likewise.
* value-prof.c: Likewise.
* config/aarch64/aarch64.c: Include gimplify.h instead of gimple.h.
* config/alpha/alpha.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/s390/s390.c: Likewise.
* config/sh/sh.c: Likewise.
* config/sparc/sparc.c: Likewise.
* config/spu/spu.c: Likewise.
* config/stormy16/stormy16.c: Likewise.
* config/tilegx/tilegx.c: Likewise.
* config/tilepro/tilepro.c: Likewise.
* config/xtensa/xtensa.c: Likewise.
* ada/gcc-interface/trans.c: Include gimplify.h.
* c/c-typeck.c: Include gimplify.h.
* c-family/c-common.c: Include gimplify.h.
* c-family/c-gimplify.c: Likewise.
* c-family/cilk.c: Likewise.
* c-family/c-omp.c: Include gimple-expr.h instead of gimple.h.
* c-family/c-ubsan.c: Don't include gimple.h.
* cp/class.c: Include gimplify.h.
* cp/cp-gimplify.c: Likewise.
* cp/error.c: Likewise.
* cp/init.c: Likewise.
* cp/optimize.c: Likewise.
* cp/pt.c: Likewise.
* cp/semantics.c: Likewise.
* cp/tree.c: Likewise.
* cp/vtable-class-hierarchy.c: Likewise.
* cp/decl2.c: Don't include gimple.h.
* cp/except.c: Likewise.
* cp/method.c: Include pointer-set.h instead of gimple.h.
* fortran/f95-lang.c: Don't include gimple.h.
* fortran/trans-array.c: Include gimple-expr.h instead of gimple.h.
* fortran/trans.c: Likewise.
* fortran/trans-decl.c: Likewise.
* fortran/trans-expr.c: Include gimplify.h.
* fortran/trans-openmp.c: Likewise.
* go/go-lang.c: Include gimplify.h.
* java/java-gimplify.c: Include gimplify.h.
* objc/objc-act.c: Include gimplify.h.
From-SVN: r204717
2013-11-12 21:26:43 +01:00
|
|
|
|
|
2013-11-06 16:14:28 +01:00
|
|
|
|
2013-11-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_post_options): If
|
|
|
|
|
-fisolate-erroneous-paths was turned on by an optimization option,
|
|
|
|
|
turn it off.
|
|
|
|
|
|
2013-10-15 00:52:55 +02:00
|
|
|
|
2013-10-14 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::address_expression): New function.
|
|
|
|
|
|
2013-10-12 00:17:47 +02:00
|
|
|
|
2013-10-11 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::function_code_expression): New
|
|
|
|
|
function.
|
|
|
|
|
|
2013-10-11 05:15:33 +02:00
|
|
|
|
2013-10-10 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
2013-10-12 00:17:47 +02:00
|
|
|
|
* go-gcc.cc (Gcc_backend::error_function): New function.
|
|
|
|
|
(Gcc_backend::function): New function.
|
|
|
|
|
(Gcc_backend::make_function): New function.
|
2013-10-11 05:15:33 +02:00
|
|
|
|
(function_to_tree): New function.
|
|
|
|
|
|
2013-10-04 20:07:20 +02:00
|
|
|
|
2013-10-04 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
2013-10-12 00:17:47 +02:00
|
|
|
|
* go-gcc.cc (Gcc_backend::convert_expression): New function.
|
2013-10-04 20:07:20 +02:00
|
|
|
|
|
2013-10-02 21:22:07 +02:00
|
|
|
|
2013-10-02 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc: Include "real.h" and "realmpfr.h".
|
2013-10-12 00:17:47 +02:00
|
|
|
|
(Gcc_backend::integer_constant_expression): New function.
|
|
|
|
|
(Gcc_backend::float_constant_expression): New function.
|
|
|
|
|
(Gcc_backend::complex_constant_expression): New function.
|
2013-10-02 21:22:07 +02:00
|
|
|
|
|
2013-09-30 20:11:42 +02:00
|
|
|
|
2013-09-30 Chris Manghane <cmang@google.com>
|
|
|
|
|
|
2013-10-12 00:17:47 +02:00
|
|
|
|
* go-gcc.cc (Gcc_backend::error_expression): New function.
|
|
|
|
|
(Gcc_backend::var_expression): New function.
|
|
|
|
|
(Gcc_backend::indirect_expression): New function.
|
2013-09-30 20:11:42 +02:00
|
|
|
|
|
Make-lang.in (gospec.o): Remove.
* Make-lang.in (gospec.o): Remove.
(CFLAGS-go/gospec.o): New variable.
(GCCGO_OBJS): Update to use go/gospec.o.
(go_OBJS): Define.
(GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
(GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
(GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
(go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
(go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
(go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
(go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
(go/parse.o, go/runtime.o, go/statements.o, go/types.o)
(go/unsafe.o): Remove.
(CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
(go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
From-SVN: r202905
2013-09-25 18:27:49 +02:00
|
|
|
|
2013-09-25 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (gospec.o): Remove.
|
|
|
|
|
(CFLAGS-go/gospec.o): New variable.
|
|
|
|
|
(GCCGO_OBJS): Update to use go/gospec.o.
|
|
|
|
|
(go_OBJS): Define.
|
|
|
|
|
(GO_SYSTEM_H, GO_C_H, GO_LINEMAP_H, GO_LEX_H, GO_PARSE_H)
|
|
|
|
|
(GO_GOGO_H, GO_TYPES_H, GO_STATEMENTS_H, GO_EXPRESSIONS_H)
|
|
|
|
|
(GO_EXPORT_H, GO_IMPORT_H, GO_RUNTIME_H, GO_AST_DUMP_H)
|
|
|
|
|
(go/go-backend.o, go/go-lang.o, go/go-gcc.o, go/go-linemap.o)
|
|
|
|
|
(go/ast-dump.o, go/dataflow.o, go/export.o, go/expressions.o)
|
|
|
|
|
(go/go.o, go/go-dump.o, go/go-optimize.o, go/gogo-tree.o)
|
|
|
|
|
(go/gogo.o, go/import.o, go/import-archive.o, go/lex.o)
|
|
|
|
|
(go/parse.o, go/runtime.o, go/statements.o, go/types.o)
|
|
|
|
|
(go/unsafe.o): Remove.
|
|
|
|
|
(CFLAGS-go/go-gcc.o, CFLAGS-go/go-linemap.o): New variables.
|
|
|
|
|
(go/%.o: go/gofrontend/%.cc): Use COMPILE and POSTCOMPILE.
|
|
|
|
|
|
2013-09-25 18:15:59 +02:00
|
|
|
|
2013-09-25 Tom Tromey <tromey@redhat.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (gospec.o): Don't use subshell.
|
|
|
|
|
|
2013-08-29 02:49:36 +02:00
|
|
|
|
2013-08-28 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::immutable_struct): Set TREE_PUBLIC if
|
|
|
|
|
the struct is not hidden.
|
|
|
|
|
(Gcc_backend::immutable_struct_set_init): Don't set TREE_PUBLIC.
|
|
|
|
|
|
2013-08-06 18:40:09 +02:00
|
|
|
|
2013-08-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::immutable_struct_set_init): Use
|
|
|
|
|
compute_reloc_for_constant.
|
|
|
|
|
|
2013-08-02 20:24:19 +02:00
|
|
|
|
2013-08-02 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (immutable_struct_set_init): Always call
|
|
|
|
|
resolve_unique_section.
|
|
|
|
|
|
2013-07-24 20:25:51 +02:00
|
|
|
|
2013-07-24 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::non_zero_size_type): If a struct has a
|
|
|
|
|
fields, recreate those fields with the first one with a non-zero
|
|
|
|
|
size.
|
|
|
|
|
|
2013-07-23 18:14:13 +02:00
|
|
|
|
2013-07-23 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-backend.c: Don't #include "rtl.h".
|
|
|
|
|
(go_imported_unsafe): Don't call init_varasm_once.
|
|
|
|
|
* Make-lang.in (go/go-backend.o): Don't depend on $(RTL_H).
|
|
|
|
|
|
2013-07-23 15:46:26 +02:00
|
|
|
|
2013-07-23 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c: Don't #include "except.h".
|
|
|
|
|
* Make-lang.in (go/go-lang.o): Don't depend on $(EXCEPT_H).
|
|
|
|
|
|
2013-06-19 01:49:49 +02:00
|
|
|
|
2013-06-18 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::immutable_struct): Add is_hidden
|
|
|
|
|
parameter.
|
|
|
|
|
(Gcc_backend::immutable_struct_set_init): Likewise.
|
|
|
|
|
|
2013-05-16 17:09:31 +02:00
|
|
|
|
2013-05-16 Jason Merrill <jason@redhat.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (go1$(exeext)): Use link mutex.
|
|
|
|
|
|
2013-01-16 17:32:35 +01:00
|
|
|
|
2013-01-16 Shenghou Ma <minux.ma@gmail.com>
|
|
|
|
|
|
|
|
|
|
* gospec.c: pass -u pthread_create to linker when static linking.
|
|
|
|
|
|
2012-12-21 16:59:27 +01:00
|
|
|
|
2012-12-21 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR bootstrap/54659
|
|
|
|
|
* go-system.h: Don't include <cstdio>.
|
|
|
|
|
|
2012-12-18 23:07:38 +01:00
|
|
|
|
2012-12-18 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR go/55201
|
|
|
|
|
* gospec.c: Revert last patch.
|
|
|
|
|
|
2012-12-18 15:28:24 +01:00
|
|
|
|
2012-12-18 Andreas Schwab <schwab@linux-m68k.org>
|
|
|
|
|
|
|
|
|
|
PR go/55201
|
|
|
|
|
* gospec.c (LIBATOMIC): Define.
|
|
|
|
|
(LIBATOMIC_PROFILE): Define.
|
|
|
|
|
(lang_specific_driver): Add LIBATOMIC[_PROFILE] option.
|
|
|
|
|
|
2012-11-29 19:11:17 +01:00
|
|
|
|
2012-11-29 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc: Include "output.h".
|
|
|
|
|
(global_variable): Add is_unique_section parameter.
|
|
|
|
|
(global_variable_set_init): Adjust unique section if necessary.
|
|
|
|
|
* Make-lang.in (go/go-gcc.o): Add dependency on output.h.
|
|
|
|
|
|
This patch rewrites the old VEC macro-based interface into a new one based on the template class 'vec'.
This patch rewrites the old VEC macro-based interface into a new one
based on the template class 'vec'. The user-visible changes are
described in http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec.
I have tested the patch pretty extensively:
- Regular bootstraps on x86_64, ppc, ia64, sparc and hppa.
- Bootstraps with --enable-checking=release
- Bootstraps with --enable-checking=gc,gcac
- Basic builds on all targets (using contrib/config-list.mk).
We no longer access the vectors via VEC_* macros. The pattern is
"VEC_operation (T, A, V, args)" becomes "V.operation (args)".
The only thing I could not do is create proper ctors and dtors for the
vec class. Since these vectors are stored in unions, we
have to keep them as PODs (C++03 does not allow non-PODs in unions).
This means that creation and destruction must be explicit. There is a
new method vec<type, allocation, layout>::create() and another vec<type,
allocation, layout>::destroy() to allocate the internal vector.
For vectors that must be pointers, there is a family of free functions
that implement the operations that need to tolerate NULL vectors.
These functions all start with the prefix 'vec_safe_'. See the wiki
page for details.
The gengtype change removes the special handling for VEC() that used
to exist in gengtype. Additionally, it allows gengtype to recognize
templates of more than one argument and introduces the concept of an
undefined type (useful for template arguments that may or may not be
types).
When a TYPE_UNDEFINED is reached, gengtype will ignore it if it
happens inside a type marked with GTY((user)). Otherwise, it will
emit an error.
Finally, gengtype rejects root types marked GTY((user)) that are not
first class pointers.
2012-11-16 Diego Novillo <dnovillo@google.com>
VEC API overhaul (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
* vec.c (register_overhead): Convert it into
member function of vec_prefix.
(release_overhead): Likewise.
(calculate_allocation): Likewise.
(vec_heap_free): Remove.
(vec_gc_o_reserve_1): Remove.
(vec_heap_o_reserve_1): Remove.
(vec_stack_o_reserve_1): Remove.
(vec_stack_o_reserve_exact): Remove.
(register_stack_vec): New.
(stack_vec_register_index): New.
(unregister_stack_vec): New.
(vec_assert_fail): Remove.
* vec.h: Conditionally include ggc.h. Document conditional
hackery.
Update top-level documentation.
(ALONE_VEC_CHECK_INFO): Remove.
(VEC_CHECK_INFO): Remove.
(ALONE_VEC_CHECK_DECL): Remove.
(VEC_CHECK_DECL): Remove.
(ALONE_VEC_CHECK_PASS): Remove.
(VEC_CHECK_PASS): Remove.
(VEC_ASSERT): Remove.
(vec_prefix): Add friends va_gc, va_gc_atomic, va_heap and
va_stack.
Mark fields alloc_ and num_ as protected.
(struct vec_t): Remove. Remove all function members.
(struct vl_embed): Declare.
(struct vl_ptr): Declare.
(free): Remove.
(reserve_exact): Remove.
(reserve): Remove.
(safe_splice): Remove.
(safe_push): Remove.
(safe_grow): Remove.
(safe_grow_cleared): Remove.
(safe_insert): Remove.
(DEF_VEC_I): Remove.
(DEF_VEC_ALLOC_I): Remove.
(DEF_VEC_P): Remove.
(DEF_VEC_ALLOC_P): Remove.
(DEF_VEC_O): Remove.
(DEF_VEC_ALLOC_O): Remove.
(DEF_VEC_ALLOC_P_STACK): Remove.
(DEF_VEC_ALLOC_O_STACK): Remove.
(DEF_VEC_ALLOC_I_STACK): Remove.
(DEF_VEC_A): Remove.
(DEF_VEC_ALLOC_A): Remove.
(vec_stack_p_reserve_exact_1): Remove.
(vec_stack_o_reserve): Remove.
(vec_stack_o_reserve_exact): Remove.
(VEC_length): Remove.
(VEC_empty): Remove.
(VEC_address): Remove.
(vec_address): Remove.
(VEC_last): Remove.
(VEC_index): Remove.
(VEC_iterate): Remove.
(VEC_embedded_size): Remove.
(VEC_embedded_init): Remove.
(VEC_free): Remove.
(VEC_copy): Remove.
(VEC_space): Remove.
(VEC_reserve): Remove.
(VEC_reserve_exact): Remove.
(VEC_splice): Remove.
(VEC_safe_splice): Remove.
(VEC_quick_push): Remove.
(VEC_safe_push): Remove.
(VEC_pop): Remove.
(VEC_truncate): Remove.
(VEC_safe_grow): Remove.
(VEC_replace): Remove.
(VEC_quick_insert): Remove.
(VEC_safe_insert): Remove.
(VEC_ordered_remove): Remove.
(VEC_unordered_remove): Remove.
(VEC_block_remove): Remove.
(VEC_lower_bound): Remove.
(VEC_alloc): Remove.
(VEC_qsort): Remove.
(va_heap): Declare.
(va_heap::default_layout): New typedef to vl_ptr.
(va_heap::reserve): New.
(va_heap::release): New.
(va_gc): Declare.
(va_gc::default_layout): New typedef to vl_embed.
(va_gc::reserve): New.
(va_gc::release): New.
(va_gc_atomic): Declare. Inherit from va_gc.
(va_stack): Declare.
(va_stack::default_layout): New typedef to vl_ptr.
(va_stack::alloc): New.
(va_stack::reserve): New.
(va_stack::release): New.
(register_stack_vec): Declare.
(stack_vec_register_index): Declare.
(unregister_stack_vec): Declare.
(vec<T, A = va_heap, L = typename A::default_layout>): Declare
empty vec template.
(vec<T, A, vl_embed>): Partial specialization for embedded
layout.
(vec<T, A, vl_embed>::allocated): New.
(vec<T, A, vl_embed>::length): New.
(vec<T, A, vl_embed>::is_empty): New.
(vec<T, A, vl_embed>::address): New.
(vec<T, A, vl_embed>::operator[]): New.
(vec<T, A, vl_embed>::last New.
(vec<T, A, vl_embed>::space): New.
(vec<T, A, vl_embed>::iterate): New.
(vec<T, A, vl_embed>::iterate): New.
(vec<T, A, vl_embed>::copy): New.
(vec<T, A, vl_embed>::splice): New.
(vec<T, A, vl_embed>::quick_push New.
(vec<T, A, vl_embed>::pop New.
(vec<T, A, vl_embed>::truncate): New.
(vec<T, A, vl_embed>::quick_insert): New.
(vec<T, A, vl_embed>::ordered_remove): New.
(vec<T, A, vl_embed>::unordered_remove): New.
(vec<T, A, vl_embed>::block_remove): New.
(vec<T, A, vl_embed>::qsort): New.
(vec<T, A, vl_embed>::lower_bound): New.
(vec<T, A, vl_embed>::embedded_size): New.
(vec<T, A, vl_embed>::embedded_init): New.
(vec<T, A, vl_embed>::quick_grow): New.
(vec<T, A, vl_embed>::quick_grow_cleared): New.
(vec_safe_space): New.
(vec_safe_length): New.
(vec_safe_address): New.
(vec_safe_is_empty): New.
(vec_safe_reserve): New.
(vec_safe_reserve_exact): New.
(vec_alloc): New.
(vec_free): New.
(vec_safe_grow): New.
(vec_safe_grow_cleared): New.
(vec_safe_iterate): New.
(vec_safe_push): New.
(vec_safe_insert): New.
(vec_safe_truncate): New.
(vec_safe_copy): New.
(vec_safe_splice): New.
(vec<T, A, vl_ptr>): New partial specialization for the space
efficient layout.
(vec<T, A, vl_ptr>::exists): New.
(vec<T, A, vl_ptr>::is_empty): New.
(vec<T, A, vl_ptr>::length): New.
(vec<T, A, vl_ptr>::address): New.
(vec<T, A, vl_ptr>::operator[]): New.
(vec<T, A, vl_ptr>::operator!=): New.
(vec<T, A, vl_ptr>::operator==): New.
(vec<T, A, vl_ptr>::last): New.
(vec<T, A, vl_ptr>::space): New.
(vec<T, A, vl_ptr>::iterate): New.
(vec<T, A, vl_ptr>::copy): New.
(vec<T, A, vl_ptr>::reserve): New.
(vec<T, A, vl_ptr>::reserve_exact): New.
(vec<T, A, vl_ptr>::splice): New.
(vec<T, A, vl_ptr>::safe_splice): New.
(vec<T, A, vl_ptr>::quick_push): New.
(vec<T, A, vl_ptr>::safe_push): New.
(vec<T, A, vl_ptr>::pop): New.
(vec<T, A, vl_ptr>::truncate): New.
(vec<T, A, vl_ptr>::safe_grow): New.
(vec<T, A, vl_ptr>::safe_grow_cleared): New.
(vec<T, A, vl_ptr>::quick_grow): New.
(vec<T, A, vl_ptr>::quick_grow_cleared): New.
(vec<T, A, vl_ptr>::quick_insert): New.
(vec<T, A, vl_ptr>::safe_insert): New.
(vec<T, A, vl_ptr>::ordered_remove): New.
(vec<T, A, vl_ptr>::unordered_remove): New.
(vec<T, A, vl_ptr>::block_remove): New.
(vec<T, A, vl_ptr>::qsort): New.
(vec<T, A, vl_ptr>::lower_bound): New.
(vec_stack_alloc): Define.
(FOR_EACH_VEC_SAFE_ELT): Define.
* vecir.h: Remove. Update all users.
* vecprim.h: Remove. Update all users.
Move uchar to coretypes.h.
* Makefile.in (VEC_H): Add $(GGC_H).
Remove vecir.h and vecprim.h dependencies everywhere.
2012-11-16 Diego Novillo <dnovillo@google.com>
* gengtype-lex.l (VEC): Remove.
Add characters in the set [\!\>\.-].
* gengtype-parse.c (token_names): Remove "VEC".
(require_template_declaration): Remove handling of VEC_TOKEN.
(type): Likewise.
Call create_user_defined_type when parsing GTY((user)).
* gengtype-state.c (type_lineloc): handle TYPE_UNDEFINED.
(write_state_undefined_type): New.
(write_state_type): Call write_state_undefined_type for
TYPE_UNDEFINED.
(read_state_type): Call read_state_undefined_type for
TYPE_UNDEFINED.
* gengtype.c (dbgprint_count_type_at): Handle TYPE_UNDEFINED.
(create_user_defined_type): Make extern.
(type_for_name): Factor out of resolve_typedef.
(create_undefined_type): New
(resolve_typedef): Call it when we cannot find a previous
typedef and the type is not a template.
(find_structure): Accept TYPE_UNDEFINED.
(set_gc_used_type): Add argument ALLOWED_UNDEFINED_TYPES,
default to false.
Emit an error for TYPE_UNDEFINED unless LEVEL is GC_UNUSED or
ALLOWED_UNDEFINED_TYPES is set.
Set ALLOWED_UNDEFINED_TYPES to true for TYPE_USER_STRUCT.
(filter_type_name): Accept templates with more than one
argument.
(output_mangled_typename): Handle TYPE_UNDEFINED
(walk_type): Likewise.
(write_types_process_field): Likewise.
(write_func_for_structure): If CHAIN_NEXT is set, ORIG_S
should not be a user-defined type.
(write_types_local_user_process_field): Handle TYPE_ARRAY,
TYPE_NONE and TYPE_UNDEFINED.
(write_types_local_process_field): Likewise.
(contains_scalar_p): Return 0 for TYPE_USER_STRUCT.
(write_root): Reject user-defined types that are not pointers.
Handle TYPE_NONE, TYPE_UNDEFINED, TYPE_UNION, TYPE_LANG_STRUCT
and TYPE_PARAM_STRUCT.
(output_typename): Handle TYPE_NONE, TYPE_UNDEFINED, and
TYPE_ARRAY.
(dump_typekind): Handle TYPE_UNDEFINED.
* gengtype.h (enum typekind): Add TYPE_UNDEFINED.
(create_user_defined_type): Declare.
(enum gty_token): Remove VEC_TOKEN.
2012-11-16 Diego Novillo <dnovillo@google.com>
Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
* coretypes.h (uchar): Define.
* alias.c: Use new vec API in vec.h.
* asan.c: Likewise.
* attribs.c: Likewise.
* basic-block.h: Likewise.
* bb-reorder.c: Likewise.
* builtins.c: Likewise.
* calls.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgcleanup.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfghooks.h: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgloopanal.c: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraph.h: Likewise.
* cgraphclones.c: Likewise.
* cgraphunit.c: Likewise.
* combine.c: Likewise.
* compare-elim.c: Likewise.
* coverage.c: Likewise.
* cprop.c: Likewise.
* data-streamer.h: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* domwalk.h: Likewise.
* dse.c: Likewise.
* dwarf2cfi.c: Likewise.
* dwarf2out.c: Likewise.
* dwarf2out.h: Likewise.
* emit-rtl.c: Likewise.
* except.c: Likewise.
* except.h: Likewise.
* expr.c: Likewise.
* expr.h: Likewise.
* final.c: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* function.h: Likewise.
* fwprop.c: Likewise.
* gcc.c: Likewise.
* gcse.c: Likewise.
* genattr.c: Likewise.
* genattrtab.c: Likewise.
* genautomata.c: Likewise.
* genextract.c: Likewise.
* genopinit.c: Likewise
* ggc-common.c: Likewise.
* ggc.h: Likewise.
* gimple-low.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* gimple-streamer-in.c: Likewise.
* gimple.c: Likewise.
* gimple.h: Likewise.
* gimplify.c: Likewise.
* graph.c: Likewise.
* graphds.c: Likewise.
* graphds.h: Likewise.
* graphite-blocking.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* graphite-dependences.c: Likewise.
* graphite-interchange.c: Likewise.
* graphite-optimize-isl.c: Likewise.
* graphite-poly.c: Likewise.
* graphite-poly.h: Likewise.
* graphite-scop-detection.c: Likewise.
* graphite-scop-detection.h: Likewise.
* graphite-sese-to-poly.c: Likewise.
* graphite.c: Likewise.
* godump.c: Likewise.
* haifa-sched.c: Likewise.
* hw-doloop.c: Likewise.
* hw-doloop.h: Likewise.
* ifcvt.c: Likewise.
* insn-addr.h: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline-analysis.c: Likewise.
* ipa-inline-transform.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-inline.h: Likewise.
* ipa-prop.c: Likewise.
* ipa-prop.h: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-ref-inline.h: Likewise.
* ipa-ref.c: Likewise.
* ipa-ref.h: Likewise.
* ipa-reference.c: Likewise.
* ipa-split.c: Likewise.
* ipa-utils.c: Likewise.
* ipa-utils.h: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-emit.c: Likewise.
* ira-int.h: Likewise.
* ira.c: Likewise.
* loop-invariant.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lra-lives.c: Likewise.
* lra.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.h: Likewise.
* lto-symtab.c: Likewise.
* mcf.c: Likewise.
* modulo-sched.c: Likewise.
* omp-low.c: Likewise.
* opts-common.c: Likewise.
* opts-global.c: Likewise.
* opts.c: Likewise.
* opts.h: Likewise.
* passes.c: Likewise.
* predict.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* profile.h: Likewise.
* read-rtl.c: Likewise.
* ree.c: Likewise.
* reg-stack.c: Likewise.
* regrename.c: Likewise.
* regrename.h: Likewise.
* reload.c: Likewise.
* reload.h: Likewise.
* reload1.c: Likewise.
* rtl.h: Likewise.
* sched-deps.c: Likewise.
* sched-int.h: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* sel-sched.c: Likewise.
* sese.c: Likewise.
* sese.h: Likewise.
* statistics.h: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* tlink.c: Likewise.
* toplev.c: Likewise.
* trans-mem.c: Likewise.
* tree-browser.c: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-chrec.h: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-data-ref.h: Likewise.
* tree-dfa.c: Likewise.
* tree-diagnostic.c: Likewise.
* tree-dump.c: Likewise.
* tree-eh.c: Likewise.
* tree-emutls.c: Likewise.
* tree-flow.h: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-inline.h: Likewise.
* tree-into-ssa.c: Likewise.
* tree-iterator.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-optimize.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-sra.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-live.h: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-sccvn.h: Likewise.
* tree-ssa-strlen.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-tail-merge.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa-uninit.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-stdarg.c: Likewise.
* tree-streamer-in.c: Likewise.
* tree-streamer-out.c: Likewise.
* tree-streamer.c: Likewise.
* tree-streamer.h: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vectorizer.h: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tree.h: Likewise.
* value-prof.c: Likewise.
* value-prof.h: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vmsdbgout.c: Likewise.
* config/bfin/bfin.c: Likewise.
* config/c6x/c6x.c: Likewise.
* config/darwin.c: Likewise.
* config/i386/i386.c: Likewise.
* config/ia64/ia64.c: Likewise.
* config/mep/mep.c: Likewise.
* config/mips/mips.c: Likewise.
* config/pa/pa.c: Likewise.
* config/rs6000/rs6000-c.c: Likewise.
* config/rs6000/rs6000.c: Likewise.
* config/rx/rx.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/vms/vms.c: Likewise.
* config/vxworks.c: Likewise.
* config/epiphany/resolve-sw-modes.c: Likewise.
From-SVN: r193595
2012-11-18 03:54:30 +01:00
|
|
|
|
2012-11-17 Diego Novillo <dnovillo@google.com>
|
|
|
|
|
|
|
|
|
|
Adjust for new vec API (http://gcc.gnu.org/wiki/cxx-conversion/cxx-vec)
|
|
|
|
|
|
|
|
|
|
* go-lang.c: Use new vec API in vec.h.
|
|
|
|
|
|
2012-11-16 17:27:54 +01:00
|
|
|
|
2012-11-16 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (gccgo$(exeext)): Add + at start of command.
|
|
|
|
|
(go1$(exeext)): Likewise.
|
|
|
|
|
|
2012-10-31 01:38:49 +01:00
|
|
|
|
2012-10-30 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* lang.opt (-fgo-relative-import-path): New option.
|
|
|
|
|
* go-lang.c (go_relative_import_path): New static variable.
|
|
|
|
|
(go_langhook_init): Pass go_relative_import_path to
|
|
|
|
|
go_create_gogo.
|
|
|
|
|
(go_langhook_handle_option): Handle -fgo-relative-import-path.
|
|
|
|
|
* go-c.h (go_create_gogo): Update declaration.
|
|
|
|
|
* gccgo.texi (Invoking gccgo): Document
|
|
|
|
|
-fgo-relative-import-path.
|
|
|
|
|
|
2012-09-17 18:38:38 +02:00
|
|
|
|
2012-09-17 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* config-lang.in (target_libs): Add target-libbacktrace.
|
|
|
|
|
|
2012-09-17 07:15:36 +02:00
|
|
|
|
2012-09-16 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (go/gogo.o): Depend on filenames.h.
|
|
|
|
|
|
backport: As described in http://gcc.gnu.org/ml/gcc/2012-08/msg00015.html...
Merge from cxx-conversion branch (http://gcc.gnu.org/wiki/cxx-conversion).
As described in http://gcc.gnu.org/ml/gcc/2012-08/msg00015.html, this patch
changes the default bootstrap process so that stage 1 always builds with a C++
compiler.
Other than the bootstrap change, the patch makes no functional changes to the
compiler. Everything should build as it does now in trunk. The main
changes in this patch are:
1- Configuration changes.
2- Re-write of VEC.
3- Re-write of gengtype to support C++ templates and
user-provided marking functions.
4- New hash table class.
5- Re-write double_int.
6- Implement tree macros as inline functions so they can be
called from gdb.
As discussed before, several of these changes do not fully change
the call sites to use the new APIs.
The bootstrap changes have already been tested on a wide range of
targets (http://gcc.gnu.org/wiki/CppBuildStatus). Additionally,
I have tested the merged trunk on: x86_64-unknown-linux-gnu,
mips64el-unknown-linux-gnu, powerpc64-unknown-linux-gnu,
i686-pc-linux-gnu, and ia64-unknown-linux-gnu.
ChangeLog
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch.
* Makefile.tpl (STAGE[+id+]_CXXFLAGS): Remove
POSTSTAGE1_CONFIGURE_FLAGS.
* Makefile.in: Regenerate.
* configure.ac (ENABLE_BUILD_WITH_CXX): Remove. Update all users.
Force C++ when bootstrapping.
* configure: Regenerate.
libcpp/ChangeLog
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. Configury.
* Makefile.in: Remove all handlers of ENABLE_BUILD_WITH_CXX.
* configure.ac: Likewise.
* configure: Regenerate.
2012-08-14 Lawrence Crowl <crowl@google.com>
Merge from cxx-conversion branch. New C++ hash table.
* include/symtab.h (typedef struct ht hash_table): Change the typedef
name to cpp_hash_table. Update all users of the typedef.
gcc/ChangeLog
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. Configury.
* configure.ac (CXX_FOR_BUILD): Define and substitute.
(BUILD_CXXFLAGS): Define.
Remove all handlers of ENABLE_BUILD_WITH_CXX.
Force all build to be with C++.
* Makefile.in (BUILD_CXXFLAGS): Use it.
Remove all handlers of ENABLE_BUILD_WITH_CXX.
* configure: Regenerate.
* config.in: Regenerate.
* doc/install.texi: Remove documentation for --enable-build-with-cxx
and --enable-build-poststage1-with-cxx.
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. Re-implement VEC in C++.
* vec.c (vec_heap_free): Convert into a template function.
(vec_gc_o_reserve_1): Make extern.
(vec_gc_p_reserve): Remove.
(vec_gc_p_reserve_exact): Remove.
(vec_gc_o_reserve): Remove.
(vec_gc_o_reserve_exact): Remove.
(vec_heap_o_reserve_1): Make extern.
(vec_heap_p_reserve): Remove.
(vec_heap_p_reserve_exact): Remove.
(vec_heap_o_reserve): Remove.
(vec_heap_o_reserve_exact): Remove.
(vec_stack_p_reserve): Remove.
(vec_stack_p_reserve_exact): Remove.
* vec.h (VEC_CHECK_INFO, VEC_CHECK_DECL, VEC_CHECK_PASS,
VEC_ASSERT, VEC_ASSERT_FAIL, vec_assert_fail): Move earlier
in the file.
(VEC): Define to vec_t<T>.
(vec_allocation_t): Define.
(struct vec_prefix): Move earlier in the file.
(vec_t<T>): New template.
(DEF_VEC_I, DEF_VECL_ALLOC_I, DEF_VEC_P, DEF_VEC_ALLOC_P,
DEF_VEC_O, DEF_VEC_ALLOC_P, DEF_VEC_O, DEF_VEC_ALLOC_O,
DEF_VEC_ALLOC_P_STACK, DEF_VEC_ALLOC_O_STACK,
DEF_VEC_ALLOC_I_STACK): Expand to 'struct vec_swallow_trailing_semi'.
(DEF_VEC_A): Provide template instantiations for
GC/PCH markers that do not traverse the vector.
(vec_stack_p_reserve): Remove.
(vec_stack_p_reserve_exact): Remove.
(vec_stack_p_reserve_exact_1): Remove.
(vec_stack_o_reserve): Remove.
(vec_stack_o_reserve_exact): Remove.
(vec_stack_free): Re-write as a template function.
(vec_reserve): New template function.
(vec_reserve_exact): New template function.
(vec_heap_free): New template function if GATHER_STATISTICS is
defined. Otherwise, macro that expands to free().
(VEC_length_1): New template function.
(VEC_length): Call it.
(VEC_empty_1): New template function.
(VEC_empty): Call it.
(VEC_address_1): New template function.
(VEC_address): Call it.
(VEC_last_1): New template function.
(VEC_last): Call it. Change return type to T&.
Change all users that used VEC_Os.
(VEC_index_1): New template function.
(VEC_index): Call it. Return a T& instead of a T*.
Update all callers that were using VEC_O before.
(VEC_iterate_1): New template function.
(VEC_iterate): Call it.
(VEC_embedded_size_1): New template function.
(VEC_embedded_size): Call it.
(VEC_embedded_init_1): New template function.
(VEC_embedded_init): Call it.
(VEC_alloc_1): New template function.
(VEC_alloc): Call it. If A is 'stack', call XALLOCAVAR to
do the allocation.
(VEC_free_1): New template function.
(VEC_free): Call it.
(VEC_copy_1): New template function.
(VEC_copy): Call it.
(VEC_space_1): New template function
(VEC_space): Call it.
(VEC_reserve_1): New template function.
(VEC_reserve): Call it.
(VEC_reserve_exact_1): New template function.
(VEC_reserve_exact): Call it.
(VEC_splice_1): New template function.
(VEC_splice): Call it.
(VEC_safe_splice_1): New template function.
(VEC_safe_splice): Call it.
(VEC_quick_push_1): New template function. Create two overloads, one
accepting T, the other accepting T *. Update all callers
where T and T * are ambiguous.
(VEC_quick_push): Call it.
(VEC_safe_push_1): New template function. Create two overloads, one
accepting T, the other accepting T *. Update all callers
where T and T * are ambiguous.
(VEC_safe_push): Call it.
(VEC_pop_1): New template function.
(VEC_pop): Call it.
(VEC_truncate_1): New template function.
(VEC_truncate): Call it.
(VEC_safe_grow_1): New template function.
(VEC_safe_grow): Call it.
(VEC_safe_grow_cleared_1): New template function.
(VEC_safe_grow_cleared): Call it.
(VEC_replace_1): New template function.
(VEC_replace): Call it. Always accept T instead of T*.
Update all callers that used VEC_Os.
(VEC_quick_insert_1): New template function.
(VEC_quick_insert): Call it.
(VEC_safe_insert_1): New template function.
(VEC_safe_insert): Call it.
(VEC_ordered_remove_1): New template function.
(VEC_ordered_remove): Call it.
(VEC_unordered_remove_1): New template function.
(VEC_unordered_remove): Call it.
(VEC_block_remove_1): New template function.
(VEC_block_remove): Call it.
(VEC_lower_bound_1): New template function.
(VEC_lower_bound): Call it.
(VEC_OP): Remove.
(DEF_VEC_FUNC_P): Remove.
(DEF_VEC_ALLOC_FUNC_P): Remove.
(DEF_VEC_NONALLOC_FUNCS_P): Remove.
(DEF_VEC_FUNC_O): Remove.
(DEF_VEC_ALLOC_FUNC_O): Remove.
(DEF_VEC_NONALLOC_FUNCS_O): Remove.
(DEF_VEC_ALLOC_FUNC_I): Remove.
(DEF_VEC_NONALLOC_FUNCS_I): Remove.
(DEF_VEC_ALLOC_FUNC_P_STACK): Remove.
(DEF_VEC_ALLOC_FUNC_O_STACK): Remove.
(DEF_VEC_ALLOC_FUNC_I_STACK): Remove.
(vec_reserve_exact): New template function.
* gengtype-lex.l (DEF_VEC_ALLOC_[IOP]/{EOID}): Remove.
* gengtype-parse.c (token_names): Remove DEF_VEC_ALLOC_[IOP].
(typedef_name): Emit vec_t<C1> instead of VEC_C1_C2.
(def_vec_alloc): Remove. Update all callers.
* gengtype.c (filter_type_name): New.
(output_mangled_typename): Call it.
(write_func_for_structure): Likewise.
(write_types): Likewise.
(write_root): Likewise.
(write_typed_alloc_def): Likewise.
(note_def_vec): Emit vec_t<TYPE_NAME> instead of VEC_TYPE_NAME_base.
(note_def_vec_alloc): Remove.
* gengtype.h (note_def_vec_alloc): Remove.
(DEFVEC_ALLOC): Remove token code.
* df-scan.c (df_bb_verify): Remove call to df_free_collection_rec
inside the insn traversal loop.
* gimplify.c (gimplify_compound_lval): Rename STACK to EXPR_STACK.
* ipa-inline.c (inline_small_functions): Rename HEAP to EDGE_HEAP.
* reg-stack.c (stack): Rename to STACK_PTR. Update all users.
* tree-vrp.c (stack): Rename to EQUIV_STACK. Update all users.
* config/bfin/bfin.c (hwloop_optimize): Update some calls to
VEC_* for vectors of non-pointers.
* config/c6x/c6x.c (try_rename_operands): Likewise.
(reshuffle_units): Likewise.
* config/mips/mips.c (mips_multi_start): Likewise.
(mips_multi_add): Likewise.
(mips_multi_copy_insn): Likewise.
(mips_multi_set_operand): Likewise.
* hw-doloop.c (discover_loop): Likewise.
(discover_loops): Likewise.
(reorg_loops): Likewise.
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. C++ support in gengtype.
* coretypes.h (gt_pointer_operator): Move from ...
* ggc.h: ... here.
* doc/gty.texi: Document support for C++ templates and
user-provided markers.
* gcc/gengtype-lex.l: Update copyright year.
Remove support for recognizing DEF_VEC_O, DEF_VEC_P and
DEFVEC_I.
* gengtype-parse.c: Update copyright year.
(token_names): Remove DEF_VEC_O, DEF_VEC_P and DEF_VEC_I.
(require_template_declaration): New.
(typedef_name): Call it.
(type): Replace IS_UNION with KIND. Replace all users.
(def_vec): Remove. Update all users.
* gengtype-state.c (type_lineloc): Handle TYPE_USER_STRUCT.
(write_state_user_struct_type): New.
(write_state_type): Call it.
(read_state_user_struct_type): New.
(read_state_type): Call it.
* gengtype.c: Update copyright year.
(dump_pair): Move declaration to the top.
(dump_type): Likewise.
(dump_type_list): Likewise.
(dbgprint_count_type_at): Handle TYPE_USER_STRUCT.
(create_user_defined_type): New.
(resolve_typedef): Call it.
(new_structure): Replace argument ISUNION with KIND.
Change users to refer to KIND directly.
Update all callers.
(find_structure): Likewise.
(set_gc_used_type): Handle TYPE_USER_STRUCT.
(create_file): Update HDR to include new copyright year.
(struct walk_type_data): Add field IN_PTR_FIELD.
(output_mangled_typename): Handle TYPE_USER_STRUCT.
(walk_type): Set D->IN_PTR_FIELD when walking a TYPE_POINTER.
Clear it afterwards.
Handle TYPE_USER_STRUCT.
(write_types_process_field): Handle TYPE_USER_STRUCT.
(get_type_specifier): Move earlier in the file.
(write_type_decl): New.
(write_marker_function_name): New.
(write_user_func_for_structure_ptr): New.
(write_user_func_for_structure_body): New.
(write_user_marking_functions): New.
(write_func_for_structure): Call write_marker_function_name
and write_type_decl.
Do not call walk_type for TYPE_USER_STRUCT. Emit a call to the user
function directly.
Call write_user_marking_functions on TYPE_USER_STRUCTs.
(write_types_local_user_process_field): New.
(write_pch_user_walking_for_structure_body): New.
(write_pch_user_walking_functions): New.
(write_types_local_process_field): Handle TYPE_USER_STRUCT.
(write_local_func_for_structure): Do not call walk_type for
TYPE_USER_STRUCT. Instead, emit the call to gt_pch_nx directly.
Call write_pch_user_walking_functions for TYPE_USER_STRUCTs.
(write_root): Handle TYPE_USER_STRUCT.
(vec_prefix_type): Remove. Update all users.
(note_def_vec): Remove. Update all users.
(dump_typekind): Handle TYPE_USER_STRUCT.
(dump_type): Initialize SEEN_TYPES, if needed.
Handle TYPE_USER_STRUCT.
(dump_everything): Do not initialize SEEN_TYPES.
* gengtype.h: Update copyright year.
(enum typekind): Add TYPE_USER_STRUCT.
(union_or_struct_p): Rename from UNION_OR_STRUCT_P.
Convert into function.
Add an overload taking const_type_p.
Update all callers.
(new_structure): Change second field to type enum typekind.
Update all users.
(find_structure): Likewise.
(note_def_vec): Remove.
(DEFVEC_OP): Remove.
(DEFVEC_I): Remove.
* ggc-page.c (gt_ggc_mx): Add entry points for marking
'const char *&', 'unsigned char *&' and 'unsigned char&'.
* ggc-zone.c (gt_ggc_mx): Add entry points for marking
'const char *&' and 'unsigned char *&'.
* stringpool.c (gt_pch_nx): Add entry points for marking
'const char *&', 'unsigned char *&' and 'unsigned char&'.
Add an entry point for the overload taking arguments 'unsigned char
*', 'gt_pointer_operator' and 'void *'.
* vec.h (struct vec_prefix): Remove GTY marker.
(struct vec_t): Remove GTY((length)) attribute from field 'vec'.
(gt_ggc_mx (vec_t<T> *)): New template function.
(gt_pch_nx (vec_t<T> *)): New template function.
(gt_pch_nx (vec_t<T *> *, gt_pointer_operator, void *)): New template
function.
(gt_pch_nx (vec_t<T> *, gt_pointer_operator, void *)): New template
function.
* basic-block.h (struct edge_def): Mark GTY((user)).
Remove all GTY markers from fields.
(gt_ggc_mx): Declare.
(gt_pch_nx): Declare.
* tree-cfg.c (gt_ggc_mx): New.
(gt_pch_nx): New.
* gengtype-lex.l (USER_GTY): Add pattern for "user".
* gengtype-parse.c (option): Handle USER_GTY.
(opts_have): New.
(type): Call it.
If the keyword 'user' is used, do not walk the fields
of the structure.
* gengtype.h (USER_GTY): Add.
* doc/gty.texi: Update.
2012-08-14 Lawrence Crowl <crowl@google.com>
Merge cxx-conversion branch. Implement C++ hash table.
* hash-table.h: New. Implementation borrowed from libiberty/hashtab.c.
* hash-table.c: Likewise.
* tree-ssa-tail-merge.c: Include hash-table.h instead of hashtab.h.
(static htab_t same_succ_htab): Change type to hash_table;
move specification of helper functions from create call to declaration.
Change users to invoke member functions.
(same_succ_print_traverse): Make extern ssa_.... Change callers.
Remove void* casting.
(same_succ_hash): Likewise.
(same_succ_equal): Likewise.
(same_succ_delete): Likewise.
* tree-ssa-threadupdate.c: Include hash-table.h.
(struct local_info): Rename to ssa_local_info_t to avoid overloading
the type name local_info with the variable name local_info.
(static htab_t redirection_data): Change type to hash_table.
Move specification of helper functions from create call to declaration.
Change users to invoke member functions.
(redirection_data_hash): Make extern ssa_.... Change callers.
Remove void* casting.
(redirection_data_eq): Likewise.
(fix_duplicate_block_edges): Likewise.
(create_duplicates): Likewise.
(fixup_template_block): Likewise.
(redirect_edges): Likewise.
(lookup_redirection_data): Change types associated with the hash table
from void* to their actual type. Remove unnecessary casts.
* tree-ssa-ccp.c: Include hash-table.h.
(typedef gimple_htab): New. Uses hash_table. Replace specific uses
of htab_t with gimple_htab. Change users to invoke member functions.
Move specification of helper functions from create call to declaration.
* tree-ssa-coalesce.c: Include hash-table.h instead of hashtab.h.
(hash_ssa_name_by_var): Make extern. Remove void* casting.
(eq_ssa_name_by_var): Likewise.
(coalesce_ssa_name): Change type of local static htab_t ssa_name_hash
to hash_table. Change users to invoke member functions.
Move specification of helper functions from create call to declaration.
* coverage.c: Include hash-table.h instead of hashtab.h.
(static htab_t counts_hash): Change type to hash_table;
move specification of helper functions from create call to declaration.
Change users to invoke member functions.
(htab_counts_entry_hash): Make extern. Rename with coverage_... instead
of htab_... Remove void* casting.
(htab_counts_entry_eq): Likewise.
(htab_counts_entry_del): Likewise.
* tree-ssa-pre.c: Include hash-table.h instead of hashtab.h.
(static htab_t expression_to_id): Change type to hash_table.
Move specification of helper functions from create call to declaration.
Change users to invoke member functions.
(static htab_t phi_translate_table): Likewise.
(pre_expr_eq): Make extern ssa_.... Change callers.
Remove void* casting.
(pre_expr_hash): Likewise.
(expr_pred_trans_hash): Likewise.
(expr_pred_trans_eq): Likewise.
(alloc_expression_id): Change types associated with the hash table
from void* to their actual type. Remove unnecessary casts.
(lookup_expression_id): Likewise.
(phi_trans_lookup): Likewise.
(phi_trans_add): Likewise.
* stringpool.c: Rename uses of libcpp typedef hash_table to
cpp_hash_table.
* Makefile.in: Add hash-table.o to OBJS-libcommon-target.
Add $(HASH_TABLE_H). Add new dependences on $(HASH_TABLE_H).
2012-08-14 Lawrence Crowl <crowl@google.com>
Merge from cxx-conversion branch. Re-write double_int in C++.
* hash-table.h
(typedef double_int): Change to struct (POD).
(double_int::make): New overloads for int to double-int conversion.
(double_int::mask): New.
(double_int::max_value): New.
(double_int::min_value): New.
(double_int::operator ++): New.
(double_int::operator --): New.
(double_int::operator *=): New.
(double_int::operator +=): New.
(double_int::operator -=): New.
(double_int::to_signed): New.
(double_int::to_unsigned): New.
(double_int::fits_unsigned): New.
(double_int::fits_signed): New.
(double_int::fits): New.
(double_int::trailing_zeros): New.
(double_int::popcount): New.
(double_int::multiple_of): New.
(double_int::set_bit): New.
(double_int::mul_with_sign): New.
(double_int::operator * (binary)): New.
(double_int::operator + (binary)): New.
(double_int::operator - (binary)): New.
(double_int::operator - (unary)): New.
(double_int::operator ~ (unary)): New.
(double_int::operator & (binary)): New.
(double_int::operator | (binary)): New.
(double_int::operator ^ (binary)): New.
(double_int::and_not): New.
(double_int::lshift): New.
(double_int::rshift): New.
(double_int::alshift): New.
(double_int::arshift): New.
(double_int::llshift): New.
(double_int::lrshift): New.
(double_int::lrotate): New.
(double_int::rrotate): New.
(double_int::div): New.
(double_int::sdiv): New.
(double_int::udiv): New.
(double_int::mod): New.
(double_int::smod): New.
(double_int::umod): New.
(double_int::divmod): New.
(double_int::sdivmod): New.
(double_int::udivmod): New.
(double_int::ext): New.
(double_int::zext): New.
(double_int::sext): New.
(double_int::is_zero): New.
(double_int::is_one): New.
(double_int::is_minus_one): New.
(double_int::is_negative): New.
(double_int::cmp): New.
(double_int::ucmp): New.
(double_int::scmp): New.
(double_int::ult): New.
(double_int::ugt): New.
(double_int::slt): New.
(double_int::sgt): New.
(double_int::max): New.
(double_int::smax): New.
(double_int::umax): New.
(double_int::min): New.
(double_int::smin): New.
(double_int::umin): New.
(double_int::operator ==): New.
(double_int::operator !=): New.
(shwi_to_double_int): Change implementation to use member function.
(double_int_minus_one): Likewise.
(double_int_zero): Likewise.
(double_int_one): Likewise.
(double_int_two): Likewise.
(double_int_ten): Likewise.
(uhwi_to_double_int): Likewise.
(double_int_to_shwi): Likewise.
(double_int_to_uhwi): Likewise.
(double_int_fits_in_uhwi_p): Likewise.
(double_int_fits_in_shwi_p): Likewise.
(double_int_fits_in_hwi_p): Likewise.
(double_int_mul): Likewise.
(double_int_mul_with_sign): Likewise.
(double_int_add): Likewise.
(double_int_sub): Likewise.
(double_int_neg): Likewise.
(double_int_div): Likewise.
(double_int_sdiv): Likewise.
(double_int_udiv): Likewise.
(double_int_mod): Likewise.
(double_int_smod): Likewise.
(double_int_umod): Likewise.
(double_int_divmod): Likewise.
(double_int_sdivmod): Likewise.
(double_int_udivmod): Likewise.
(double_int_multiple_of): Likewise.
(double_int_setbit): Likewise.
(double_int_ctz): Likewise.
(double_int_not): Likewise.
(double_int_ior): Likewise.
(double_int_and): Likewise.
(double_int_and_not): Likewise.
(double_int_xor): Likewise.
(double_int_lshift): Likewise.
(double_int_rshift): Likewise.
(double_int_lrotate): Likewise.
(double_int_rrotate): Likewise.
(double_int_cmp): Likewise.
(double_int_scmp): Likewise.
(double_int_ucmp): Likewise.
(double_int_max): Likewise.
(double_int_smax): Likewise.
(double_int_umax): Likewise.
(double_int_min): Likewise.
(double_int_smin): Likewise.
(double_int_umin): Likewise.
(double_int_ext): Likewise.
(double_int_sext): Likewise.
(double_int_zext): Likewise.
(double_int_mask): Likewise.
(double_int_max_value): Likewise.
(double_int_min_value): Likewise.
(double_int_zero_p): Likewise.
(double_int_one_p): Likewise.
(double_int_minus_one_p): Likewise.
(double_int_equal_p): Likewise.
(double_int_popcount): Likewise.
* hash-table.c
(double_int_mask): Reuse implementation for double_int::mask.
(double_int_max_value): Likewise.
(double_int_min_value): Likewise.
(double_int_ext): Likewise.
(double_int_zext): Likewise.
(double_int_sext): Likewise.
(double_int_mul_with_sign): Likewise.
(double_int_divmod): Likewise.
(double_int_sdivmod): Likewise.
(double_int_udivmod): Likewise.
(double_int_div): Likewise.
(double_int_sdiv): Likewise.
(double_int_udiv): Likewise.
(double_int_mod): Likewise.
(double_int_smod): Likewise.
(double_int_umod): Likewise.
(double_int_multiple_of): Likewise.
(double_int_lshift): Likewise.
(double_int_rshift): Likewise.
(double_int_lrotate): Likewise.
(double_int_rrotate): Likewise.
(double_int_cmp): Likewise.
(double_int_ucmp): Likewise.
(double_int_scmp): Likewise.
(double_int_max): Likewise.
(double_int_smax): Likewise.
(double_int_umax): Likewise.
(double_int_min): Likewise.
(double_int_smin): Likewise.
(double_int_umin): Likewise.
(double_int_min): Likewise.
(double_int_min): Likewise.
(double_int_min): Likewise.
(double_int_min): Likewise.
(double_int_min): Likewise.
(double_int_min): Likewise.
(double_int::alshift): New.
(double_int::arshift): New.
(double_int::llshift): New.
(double_int::lrshift): New.
(double_int::ult): New.
(double_int::ugt): New.
(double_int::slt): New.
(double_int::sgt): New.
(double_int_setbit): Reuse implementation for double_int::set_bit,
which avoids a name conflict with a macro.
(double_int_double_int_ctz): Reuse implementation for
double_int::trailing_zeros.
(double_int_fits_in_shwi_p): Reuse implementation for
double_int::fits_signed.
(double_int_fits_in_hwi_p): Reuse implementation for double_int::fits.
(double_int_mul): Reuse implementation for binary
double_int::operator *.
(double_int_add): Likewise.
(double_int_sub): Likewise.
(double_int_neg): Reuse implementation for unary
double_int::operator -.
(double_int_max_value): Likewise.
* fixed-value.c: Change to use member functions introduced above.
2012-08-14 Lawrence Crowl <crowl@google.com>
Merge cxx-conversion branch. Support tree macro calling
from gdb.
* tree.h (tree_check): New.
(TREE_CHECK): Use inline function above instead of __extension__.
(tree_not_check): New.
(TREE_NOT_CHECK): Use inline function above instead of __extension__.
(tree_check2): New.
(TREE_CHECK2): Use inline function above instead of __extension__.
(tree_not_check2): New.
(TREE_NOT_CHECK2): Use inline function above instead of __extension__.
(tree_check3): New.
(TREE_CHECK3): Use inline function above instead of __extension__.
(tree_not_check3): New.
(TREE_NOT_CHECK3): Use inline function above instead of __extension__.
(tree_check4): New.
(TREE_CHECK4): Use inline function above instead of __extension__.
(tree_not_check4): New.
(TREE_NOT_CHECK4): Use inline function above instead of __extension__.
(tree_check5): New.
(TREE_CHECK5): Use inline function above instead of __extension__.
(tree_not_check5): New.
(TREE_NOT_CHECK5): Use inline function above instead of __extension__.
(contains_struct_check): New.
(CONTAINS_STRUCT_CHECK): Use inline function above instead of
__extension__.
(tree_class_check): New.
(TREE_CLASS_CHECK): Use inline function above instead of __extension__.
(tree_range_check): New.
(TREE_RANGE_CHECK): Use inline function above instead of __extension__.
(omp_clause_subcode_check): New.
(OMP_CLAUSE_SUBCODE_CHECK): Use inline function above instead of
__extension__.
(omp_clause_range_check): New.
(OMP_CLAUSE_RANGE_CHECK): Use inline function above instead of
__extension__.
(expr_check): New.
(EXPR_CHECK): Use inline function above instead of __extension__.
(non_type_check): New.
(NON_TYPE_CHECK): Use inline function above instead of __extension__.
(tree_vec_elt_check): New.
(TREE_VEC_ELT_CHECK): Use inline function above instead of
__extension__.
(omp_clause_elt_check): New.
(OMP_CLAUSE_ELT_CHECK): Use inline function above instead of
__extension__.
(tree_operand_check): New.
(TREE_OPERAND_CHECK): Use inline function above instead of
__extension__.
(tree_operand_check_code): New.
(TREE_OPERAND_CHECK_CODE): Use inline function above instead of
__extension__.
(TREE_CHAIN): Simplify implementation.
(TREE_TYPE): Simplify implementation.
(tree_operand_length): Move for compilation dependences.
* gdbinit.in: (macro define __FILE__): New.
(macro define __LINE__): New.
(skip "tree.h"): New.
gcc/cp/ChangeLog
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. Re-write VEC in C++.
* call.c (add_function_candidate): Remove const qualifier
from call to VEC_index.
2012-08-14 Diego Novillo <dnovillo@google.com>
Merge from cxx-conversion branch. Configury.
* go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
* go-gcc.cc: Likewise.
* go-system.h: Likewise.
From-SVN: r190402
2012-08-15 03:56:07 +02:00
|
|
|
|
2012-08-14 Diego Novillo <dnovillo@google.com>
|
|
|
|
|
|
|
|
|
|
Merge from cxx-conversion branch. Configury.
|
|
|
|
|
|
|
|
|
|
* go-c.h: Remove all handlers of ENABLE_BUILD_WITH_CXX.
|
|
|
|
|
* go-gcc.cc: Likewise.
|
|
|
|
|
* go-system.h: Likewise.
|
|
|
|
|
|
2012-07-24 12:51:11 +02:00
|
|
|
|
2012-07-24 Uros Bizjak <ubizjak@gmail.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (lang_decl): Add variable_size GTY option.
|
|
|
|
|
|
2012-05-09 23:17:23 +02:00
|
|
|
|
2012-05-09 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* lang.opt: Add -fgo-pkgpath.
|
|
|
|
|
* go-lang.c (go_pkgpath): New static variable.
|
|
|
|
|
(go_prefix): New static variable.
|
|
|
|
|
(go_langhook_init): Pass go_pkgpath and go_prefix to
|
|
|
|
|
go_create_gogo.
|
|
|
|
|
(go_langhook_handle_option): Handle -fgo-pkgpath. Change
|
|
|
|
|
-fgo-prefix handling to just set go_prefix.
|
|
|
|
|
* go-c.h (go_set_prefix): Don't declare.
|
|
|
|
|
(go_create_gogo): Add pkgpath and prefix to declaration.
|
|
|
|
|
* go-gcc.cc (Gcc_backend::global_variable): Change unique_prefix
|
|
|
|
|
to pkgpath. Don't include the package name in the asm name.
|
|
|
|
|
* gccgo.texi (Invoking gccgo): Document -fgo-pkgpath. Update the
|
|
|
|
|
docs for -fgo-prefix.
|
|
|
|
|
|
2012-04-23 23:39:12 +02:00
|
|
|
|
2012-04-23 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_init): Set MPFR precision to 256.
|
|
|
|
|
|
2012-04-20 21:21:39 +02:00
|
|
|
|
2012-04-20 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* lang.opt: Add -fgo-check-divide-zero and
|
|
|
|
|
-fgo-check-divide-overflow.
|
|
|
|
|
* gccgo.texi (Invoking gccgo): Document new options.
|
|
|
|
|
|
2012-04-18 20:27:51 +02:00
|
|
|
|
2012-04-18 Steven Bosscher <steven@gcc.gnu.org>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::switch_statement): Build SWITCH_EXPR
|
|
|
|
|
with NULL_TREE type instead of void_type_node.
|
|
|
|
|
|
2012-03-09 09:25:05 +01:00
|
|
|
|
2012-03-09 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::assignment_statement): Convert the rhs
|
|
|
|
|
to the lhs type if necessary.
|
|
|
|
|
|
2012-03-09 00:33:04 +01:00
|
|
|
|
2012-03-08 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::init_statement): Don't initialize a
|
|
|
|
|
zero-sized variable.
|
|
|
|
|
(go_non_zero_struct): New global variable.
|
|
|
|
|
(Gcc_backend::non_zero_size_type): New function.
|
|
|
|
|
(Gcc_backend::global_variable): Don't build an assignment for a
|
|
|
|
|
zero-sized value.
|
|
|
|
|
* go-c.h (go_non_zero_struct): Declare.
|
|
|
|
|
* config-lang.in (gtfiles): Add go-c.h.
|
|
|
|
|
|
2012-03-01 06:14:10 +01:00
|
|
|
|
2012-02-29 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (class Gcc_tree): Add set_tree method.
|
|
|
|
|
(set_placeholder_pointer_type): When setting to a pointer to
|
|
|
|
|
error, set to error_mark_node.
|
|
|
|
|
|
2012-02-23 15:30:11 +01:00
|
|
|
|
2012-02-23 Richard Guenther <rguenther@suse.de>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::placeholder_pointer_type): Use
|
|
|
|
|
build_distinct_type_copy.
|
|
|
|
|
|
2012-02-17 23:36:10 +01:00
|
|
|
|
2012-02-17 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (go/import.o): Add dependency on $(GO_LEX_H).
|
|
|
|
|
|
2012-02-17 22:27:48 +01:00
|
|
|
|
2012-02-17 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* gospec.c (lang_specific_driver): If linking, and no -o option
|
|
|
|
|
was used, add one.
|
|
|
|
|
|
2012-02-14 19:58:48 +01:00
|
|
|
|
2012-02-14 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR go/48411
|
|
|
|
|
* Make-lang.in (gccgo-cross$(exeext)): New target.
|
|
|
|
|
(go.all.cross): Depend on gccgo-cross$(exeext) instead of
|
|
|
|
|
gccgo$(exeext).
|
|
|
|
|
(go.install-common): Only install GCCGO_TARGET_INSTALL_NAME if
|
|
|
|
|
gccgo-cross$(exeext) does not exist.
|
|
|
|
|
|
2012-02-07 20:26:30 +01:00
|
|
|
|
2012-02-07 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* gccgo.texi (Function Names): Document //extern instead of
|
|
|
|
|
__asm__.
|
|
|
|
|
|
2012-02-01 19:58:44 +01:00
|
|
|
|
2012-02-01 Jakub Jelinek <jakub@redhat.com>
|
|
|
|
|
|
|
|
|
|
PR target/52079
|
|
|
|
|
* go-lang.c (go_langhook_type_for_mode): For TImode and 64-bit HWI
|
|
|
|
|
return build_nonstandard_integer_type result if possible.
|
|
|
|
|
|
2012-01-21 23:50:36 +01:00
|
|
|
|
2012-01-21 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::type_size): Check for error_mark_node.
|
|
|
|
|
(Gcc_backend::type_alignment): Likewise.
|
|
|
|
|
(Gcc_backend::type_field_alignment): Likewise.
|
|
|
|
|
(Gcc_backend::type_field_offset): Likewise.
|
|
|
|
|
|
2012-01-20 16:42:38 +01:00
|
|
|
|
2012-01-20 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::placeholder_struct_type): Permit name to
|
|
|
|
|
be empty.
|
|
|
|
|
(Gcc_backend::set_placeholder_struct_type): Likewise.
|
|
|
|
|
|
2012-01-17 15:52:42 +01:00
|
|
|
|
2012-01-17 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* gospec.c (lang_specific_driver): If we see -S without -o, add -o
|
|
|
|
|
BASE.s rather than -o BASE.o.
|
|
|
|
|
|
2012-01-12 02:33:44 +01:00
|
|
|
|
2012-01-11 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_init): Initialize void_list_node before
|
|
|
|
|
calling go_create_gogo.
|
|
|
|
|
|
2012-01-11 05:48:22 +01:00
|
|
|
|
2012-01-10 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::type_size): New function.
|
|
|
|
|
(Gcc_backend::type_alignment): New function.
|
|
|
|
|
(Gcc_backend::type_field_alignment): New function.
|
|
|
|
|
(Gcc_backend::type_field_offset): New function.
|
|
|
|
|
* go-backend.c (go_type_alignment): Remove.
|
|
|
|
|
* go-c.h (go_type_alignment): Don't declare.
|
|
|
|
|
|
2011-12-28 01:06:10 +01:00
|
|
|
|
2011-12-27 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::set_placeholder_struct_type): Use
|
|
|
|
|
build_distinct_type_copy rather than build_variant_type_copy.
|
|
|
|
|
(Gcc_backend::set_placeholder_array_type): Likewise.
|
|
|
|
|
(Gcc_backend::named_type): Add special handling for builtin
|
|
|
|
|
basic types.
|
|
|
|
|
|
2011-12-22 21:49:18 +01:00
|
|
|
|
2011-12-22 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
2011-12-28 01:06:10 +01:00
|
|
|
|
* go-gcc.cc (Gcc_backend::set_placeholder_pointer_type): Arrange
|
|
|
|
|
for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
|
|
|
|
|
(Gcc_backend::set_placeholder_struct_type): Likewise.
|
|
|
|
|
(Gcc_backend::set_placeholder_array_type): Likewise.
|
|
|
|
|
(Gcc_backend::named_type): Set DECL_ORIGINAL_TYPE.
|
2011-12-22 21:49:18 +01:00
|
|
|
|
|
2011-12-14 02:36:11 +01:00
|
|
|
|
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 20:10:50 +01:00
|
|
|
|
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.
|
|
|
|
|
|
Move shlib support to toplevel libgcc
gcc:
PR translation/45116
* Makefile.in (slibdir): Remove, don't export.
(SHLIB_NM_FLAGS): Remove.
(libgcc.mvars): Don't emit SHLIB_LINK, SHLIB_INSTALL,
SHLIB_DLLDIR, SHLIB_EXT, SHLIB_MKMAP, SHLIB_MKMAP_OPTS,
SHLIB_MAPFILES, SHLIB_NM_FLAGS.
(DRIVER_DEFINES): Test SHLIB instead of SHLIB_LINK.
(gcc.o): Pass SHLIB instead of SHLIB_LINK.
(gccspec.o): Likewise.
(installdirs): Don't create $(DESTDIR)$(slibdir).
* configure.ac (slibdir): Remove.
* configure: Regenerate.
* libgcc-libsystem.ver: Move to ../libgcc/config.
* mkmap-flat.awk, mkmap-symver.awk: Move to ../libgcc.
* config/libgcc-glibc.ver: Move to ../libgcc/config.
* config/t-libunwind (SHLIB_LC): Remove.
* config/t-linux (SHLIB_MAPFILES): Remove.
* config/t-slibgcc-dummy: Rename to config/t-slibgcc.
* config/t-slibgcc-elf-ver: Remove.
* config/t-slibgcc-libgcc, config/t-slibgcc-nolc-override: Move to
../libgcc/config.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: Move
to ../libgcc/config/alpha.
* config/alpha/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_SYMVEC,
SHLIB_SYMVECX2, SHLIB_LINK): Remove.
* config/arm/libgcc-bpabi.ver: Move to ../libgcc/config/arm.
* config/arm/t-bpabi (SHLIB_MAPFILES): Remove.
* config/arm/t-netbsd (SHLIB_EXT, SHLIB_NAME, SHLIB_SONAME,
SHLIB_OBJS, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/arm/t-symbian (SHLIB_LC): Remove.
* config/bfin/libgcc-bfin.ver: Move to
../libgcc/config/bfin/libgcc-glibc.ver.
* config/bfin/t-bfin-linux (SHLIB_MAPFILES): Remove.
* config/c6x/libgcc-c6xeabi.ver: Move to
../libgcc/config/c6x/libgcc-eabi.ver.
* config/c6x/t-c6x-elf (SHLIB_MAPFILES): Remove.
* config/cris/libgcc.ver: Move to
../libgcc/config/cris/libgcc-glibc.ver.
* config/cris/t-linux (SHLIB_MAPFILES): Remove.
* config/frv/libgcc-frv.ver: Move to ../libgcc/config/frv.
* config/frv/t-linux (SHLIB_MAPFILES): Remove.
* config/i386/darwin-libgcc.10.4.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.4.ver.
* config/i386/darwin-libgcc.10.5.ver: Move to
../libgcc/config/i386/libgcc-darwin.10.5.ver.
* config/i386/libgcc-glibc.ver: Move to ../libgcc/config/i386.
* config/i386/t-cygming (SHLIB_EXT, SHLIB_IMPLIB, SHLIB_SOVERSION,
SHLIB_SONAME, SHLIB_MAP, SHLIB_OBJS, SHLIB_DIR, SHLIB_SLIBDIR_QUAL)
SHLIB_PTHREAD_CFLAG, SHLIB_PTHREAD_LDFLAG, SHLIB_LINK,
SHLIB_INSTALL, SHLIB_MKMAP, SHLIB_MKMAP_OPTS, SHLIB_MAPFILES):
Remove.
* config/i386/t-cygwin (SHLIB_LC, SHLIB_EH_EXTENSION,
SHLIB_IMPLIB, SHLIB_SONAME, SHLIB_MKMAP_OPTS): Remove.
* config/i386/t-dlldir, config/i386/t-dlldir-x: Move to
../libgcc/config/i386.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: Move to
../libgcc/config/i386.
* config/i386/t-linux: Move to ../libgcc/config/i386.
* config/i386/t-mingw-pthread: Move to ../libgcc/config/i386.
* config/i386/t-mingw-w32 (SHLIB_LC): Remove.
* config/i386/t-mingw-w64: Likewise.
* config/i386/t-mingw32: Remove.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: Move
to ../libgcc/config/ia64.
* config/ia64/t-glibc: Remove.
* config/ia64/t-hpux (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Remove.
* config/ia64/t-vms (shlib_version, SHLIB_EXT, SHLIB_OBJS,
SHLIB_NAME, SHLIB_MULTILIB, SHLIB_INSTALL, SHLIB_LINK): Remove.
* config/ia64/vms_symvec_libgcc_s.opt: Remove.
* config/m32r/libgcc-glibc.ver: Move to ../libgcc/config/m32r.
* config/m32r/t-linux (SHLIB_MAPFILES): Remove.
* config/m68k/t-slibgcc-elf-ver: Move to ../libgcc/config/m68k.
* config/mips/t-libgcc-mips16 (SHLIB_MAPFILES): Remove.
* config/pa/t-hpux-shlib: Move to ../libgcc/config/pa/t-slibgcc-hpux.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver:
Move to ../libgcc/config/pa.
* config/rs6000/darwin-libgcc.10.4.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.4.ver.
* config/rs6000/darwin-libgcc.10.5.ver: Move to
../libgcc/config/rs6000/libgcc-darwin.10.5.ver.
* config/rs6000/t-aix43 (SHLIB_EXT, SHLIB_LINK, SHLIB_INSTALL,
SHLIB_LIBS, SHLIB_MKMAP, SHLIB_NM_FLAGS, AR_FLAGS_FOR_TARGET): Remove.
* config/rs6000/t-aix52: Likewise.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: Move to
../libgcc/config/sh.
* config/sparc/libgcc-sparc-glibc.ver: Move to
../libgcc/config/sparc/libgcc-glibc.ver.
* config/sparc/t-linux: Move to ../libgcc/config/sparc.
* config/xtensa/t-linux (SHLIB_MAPFILES): Remove.
* config/xtensa/libgcc-xtensa.ver: Move to
../libgcc/config/xtensa/libgcc-glibc.ver.
* config.gcc (*-*-freebsd*): Replace t-slibgcc-elf-ver with
t-slibgcc in tmake_file.
Remove t-slibgcc-nolc-override for *-*-freebsd[34],
*-*-freebsd[34].* with pthreads.
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu,
*-*-knetbsd*-gnu, *-*-gnu*, *-*-kopensolaris*-gnu): Replace
t-slibgcc-elf-ver with t-slibgcc in tmake_file.
(*-*-netbsd*): Likewise.
(*-*-solaris2*): Replace t-slibgcc-dummy with t-slibgcc in tmake_file.
(*-*-*vms*): Add t-slibgcc to tmake_file.
(alpha*-*-linux*): Remove alpha/t-linux from tmake_file.
(alpha*-dec-osf5.1*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(arm*-*-linux*): Remove t-slibgcc-libgcc from tmake_file for
arm*-*-linux-*eabi.
(bfin*-linux-uclibc*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(crisv32-*-linux*, cris-*-linux*): Likewise.
(hppa*-*-linux*): Remove t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa[12]*-*-hpux10*): Replace pa/t-hpux-shlib with t-slibgcc in
tmake_file.
Remove pa/t-slibgcc-sjlj-ver, pa/t-slibgcc-dwarf-ver from tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(i[34567]86-*-darwin*): Replace t-slibgcc-dummy in t-slibgcc in
tmake_file.
(x86_64-*-darwin*): Likewise.
(i[34567]86-*-cygwin*): Remove tmake_eh_file, tmake_dlldir_file.
Add t-slibgcc to tmake_file.
(i[34567]86-*-mingw*, x86_64-*-mingw*): Likewise.
Remove i386/t-mingw32 from tmake_file unless x86_64-w64-*,
i[34567]86-w64-*.
Remove i386/t-mingw-pthread from tmake_file.
(ia64*-*-linux*): Remove ia64/t-glibc from tmake_file.
(ia64*-*-hpux*): Add t-slibgcc to tmake_file.
(ia64-hp-*vms*): Likewise.
(m32r-*-linux*): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*): Remove m68k/t-slibgcc-elf-ver from tmake_file.
(microblaze*-linux*): Remove t-slibgcc-elf-ver,
t-slibgcc-nolc-override from tmake_file.
(mips-sgi-irix6.5*): Replace t-slibgcc-dummy with t-slibgcc in
tmake_file.
(powerpc-*-darwin*): Likewise.
(powerpc64-*-darwin*): Likewise.
(powerpc-*-freebsd*): Remove t-slibgcc-libgcc from tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
t-slibgcc to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix5.2.*, powerpc-ibm-aix5.2.*): Likewise.
(rs6000-ibm-aix5.3.*, powerpc-ibm-aix5.3.*): Likewise.
(rs6000-ibm-aix[6789].*, powerpc-ibm-aix[6789].*): Likewise.
(sparc-*-linux*): Remove sparc/t-linux from tmake_file.
(sparc64-*-linux*): Likewise.
(tic6x-*-uclinux): Replace t-slibgcc-elf-ver with t-slibgcc in
tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu,
x86_64-*-kfreebsd*-gnu, i[34567]86-*-gnu*): Remove i386/t-linux
from tmake_file.
gcc/cp:
* Make-lang.in (g++spec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/fortran:
* Makef-lang.in (gfortranspec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/go:
* Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
gcc/java:
* Make-lang.in (jvspec.o): Pass SHLIB instead of SHLIB_LINK.
libgcc:
* Makefile.in (SHLIB_NM_FLAGS): Set.
* mkmap-flat.awk, mkmap-symver.awk: New files.
* configure.ac (libgcc_cv_lib_sjlj_exceptions): Check for SjLj
exceptions.
* configure: Regenerate.
* config/libgcc-glibc.ver: New file.
* config/libgcc-libsystem.ver: New file.
* config/t-libunwind (SHLIB_LC): Set.
* config/t-linux: New file.
* config/t-slibgcc (INSTALL_SHLIB): New.
(SHLIB_INSTALL): Use it.
* config/t-slibgcc-darwin (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
(SHLIB_MAPFILES): Don't append, adapt pathname.
(SHLIB_VERPFX): Set.
* config/t-slibgcc-elf-ver (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-symver.awk.
* config/t-slibgcc-gld-nover, config/t-slibgcc-hpux,
config/t-slibgcc-libgcc, config/t-slibgcc-vms: New files.
* config/alpha/libgcc-alpha-ldbl.ver, config/alpha/t-linux: New files.
* config/alpha/t-slibgcc-osf (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/arm/t-bpabi (SHLIB_MAPFILES): Set.
* config/bfin/libgcc-glibc.ver, config/bfin/t-linux: New files.
* config/c6x/libgcc-eabi.ver, config/c6x/t-elf: New files.
* config/cris/libgcc-glibc.ver, config/cris/t-linux: New files.
* config/frv/libgcc-frv.ver, config/frv/t-linux: New files.
* config/i386/libgcc-darwin.10.4.ver,
config/i386/libgcc-darwin.10.5.ver, config/i386/libgcc-glibc.ver:
New files.
* config/i386/t-darwin: Remove.
* config/i386/t-darwin64: Likewise.
* config/i386/t-dw2-eh, config/i386/t-sjlj-eh: New files.
* config/i386/t-slibgcc-cygming, config/i386/t-cygwin,
config/i386/t-dlldir, config/i386/t-dlldir-x: New files.
* config/i386/t-linux: New file.
* config/i386/t-mingw32: New file.
* config/ia64/libgcc-glibc.ver, config/ia64/libgcc-ia64.ver: New files.
* config/ia64/t-glibc: Rename to ...
* config/ia64/t-linux: ... this.
(SHLIB_MAPFILES): Set.
* config/ia64/t-glibc-libunwind: Rename to ...
* config/ia64/t-linux-libunwind: ... this.
* config/ia64/t-ia64 (SHLIB_MAPFILES): Set.
* config/ia64/t-slibgcc-hpux: New file.
* config/m32r/libgcc-glibc.ver, config/m32r/t-linux: New files.
* config/m68k/t-slibgcc-elf-ver: New file.
* config/mips/t-mips16 (SHLIB_MAPFILES): Set.
* config/mips/t-slibgcc-irix (SHLIB_MKMAP): Use $(srcdir) to refer
to mkmap-flat.awk.
* config/pa/t-slibgcc-hpux: New file.
* config/pa/t-slibgcc-dwarf-ver, config/pa/t-slibgcc-sjsj-ver: New
files.
* config/rs6000/libgcc-darwin.10.4.ver,
config/rs6000/libgcc-darwin.10.5.ver: New files.
* config/rs6000/libgcc-ppc-glibc.ver: Rename to
config/rs6000/libgcc-glibc.ver.
* config/rs6000/libgcc-ppc64.ver: Rename to
config/rs6000/libgcc-ibm-ldouble.ver.
* config/rs6000/t-darwin (SHLIB_VERPFX): Remove.
* config/rs6000/t-ibm-ldouble (SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-ldbl128: Rename to ...
* config/rs6000/t-linux: ... this.
(SHLIB_MAPFILES): Adapt filename.
* config/rs6000/t-slibgcc-aix: New file.
* config/sh/libgcc-excl.ver, config/sh/libgcc-glibc.ver: New files.
* config/sh/t-linux (SHLIB_MAPFILES): Use $(srcdir) to refer to
libgcc-excl.ver, libgcc-glibc.ver.
(SHLIB_LINK, SHLIB_INSTALL): Remove.
* config/sparc/libgcc-glibc.ver: New file.
* config/sparc/t-linux: New file.
* config/xtensa/libgcc-glibc.ver, config/xtensa/t-linux: New files.
* config.host (*-*-freebsd*): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver to tmake_file.
Add t-slibgcc-nolc-override to tmake_file for posix threads on
*-*-freebsd[34].
(*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu,
*-*-gnu*, *-*-kopensolaris*-gnu): Add t-slibgcc, t-slibgcc-gld,
t-slibgcc-elf-ver, t-linux to tmake_file.
(*-*-netbsd*): Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to
tmake_file.
(alpha*-*-linux*): Add alpha/t-linux to tmake_file.
(alpha64-dec-*vms*): Add t-slibgcc-vms to tmake_file.
(alpha*-dec-*vms*): Likewise.
(arm*-*-freebsd*): Append to tmake_file.
(arm*-*-netbsdelf*): Add t-slibgcc-gld-nover to tmake_file.
(arm*-*-linux*): Add t-slibgcc-libgcc to tmake_file for
arm*-*-linux-*eabi.
(arm*-*-eabi*, arm*-*-symbianelf*): Add t-slibgcc-nolc-override to
tmake_file for arm*-*-symbianelf*.
(bfin*-linux-uclibc*): Append to tmake_file, add bfin/t-linux.
(cris-*-linux*, crisv32-*-linux*): Append to tmake_file, add
cris/t-linux.
(frv-*-*linux*): Append to tmake_file, add frv/t-linux.
(hppa*-*-linux*): Add t-slibgcc-libgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver to tmake_file.
(hppa[12]*-*-hpux10*): Add t-slibgcc, pa/t-slibgcc-sjlj-ver,
pa/t-slibgcc-dwarf-ver, t-slibgcc-hpux, pa/t-slibgcc-hpux to tmake_file.
(hppa*64*-*-hpux11*): Likewise.
(hppa[12]*-*-hpux11*): Likewise.
(x86_64-*-darwin*): Don't override tmake_file, but only keep
i386/t-crtpc, i386/t-crtfm.
(i[34567]86-*-cygwin*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-cygwin to tmake_file.
Prepent i386/t-mingw-pthread to tmake_file for posix threads.
(i[34567]86-*-mingw*): Set tmake_eh_file, tmake_dlldir_file.
Prepend $tmake_eh_file, $tmake_dlldir_file, i386/t-slibgcc-cygming
to tmake_file.
Add i386/t-mingw32 to tmake_file.
(x86_64-*-mingw*): Likewise.
(ia64*-*-freebsd*): Append to tmake_file.
(ia64*-*-linux*): Append to tmake_file.
Replace ia64/t-glibc by ia64/t-linux.
Replace ia64/t-glibc-libunwind by ia64/t-linux-libunwind if using
system libunwind.
(ia64*-*-hpux*): Add t-slibgcc, ia64/t-slibgcc-hpux,
t-slibgcc-hpux to tmake_file.
(ia64-hp-*vms*): Add t-slibgcc-vms to tmake_file.
(m32r-*-linux*): Append to tmake_file, add m32r/t-linux.
(m32rle-*-linux*): Likewise.
(m68k-*-linux*)): Add m68k/t-slibgcc-elf-ver to tmake_file unless
sjlj exceptions.
(microblaze*-linux*): New case.
Append to tmake_file, add t-slibgcc-nolc-override.
(powerpc-*-freebsd*): Add t-slibgcc-libgcc to tmake_file.
(powerpc-*-linux*, powerpc64-*-linux*): Likewise.
Replace rs6000/t-ldbl128 by rs6000/t-linux in tmake_file.
(rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Add
rs6000/t-slibgcc-aix to tmake_file.
(rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise.
(rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise.
(sh-*-elf*, sh[12346l]*-*-elf*, sh-*-linux*)
(sh[2346lbe]*-*-linux*, sh-*-netbsdelf*, shl*-*-netbsdelf*)
(sh5-*-netbsd*, sh5l*-*-netbsd*, sh64-*-netbsd*)
(sh64l*-*-netbsd*): Add t-slibgcc-libgcc to tmake_file for
sh*-*-linux*.
(sparc-*-linux*): Append to tmake_file for *-leon*.
Add sparc/t-linux to tmake_file for non-Leon targets.
(sparc64-*-linux*): Add sparc/t-linux to tmake_file.
(tic6x-*-uclinux): New case.
Add t-slibgcc, t-slibgcc-gld, t-slibgcc-elf-ver to tmake_file.
(tic6x-*-*): Add c6x/t-elf to tmake_file.
(xtensa*-*-linux*): Append to tmake_file, add xtensa/t-linux.
(am33_2.0-*-linux*): Append to tmake_file.
(i[34567]86-*-linux*, x86_64-*-linux*, i[34567]86-*-kfreebsd*-gnu)
(i[34567]86-*-knetbsd*-gnu, i[34567]86-*-gnu*): Also handle
x86_64-*-kfreebsd*-gnu.
Add i386/t-linux to tmake_file.
From-SVN: r180767
2011-11-02 11:49:46 +01:00
|
|
|
|
2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (gospec.o): Pass SHLIB instead of SHLIB_LINK.
|
|
|
|
|
|
2011-08-24 21:22:44 +02:00
|
|
|
|
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.
|
|
|
|
|
|
* Makefile.in (CFLAGS-collect2.o, CFLAGS-c-family/c-opts.o)
(CFLAGS-c-family/c-pch.o, CFLAGS-prefix.o, CFLAGS-version.o)
(CFLAGS-lto-compress.o, CFLAGS-toplev.o, CFLAGS-intl.o)
(CFLAGS-cppbuiltin.o, CFLAGS-cppdefault.o): New.
(collect2.o, c-family/c-cppbuiltin.o, c-family/c-opts.o)
(c-family/c-pch.o, prefix.o, version.o, lto-compress.o, toplev.o)
(intl.o, cppbuiltin.o, cppdefault.o): Remove explicit compilation
rules.
(lto-wrapper$(exeext)): Use $(LINKER) not $(COMPILER).
ada:
* gcc-interface/Make-lang.in (CFLAGS-ada/tracebak.o)
(CFLAGS-ada/targext.o, CFLAGS-ada/cio.o, CFLAGS-ada/init.o)
(CFLAGS-ada/initialize.o, CFLAGS-ada/raise.o): New.
(ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o)
(ada/initialize.o, ada/raise.o): Remove explicit compilation rules.
fortran:
* Make-lang.in (fortran/cpp.o): Remove explicit compilation rule.
go:
* Make-lang.in (CFLAGS-go/go-lang.o): New.
(go/go-lang.o): Remove explicit compilation rule.
java:
* Make-lang.in (CFLAGS-java/jcf-io.o, CFLAGS-java/jcf-path.o):
New.
(java/jcf-io.o, java/jcf-path.o): Remove explicit compilation
rules.
From-SVN: r178030
2011-08-24 12:47:06 +02:00
|
|
|
|
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 14:08:31 +02:00
|
|
|
|
2011-08-08 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (gccgo$(exeext)): Add $(EXTRA_GCC_LIBS).
|
|
|
|
|
|
2011-08-03 02:37:26 +02:00
|
|
|
|
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 12:03:05 +02:00
|
|
|
|
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.
|
|
|
|
|
|
target-def.h (TARGET_HAVE_NAMED_SECTIONS): Move to common/common-target-def.h.
* target-def.h (TARGET_HAVE_NAMED_SECTIONS): Move to
common/common-target-def.h.
* target.def (default_target_flags, handle_option,
supports_split_stack, optimization_table, init_struct,
except_unwind_info, unwind_tables_default, have_named_sections):
Move to common/common-target.def.
* target.h (enum opt_levels, struct default_options): Move to
common/common-target.h.
* targhooks.c (default_except_unwind_info,
dwarf2_except_unwind_info, sjlj_except_unwind_info,
default_target_handle_option, empty_optimization_table): Move to
common/common-targhooks.c.
* targhooks.h (default_except_unwind_info,
dwarf2_except_unwind_info, sjlj_except_unwind_info,
default_target_handle_option, empty_optimization_table): Move to
common/common-targhooks.h.
* common/common-target-def.h: Include common/common-targhooks.h.
(TARGET_HAVE_NAMED_SECTIONS): Define if TARGET_ASM_NAMED_SECTION
defined.
* common/common-target.def (handle_option, option_init_struct,
option_optimization_table, default_target_flags,
except_unwind_info, supports_split_stack, unwind_tables_default,
have_named_sections): Move from target.def.
(HOOK_PREFIX): Undefine at end of file.
* common/common-target.h: Include input.h.
(enum opt_levels, struct default_options): Move from target.h.
* common/common-targhooks.c, common/common-targhooks.h: New.
* config.gcc (target_has_targetm_common): Default to yes.
(moxie*): Set target_has_targetm_common=no.
(hppa*-*-*): Don't set target_has_targetm_common=yes.
* doc/tm.texi: Regenerate.
* Makefile.in (COMMON_TARGET_H): Add $(INPUT_H).
(C_TARGET_DEF_H): Add common/common-targhooks.h.
(GCC_OBJS): Remove vec.o.
(OBJS): Remove hooks.o and vec.o.
(OBJS-libcommon-target): Add vec.o, hooks.o and
common/common-targhooks.o.
(c-family/c-common.o, c-family/c-cppbuiltin.o, lto-opts.o, tree.o,
tree-tailcall.o, opts.o, toplev.o, varasm.o, function.o, except.o,
expr.o, explow.o, dbxout.o, dwarf2out.o, cfgrtl.o, haifa-sched.o,
cfglayout.o, $(out_object_file), $(common_out_object_file)):
Update dependencies.
(common/common-targhooks.o): New.
* common/config/default-common.c: Include tm.h. Add FIXME
comment.
* common/config/pa/pa-common.c: Include more headers. Take
copyright dates from pa.c.
(pa_option_optimization_table, pa_handle_option,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_HANDLE_OPTION): Move from pa.c.
* common/config/alpha/alpha-common.c,
common/config/arm/arm-common.c, common/config/avr/avr-common.c,
common/config/bfin/bfin-common.c,
common/config/cris/cris-common.c,
common/config/fr30/fr30-common.c, common/config/frv/frv-common.c,
common/config/h8300/h8300-common.c,
common/config/i386/i386-common.c,
common/config/ia64/ia64-common.c,
common/config/iq2000/iq2000-common.c,
common/config/lm32/lm32-common.c,
common/config/m32c/m32c-common.c,
common/config/m32r/m32r-common.c,
common/config/m68k/m68k-common.c,
common/config/mcore/mcore-common.c,
common/config/mep/mep-common.c,
common/config/microblaze/microblaze-common.c,
common/config/mips/mips-common.c,
common/config/mmix/mmix-common.c,
common/config/mn10300/mn10300-common.c,
common/config/pdp11/pdp11-common.c,
common/config/picochip/picochip-common.c,
common/config/rs6000/rs6000-common.c,
common/config/rx/rx-common.c, common/config/s390/s390-common.c,
common/config/score/score-common.c, common/config/sh/sh-common.c,
common/config/sparc/sparc-common.c,
common/config/spu/spu-common.c, common/config/v850/v850-common.c,
common/config/vax/vax-common.c,
common/config/xstormy16/xstormy16-common.c,
common/config/xtensa/xtensa-common.c: New.
* config/alpha/alpha.c: Include common/common-target.h.
(alpha_option_optimization_table, alpha_handle_option,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to alpha-common.c.
* config/arm/arm-protos.h (arm_except_unwind_info): Declare.
* config/arm/arm.c (arm_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO, arm_except_unwind_info): Move to
arm-common.c.
* config/avr/avr.c (avr_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
to avr-common.c.
* config/bfin/bfin.c (struct bfin_cpu): Move to bfin.h.
(bfin_cpus, bfin_handle_option, TARGET_HANDLE_OPTION,
TARGET_DEFAULT_TARGET_FLAGS): Move to bfin-common.c.
* config/bfin/bfin.h struct bfin_cpu): Move from bfin.c.
* config/cris/cris.c (cris_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE, cris_handle_option): Move to
cris-common.c.
* config/fr30/fr30.c (fr30_option_optimization_table,
TARGET_EXCEPT_UNWIND_INFO, TARGET_OPTION_OPTIMIZATION_TABLE): Move
to fr30-common.c.
* config/frv/frv.c (frv_option_optimization_table,
MASK_DEFAULT_ALLOC_CC, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to frv-common.c.
* config/h8300/h8300.c (h8300_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO): Move to h8300-common.c.
* config/i386/i386-protos.h (ix86_handle_option): Declare.
* config/i386/i386.c: Include common/common-target.h.
(OPTION_MASK_ISA_MMX_SET, OPTION_MASK_ISA_3DNOW_SET,
OPTION_MASK_ISA_SSE_SET, OPTION_MASK_ISA_SSE2_SET,
OPTION_MASK_ISA_SSE3_SET, OPTION_MASK_ISA_SSSE3_SET,
OPTION_MASK_ISA_SSE4_1_SET, OPTION_MASK_ISA_SSE4_2_SET,
OPTION_MASK_ISA_AVX_SET, OPTION_MASK_ISA_FMA_SET,
OPTION_MASK_ISA_SSE4_SET, OPTION_MASK_ISA_SSE4A_SET,
OPTION_MASK_ISA_FMA4_SET, OPTION_MASK_ISA_XOP_SET,
OPTION_MASK_ISA_LWP_SET, OPTION_MASK_ISA_AES_SET,
OPTION_MASK_ISA_PCLMUL_SET, OPTION_MASK_ISA_ABM_SET,
OPTION_MASK_ISA_BMI_SET, OPTION_MASK_ISA_TBM_SET,
OPTION_MASK_ISA_POPCNT_SET, OPTION_MASK_ISA_CX16_SET,
OPTION_MASK_ISA_SAHF_SET, OPTION_MASK_ISA_MOVBE_SET,
OPTION_MASK_ISA_CRC32_SET, OPTION_MASK_ISA_FSGSBASE_SET,
OPTION_MASK_ISA_RDRND_SET, OPTION_MASK_ISA_F16C_SET,
OPTION_MASK_ISA_MMX_UNSET, OPTION_MASK_ISA_3DNOW_UNSET,
OPTION_MASK_ISA_3DNOW_A_UNSET, OPTION_MASK_ISA_SSE_UNSET,
OPTION_MASK_ISA_SSE2_UNSET, OPTION_MASK_ISA_SSE3_UNSET,
OPTION_MASK_ISA_SSSE3_UNSET, OPTION_MASK_ISA_SSE4_1_UNSET,
OPTION_MASK_ISA_SSE4_2_UNSET, OPTION_MASK_ISA_AVX_UNSET,
OPTION_MASK_ISA_FMA_UNSET, OPTION_MASK_ISA_SSE4_UNSET,
OPTION_MASK_ISA_SSE4A_UNSET, OPTION_MASK_ISA_FMA4_UNSET,
OPTION_MASK_ISA_XOP_UNSET, OPTION_MASK_ISA_LWP_UNSET,
OPTION_MASK_ISA_AES_UNSET, OPTION_MASK_ISA_PCLMUL_UNSET,
OPTION_MASK_ISA_ABM_UNSET, OPTION_MASK_ISA_BMI_UNSET,
OPTION_MASK_ISA_TBM_UNSET, OPTION_MASK_ISA_POPCNT_UNSET,
OPTION_MASK_ISA_CX16_UNSET, OPTION_MASK_ISA_SAHF_UNSET,
OPTION_MASK_ISA_MOVBE_UNSET, OPTION_MASK_ISA_CRC32_UNSET,
OPTION_MASK_ISA_FSGSBASE_UNSET, OPTION_MASK_ISA_RDRND_UNSET,
OPTION_MASK_ISA_F16C_UNSET, ix86_handle_option,
ix86_option_optimization_table, ix86_option_init_struct,
ix86_supports_split_stack, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_OPTION_INIT_STRUCT, TARGET_SUPPORTS_SPLIT_STACK): Move to
i386-common.c.
* config/i386/t-i386 (i386.o): Update dependencies.
* config/ia64/ia64-protos.h (ia64_except_unwind_info): Declare.
* config/ia64/ia64.c (ia64_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
ia64_handle_option): Move to ia64-common.c.
* config/iq2000/iq2000.c (iq2000_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to iq2000-common.c.
* config/lm32/lm32.c (lm32_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO): Move
to lm32-common.c.
* config/m32c/m32c.c (TARGET_HAVE_NAMED_SECTIONS): Move to
m32c-common.c.
* config/m32r/m32r.c (m32r_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_EXCEPT_UNWIND_INFO,
m32r_handle_option): Move to m32r-common.c.
(m32r_memory_move_cost): Remove comment referring to
TARGET_HANDLE_OPTION.
* config/m68k/m68k.c (TARGET_HANDLE_OPTION, m68k_handle_option):
Move to m68k-common.c.
* config/mcore/mcore.c (mcore_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO): Move to mcore-common.c.
* config/mep/mep.c (mep_option_optimization_table,
mep_handle_option, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_DEFAULT_TARGET_FLAGS):
Move to mep-common.c.
* config/microblaze/microblaze.c
(microblaze_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO): Move to microblaze-common.c.
* config/mips/mips.c (mips_handle_option,
mips_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION): Move to
mips-common.c.
* config/mmix/mmix.c (mmix_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
Move to mmix-common.c.
* config/mn10300/mn10300.c (mn10300_option_optimization_table,
mn10300_handle_option, TARGET_EXCEPT_UNWIND_INFO,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to mn10300-common.c.
* config/pa/pa.c: Include common/common-target.h.
(pa_option_optimization_table, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
pa_handle_option): Move to pa-common.c.
(pa_option_override): Use targetm_common.except_unwind_info.
(pa_asm_output_mi_thunk, pa_function_section): Use
targetm_common.have_named_sections.
* config/pdp11/pdp11.c (pdp11_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
pdp11_handle_option, pdp11_option_init_struct): Move to
pdp11-common.c.
* config/picochip/picochip.c (picochip_option_optimization_table,
TARGET_HAVE_NAMED_SECTIONS, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO): Move to picochip-common.c.
* config/rs6000/rs6000.c: Include common/common-target.h.
(rs6000_option_optimization_table, TARGET_HANDLE_OPTION,
TARGET_OPTION_INIT_STRUCT, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_DEFAULT_TARGET_FLAGS, rs6000_option_init_struct,
rs6000_handle_option): Move to rs6000-common.c.
* config/rs6000/t-rs6000 (rs6000.o): Update dependencies.
* config/rx/rx.c (rx_handle_option, rx_option_optimization_table,
TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_EXCEPT_UNWIND_INFO): Move to rx-common.c.
* config/s390/s390.c (processor_flags_table,
s390_option_optimization_table, s390_option_init_struct,
s390_handle_option, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE,
TARGET_OPTION_INIT_STRUCT): Move to s390-common.c.
* config/s390/s390.h (processor_flags_table): Declare.
* config/score/score.c (score_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
TARGET_OPTION_OPTIMIZATION_TABLE, MASK_ALL_CPU_BITS,
score_handle_option): Move to score-common.c.
* config/sh/sh.c (sh_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE, TARGET_OPTION_INIT_STRUCT,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_HANDLE_OPTION,
sh_handle_option, sh_option_init_struct): Move to sh-common.c.
* config/sparc/sparc.c: Include common/common-target.h.
(sparc_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to sparc-common.c.
* config/spu/spu.c (TARGET_DEFAULT_TARGET_FLAGS,
TARGET_OPTION_INIT_STRUCT, TARGET_EXCEPT_UNWIND_INFO,
spu_option_init_struct): Move to spu-common.c.
* config/stormy16/stormy16.c (xstorym16_option_optimization_table,
TARGET_OPTION_OPTIMIZATION_TABLE): Move to xstormy16-common.c.
* config/v850/v850.c (small_memory_physical_max,
v850_handle_memory_optionn v850_handle_option,
v850_option_optimization_table, TARGET_DEFAULT_TARGET_FLAGS,
TARGET_HANDLE_OPTION, TARGET_OPTION_OPTIMIZATION_TABLE): Move to
v850-common.c.
* config/vax/vax.c (TARGET_DEFAULT_TARGET_FLAGS): Move to
vax-common.c.
* config/xtensa/xtensa.c (xtensa_option_optimization_table,
TARGET_DEFAULT_TARGET_FLAGS, TARGET_OPTION_OPTIMIZATION_TABLE):
Move to xtensa-common.c.
* cfglayout.c: Include common/common-target.h.
(fixup_reorder_chain): Use targetm_common.have_named_sections.
* cfgrtl.c: Include common/common-target.h.
(force_nonfallthru_and_redirect, commit_one_edge_insertion): Use
targetm_common.have_named_sections.
* dbxout.c: Include common/common-target.h.
(dbxout_function_end): Use targetm_common.have_named_sections.
* defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Use
targetm_common.except_unwind_info.
* dwarf2out.c: Include common/common-target.h.
(dwarf2out_do_frame, dwarf2out_do_cfi_asm,
dwarf2out_begin_prologue, dwarf2out_frame_init,
dwarf2out_frame_finish, dwarf2out_assembly_start): Use
targetm_common.except_unwind_info.
* except.c: Include common/common-target.h.
(init_eh, finish_eh_generation,
output_one_function_exception_table): Use
targetm_common.except_unwind_info.
(switch_to_exception_section): Use
targetm_common.have_named_sections.
* explow.c: Include common/common-target.h.
* expr.c: Include common/common-target.h.
(build_personality_function): Use
targetm_common.except_unwind_info.
* function.c: Include common/common-target.h.
(expand_function_end): Use targetm_common.except_unwind_info.
* haifa-sched.c: Include common/common-target.h.
(sched_create_recovery_edges): Use
targetm_common.have_named_sections.
* lto-opts.c: Include common/common-target.h instead of target.h.
(lto_reissue_options): Use targetm_common.handle_option.
* opts.c: Include common/common-target.h.
(target_handle_option): Use targetm_common.handle_option.
(init_options_struct): Update comment referring to
targetm.target_option.optimization. Use
targetm_common.default_target_flags,
targetm_common.unwind_tables_default and
targetm_common.option_init_struct.
(default_options_optimization): Use
targetm_common.option_optimization_table.
(finish_options): Use targetm_common.except_unwind_info,
targetm_common.unwind_tables_default,
targetm_common.have_named_sections and
targetm_common.supports_split_stack.
* toplev.c: Include common/common-target.h.
(process_options): Use targetm_common.have_named_sections.
* tree-tailcall.c: Include common/common-target.h.
(suitable_for_tail_call_opt_p): Use
targetm_common.except_unwind_info.
* tree.c: Include common/common-target.h.
(build_common_builtin_nodes): Use
targetm_common.except_unwind_info.
* varasm.c: Include common/common-target.h.
(resolve_unique_section, hot_function_section,
default_function_section): Use targetm_common.have_named_sections.
ada:
* gcc-interface/Make-lang.in (gnatbind$(exeext)): Use ggc-none.o.
(ada/utils.o): Update dependencies.
* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Add
../../../libcpp/libcpp.a.
* gcc-interface/utils.c: Include common/common-target.h.
(process_attributes): Use targetm_common.have_named_sections.
c-family:
* c-common.c: Include common/common-target.h.
(handle_section_attribute): Use
targetm_common.have_named_sections.
* c-cppbuiltin.c: Include common/common-target.h.
(c_cpp_builtins): Use targetm_common.except_unwind_info.
cp:
* Make-lang.in (cp/method.o): Update dependencies.
* method.c: Include common/common-target.h.
(use_thunk): Use targetm_common.have_named_sections.
go:
* 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.
po:
* exgettext: Handle common/ directory and subdirectories.
From-SVN: r175064
2011-06-15 01:11:35 +02:00
|
|
|
|
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-14 07:53:10 +02:00
|
|
|
|
2011-06-13 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (go/expressions.o): Depend on $(GO_RUNTIME_H).
|
|
|
|
|
|
2011-06-11 07:16:20 +02:00
|
|
|
|
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-10 00:41:29 +02:00
|
|
|
|
2011-06-09 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::zero_expression): New function.
|
|
|
|
|
|
2011-06-07 15:01:27 +02:00
|
|
|
|
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-28 00:46:11 +02:00
|
|
|
|
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 13:49:46 +02:00
|
|
|
|
2011-05-24 Joseph Myers <joseph@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (GCCGO_OBJS): Remove prefix.o.
|
|
|
|
|
(gccgo$(exeext)): Use libcommon-target.a.
|
|
|
|
|
|
Makefile.in (LIBDEPS): Add libcommon.a.
* Makefile.in (LIBDEPS): Add libcommon.a.
(LIBS): Likewise.
(GCC_OBJS): Remove diagnostic.o, pretty-print.o and input.o.
(OBJS-common): Remove diagnostic.o, input.o, intl.o,
pretty-print.o and version.o.
(OBJS-libcommon): New.
(ALL_HOST_BACKEND_OBJS): Add $(OBJS-libcommon).
(BACKEND): Add libcommon.a.
(MOSTLYCLEANFILES): Likewise.
(libcommon.a): New.
(xgcc$(exeext)): Don't explicitly use version.o and intl.o.
(cpp$(exeext)): Likewise.
(COLLECT2_OBJS): Remove intl.o, version.o, diagnostic.o,
pretty-print.o and input.o.
(lto-wrapper$(exeext)): Don't explicitly use intl.o.
(lto-wrapper.o): Depend on $(DIAGNOSTIC_H).
(errors.o): Remove.
(mips-tfile): Don't explicitly use version.o.
(mips-tdump): Likewise.
(gcov.o): Depend on $(DIAGNOSTIC_H).
(gcov-dump.o): Depend on intl.h and $(DIAGNOSTIC_H).
(GCOV_OBJS): Remove intl.o, version.o and errors.o.
(GCOV_DUMP_OBJS): Remove version.o and errors.o.
* gcov-dump.c: Include intl.h and diagnostic.h.
(main): Initialize diagnostics.
* gcov.c: Include diagnostic.h.
(fnotice): Remove.
(main): Initialize diagnostics.
* lto-wrapper.c: Include diagnostic.h.
(main): Initialize diagnostics.
ada:
* gcc-interface/Make-lang.in (EXTRA_GNATBIND_OBJS): Remove
version.o.
* gcc-interface/Makefile.in (EXTRA_GNATTOOLS_OBJS): Use
libcommon.a instead of version.o.
cp:
* Make-lang.in (GXX_OBJS): Remove intl.o and version.o.
fortran:
* Make-lang.in (GFORTRAN_D_OBJS): Remove version.o and intl.o.
go:
* Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
java:
* Make-lang.in ($(XGCJ)$(exeext)): Don't explicitly use intl.o and
version.o.
(JCFDUMP_OBJS): Remove errors.o, version.o and intl.o.
(JVGENMAIN_OBJS): Remove errors.o and intl.o.
(java/jcf-dump.o, java/jvgenmain.o): Depend in $(DIAGNOSTIC_H).
* jcf-dump.c: Include diagnostic.h.
(main): Initialize diagnostics.
* jvgenmain.c: Include diagnostic.h.
(main): Initialize diagnostics.
From-SVN: r173958
2011-05-20 17:19:05 +02:00
|
|
|
|
2011-05-20 Joseph Myers <joseph@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (GCCGO_OBJS): Remove intl.o and version.o.
|
|
|
|
|
|
2011-05-14 00:34:56 +02:00
|
|
|
|
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 20:35:05 +02:00
|
|
|
|
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 21:58:29 +02:00
|
|
|
|
2011-05-07 Eric Botcazou <ebotcazou@adacore.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (global_bindings_p): Return bool and simplify.
|
|
|
|
|
|
2011-05-06 05:47:57 +02:00
|
|
|
|
2011-05-05 Nathan Froyd <froydnj@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::switch_statement): Call build_case_label.
|
|
|
|
|
|
2011-05-04 17:42:18 +02:00
|
|
|
|
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-27 02:49:54 +02:00
|
|
|
|
2011-04-26 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::struct_type): Implement.
|
|
|
|
|
|
2011-04-25 19:21:28 +02:00
|
|
|
|
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 18:39:24 +02:00
|
|
|
|
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-22 00:54:23 +02:00
|
|
|
|
2011-04-21 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-system.h (go_assert, go_unreachable): Define.
|
|
|
|
|
|
2011-04-20 01:26:19 +02:00
|
|
|
|
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 23:52:41 +02:00
|
|
|
|
2011-04-19 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::temporary_variable): New function.
|
|
|
|
|
|
2011-04-19 20:20:05 +02:00
|
|
|
|
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-19 06:23:00 +02:00
|
|
|
|
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 23:18:58 +02:00
|
|
|
|
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-15 06:10:08 +02:00
|
|
|
|
2011-04-14 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
2013-10-12 00:17:47 +02:00
|
|
|
|
* go-gcc.cc (Gcc_backend::error_statement): New function.
|
2011-04-15 06:10:08 +02:00
|
|
|
|
|
2011-04-14 01:21:21 +02:00
|
|
|
|
2011-04-13 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (go/gogo-tree.o): depend on $(GO_RUNTIME_H).
|
|
|
|
|
|
2011-04-13 23:00:59 +02:00
|
|
|
|
2011-04-13 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (GO_OBJS): Add go/runtime.o.
|
|
|
|
|
(GO_RUNTIME_H): New variable.
|
|
|
|
|
(go/runtime.o): New target.
|
|
|
|
|
(go/gogo.o): Depend on $(GO_RUNTIME_H).
|
|
|
|
|
(go/statements.o): Likewise.
|
|
|
|
|
|
2011-04-13 05:09:53 +02:00
|
|
|
|
2011-04-12 Nathan Froyd <froydnj@codesourcery.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (union lang_tree_node): Check for TS_COMMON before
|
|
|
|
|
calling TREE_CHAIN.
|
|
|
|
|
|
2011-04-07 01:07:13 +02:00
|
|
|
|
2011-04-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (if_statement): Use build3_loc.
|
|
|
|
|
(Gcc_backend::switch_statement): New function.
|
|
|
|
|
(Gcc_backend::statement_list): New function.
|
|
|
|
|
|
2011-04-06 17:46:53 +02:00
|
|
|
|
2011-04-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::if_statement): New function.
|
|
|
|
|
(tree_to_stat): New function.
|
|
|
|
|
(expr_to_tree): Renamed from expression_to_tree.
|
|
|
|
|
(stat_to_tree): Renamed from statement_to_tree.
|
|
|
|
|
|
2011-04-06 17:30:20 +02:00
|
|
|
|
2011-04-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc (Gcc_backend::expression_statement): New function.
|
|
|
|
|
|
2011-04-05 07:57:39 +02:00
|
|
|
|
2011-04-04 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.c (class Blabel): Define.
|
|
|
|
|
(Gcc_backend::make_expression): New function.
|
|
|
|
|
(get_identifier_from_string): New function.
|
|
|
|
|
(Gcc_backend::label): New function.
|
|
|
|
|
(Gcc_backend::label_definition_statement): New function.
|
|
|
|
|
(Gcc_backend::goto_statement): New function.
|
|
|
|
|
(Gcc_backend::label_address): New function.
|
|
|
|
|
(expression_to_tree): New function.
|
|
|
|
|
* Make-lang.in (go/expressions.o): Depend on
|
|
|
|
|
go/gofrontend/backend.h.
|
|
|
|
|
(go/gogo.o): Likewise.
|
|
|
|
|
|
2011-04-05 01:19:09 +02:00
|
|
|
|
2011-04-04 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc: #include "tree-iterator.h", "gimple.h", and "gogo.h".
|
|
|
|
|
(class Bfunction): Define.
|
|
|
|
|
(Gcc_backend::assignment_statement): Rename from assignment.
|
|
|
|
|
Check for errors.
|
|
|
|
|
(Gcc_backend::return_statement): New function.
|
|
|
|
|
(tree_to_function): New function.
|
|
|
|
|
* Make-lang.in (go/go-gcc.o): Depend on tree-iterator.h,
|
|
|
|
|
$(GIMPLE_H), and $(GO_GOGO_H).
|
|
|
|
|
|
2011-04-04 00:44:18 +02:00
|
|
|
|
2011-04-03 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-gcc.cc: New file.
|
|
|
|
|
* Make-lang.in (GO_OBJS): Add go/go-gcc.o.
|
|
|
|
|
(go/go-gcc.o): New target.
|
|
|
|
|
(go/go.o): Depend on go/gofrontend/backend.h.
|
|
|
|
|
(go/statements.o): Likewise.
|
|
|
|
|
|
2011-03-01 00:01:18 +01:00
|
|
|
|
2011-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
|
|
|
|
|
|
|
|
|
|
* gccgo.texi (Top, Import and Export): Fix a typo and a markup nit.
|
|
|
|
|
|
2011-02-08 18:53:17 +01:00
|
|
|
|
2011-02-08 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_init_options_struct): Set
|
|
|
|
|
frontend_set_flag_errno_math. Don't set x_flag_trapping_math.
|
|
|
|
|
|
2011-01-31 14:52:42 +01:00
|
|
|
|
2011-01-31 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
|
|
|
|
|
|
|
|
|
* gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
|
|
|
|
|
LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
|
|
|
|
|
|
2011-01-21 19:19:03 +01:00
|
|
|
|
2011-01-21 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-lang.c (go_langhook_init): Omit float_type_size when calling
|
|
|
|
|
go_create_gogo.
|
|
|
|
|
* go-c.h: Update declaration of go_create_gogo.
|
|
|
|
|
|
2011-01-14 04:27:32 +01:00
|
|
|
|
2011-01-13 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* go-backend.c: Include "rtl.h" and "target.h".
|
|
|
|
|
(go_imported_unsafe): New function.
|
|
|
|
|
* go-c.h (go_imported_unsafe): Declare.
|
|
|
|
|
* Make-lang.in (go/go-backend.o): Depend on $(RTL_H).
|
|
|
|
|
(go/gogo-tree.o): Remove dependency on $(RTL_H).
|
|
|
|
|
(go/unsafe.o): Depend on $(GO_C_H).
|
|
|
|
|
|
2010-12-31 13:24:12 +01:00
|
|
|
|
2010-12-31 Joern Rennecke <amylaar@spamcop.net>
|
|
|
|
|
|
|
|
|
|
PR go/47113
|
|
|
|
|
* go-backend.c: (go_field_alignment): Add ATTRIBUTE_UNUSED to
|
|
|
|
|
variable ‘field’ .
|
|
|
|
|
|
2010-12-21 23:45:54 +01:00
|
|
|
|
2010-12-21 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* Make-lang.in (check-go): Remove.
|
|
|
|
|
(lang_checks_parallelized): Add check-go.
|
|
|
|
|
(check_go_parallelize): Set.
|
|
|
|
|
|
2010-12-14 00:11:53 +01:00
|
|
|
|
2010-12-13 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* gospec.c (lang_specific_driver): Add a -o option if not linking
|
|
|
|
|
and there is no -o option already.
|
|
|
|
|
|
2010-12-07 20:28:44 +01:00
|
|
|
|
2010-12-07 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR tree-optimization/46805
|
|
|
|
|
PR tree-optimization/46833
|
|
|
|
|
* go-lang.c (go_langhook_type_for_mode): Handle vector modes.
|
|
|
|
|
|
2010-12-07 15:18:35 +01:00
|
|
|
|
2010-12-06 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR other/46789
|
|
|
|
|
PR bootstrap/46812
|
|
|
|
|
* go-lang.c (go_char_p): Define type and vectors.
|
|
|
|
|
(go_search_dirs): New static variable.
|
|
|
|
|
(go_langhook_handle_option): Use version and version/machine
|
|
|
|
|
directories for -L.
|
|
|
|
|
(go_langhook_post_options): Add non-specific -L paths.
|
|
|
|
|
* Make-lang.in (go/go-lang.o): Define DEFAULT_TARGET_VERSION and
|
|
|
|
|
DEFAULT_TARGET_MACHINE when compiling.
|
|
|
|
|
* gccgo.texi (Invoking gccgo): Only document -L for linking.
|
|
|
|
|
(Import and Export): Don't mention -L for finding import files.
|
|
|
|
|
|
2010-12-04 02:47:21 +01:00
|
|
|
|
2010-12-03 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
PR bootstrap/46776
|
|
|
|
|
* go-backend.c: New file.
|
|
|
|
|
* go-c.h (go_type_alignment): Declare.
|
|
|
|
|
(go_field_alignment, go_trampoline_info): Declare.
|
|
|
|
|
* Make-lang.in (GO_OBJS): Add go/go-backend.o.
|
|
|
|
|
(go/go-backend.o): New target.
|
|
|
|
|
(go/go-lang.o): Make dependencies match source file.
|
|
|
|
|
(go/expressions.o): Don't depend on $(TM_H) $(TM_P_H).
|
|
|
|
|
(go/gogo-tree.o): Don't depend on $(TM_H).
|
|
|
|
|
|
2010-12-03 16:48:19 +01:00
|
|
|
|
2010-12-03 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
* config-lang.in (build_by_default): Set to no.
|
|
|
|
|
|
|
|
|
|
2010-12-02 Ian Lance Taylor <iant@google.com>
|
|
|
|
|
|
|
|
|
|
Go frontend added to gcc repository.
|