Nicola Pero [Mon, 6 Dec 2010 00:56:06 +0000 (00:56 +0000)]
In gcc/: 2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
* c-family/c-common.h: Removed the declarations of all the objc_
callbacks, and moved them into c-objc.h. Removed
objc_ivar_visibility_kind and moved it into c-objc.h.
* c-family/c-objc.h: New file.
* c-family/c-common.c: Include c-objc.h.
* c-family/c-format.c: Same change.
* c-family/stub-objc.c: Same change.
* c-decl.c: Include c-family/c-objc.h.
* c-parser.c: Same change.
* c-typeck.c: Same change.
* c-config-lang.in (gtfiles): Added c-family/c-objc.h.
* Makefile.in (c-decl.o): Depend on c-family/c-objc.h.
(c-parser.o): same change.
(c-typeck.o): Same change.
(c-family/c-format.o): Same change.
(c-family/stub-objc.o): Same change.
(c-family/c-common.o): Same change.
(PLUGIN_HEADERS): Added c-family/c-objc.h.
In gcc/cp/:
2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
* call.c: Include c-family/c-objc.h.
* decl.c: Same change.
* decl2.c: Same change.
* error.c: Same change.
* lex.c: Same change.
* parser.c: Same change.
* pt.c: Same change.
* semantics.c: Same change.
* typeck.c: Same change.
* Make-lang.in (cp/decl.o): Depend on c-family/c-objc.h.
(cp/decl2.o): Same change.
(cp/call.o): Same change.
(cp/error.o): Same change.
(cp/lex.o): Same change.
(cp/parser.o): Same change.
(cp/pt.o): Same change.
(cp/semantics.o): Same change.
(cp/typeck.o): Same change.
* config-lang.in (gtfiles): Added c-family/c-objc.h.
In gcc/objc/:
2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c: Include c-family/c-objc.h.
* objc-lang.c: Same change.
* Make-lang.in (objc/objc-act.o): Depend on
c-family/c-objc.h.
(objc/objc-lang.o): Same change.
* config-lang.in (gtfiles): Added c-family/c-objc.h.
In gcc/objcp/:
2010-12-06 Nicola Pero <nicola.pero@meta-innovation.com>
* config-lang.in (gtfiles): Added c-family/c-objc.h.
* Make-lang.in (objcp/objcp-act.o): Depend on
c-family/c-objc.h.
(objcp/objcp-lang.o): Same change.
(objcp/objcp-decl.o): Same change.
* objcp-lang.c: Include c-family/c-objc.h.
* objcp-decl.c: Same change.
Jan Hubicka [Sun, 5 Dec 2010 00:21:12 +0000 (01:21 +0100)]
ipa.c (cgraph_externally_visible_p): Do not localize builtins and functions with user asm defined names.
* ipa.c (cgraph_externally_visible_p): Do not localize builtins
and functions with user asm defined names.
(varpool_externally_visible_p): Do not localize vars with user
asm defined names.
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
Thomas Koenig [Fri, 3 Dec 2010 10:35:12 +0000 (10:35 +0000)]
re PR fortran/45159 (Unnecessary temporaries)
2010-12-02 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* dependency.c (check_section_vs_section): Pre-calculate
the relationship between the strides and the relationship
between the start values. Use an integer constant one for
that purpose.
Forward dependencies for positive strides apply for where
the lhs start <= rhs start and lhs stride <= rhs stride
and vice versa for negative stride. No need to compare
end expressions in either case (assume no bounds violation).
2010-12-02 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/45159
* gfortran.dg/dependency_38.f90: New test.
gcc/:
* gcc.c (default_compilers): Add entry for ".go".
* common.opt: Add -static-libgo as a driver option.
* doc/install.texi (Configuration): Mention libgo as an option for
--enable-shared. Mention go as an option for --enable-languages.
* doc/invoke.texi (Overall Options): Mention .go as a file name
suffix. Mention go as a -x option.
* doc/frontends.texi (G++ and GCC): Mention Go as a supported
language.
* doc/sourcebuild.texi (Top Level): Mention libgo.
* doc/standards.texi (Standards): Add section on Go language.
Move references for other languages into their own section.
* doc/contrib.texi (Contributors): Mention that I contributed the
Go frontend.
gcc/testsuite/:
* lib/go.exp: New file.
* lib/go-dg.exp: New file.
* lib/go-torture.exp: New file.
* lib/target-supports.exp (check_compile): Match // Go.
Eric Botcazou [Thu, 2 Dec 2010 22:33:16 +0000 (22:33 +0000)]
re PR target/46685 (New stack alignment failures with -fpic)
PR target/46685
* config/sparc/sparc.c (can_use_mov_pic_label_ref): New predicate.
(sparc_expand_move): Call it to decide whether to emit the special
mov{si,di}_pic_label_ref patterns.
(sparc_legitimize_pic_address): Call it to decide whether to emit
the regular PIC sequence for labels. Fix long line.
(sparc_file_end): Set is_thunk for the PIC helper.
Paul Koning [Thu, 2 Dec 2010 19:10:41 +0000 (14:10 -0500)]
pdp11.c (output_jump): Map unsigned to signed opcodes if CC_NO_OVERFLOW is set.
* config/pdp11/pdp11.c (output_jump): Map unsigned to signed
opcodes if CC_NO_OVERFLOW is set.
(notice_update_cc_on_set): Correct setting of CC0 as a side
effect; set CC_NO_OVERFLOW for cases where C flag is not
meaningful.
configure.ac: Always set default for poststage1_ldflags to -static-libstdc++ -static-libgcc.
./: * configure.ac: Always set default for poststage1_ldflags to
-static-libstdc++ -static-libgcc.
gcc/:
* doc/install.texi (Configuration): Update default for
--with-boot-ldflags.
re PR tree-optimization/46723 (internal compiler error: in get_initial_def_for_induction, at tree-vect-loop.c:2431)
2010-12-02 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46723
* tree-vect-loop.c (get_initial_def_for_induction): Strip
conversions from the induction evolution and apply it to
the result instead.
* tree-vect-stmts.c (vect_get_vec_def_for_operand): Handle
assigns for induction defs.
Bernd Schmidt [Thu, 2 Dec 2010 15:48:36 +0000 (15:48 +0000)]
DFA model for Core 2 and Core i7 scheduling.
* config/i386/core2.md: New DFA model for Core 2 and Core i7.
* config/i386/i386.c (ix86_option_override_internal): Update entries
for Core 2 and Core i7.
(ix86_issue_rate): Set issue rate to 3 [be realistic].
* config/i386/i386.md: Include "core2.md".
(define_attr cpu): Add "corei7".
Jakub Jelinek [Thu, 2 Dec 2010 14:31:27 +0000 (15:31 +0100)]
re PR libgomp/43706 (scheduling two threads on one core leads to starvation)
PR libgomp/43706
* env.c (initialize_env): Default to spin count 300000
instead of 20000000 if neither OMP_WAIT_POLICY nor GOMP_SPINCOUNT
is specified.
Kai Tietz [Thu, 2 Dec 2010 13:15:10 +0000 (13:15 +0000)]
re PR libstdc++/43738 (basic_file_stdio.cc uses ioctl on a fd, but not available on mingw32)
2010-12-02 Kai Tietz <kai.tietz@onevision.com>
PR libstdc++/43738
* config/io/basic_file_stdio.cc (showmanyc): Check _GLIBCXX_NO_IOCTL
before use of ioctl.
* config/os/mingw32/os_defines.h (_GLIBCXX_NO_IOCTL): New.
re PR c++/44871 (Invalid type mismatches while merging C and C++ sources)
2010-12-02 Richard Guenther <rguenther@suse.de>
PR lto/44871
* gimple.c (canonical_type_hash_cache): New hashtable.
(gimple_type_hash): Make a wrapper around ...
(gimple_type_hash_1): ... this. Take gtc_mode argument.
(gimple_canonical_type_hash): Likewise.
(gtc_visit): Take a gtc_mode argument.
(gimple_types_compatible_p_1): Likewise. Do not compare struct
tag names or field names when computing canonical types.
(gimple_types_compatible_p): Adjust.
(visit): Take a gtc_mode argument.
(iterative_hash_gimple_type): Likewise. Do not hash struct tag
names or field names when computing hashes of canonical types.
(gimple_register_canonical_type): Use gimple_canonical_type_hash
for the hash.
(print_gimple_types_stats): Dump stats of canonical_type_hash_cache.
(free_gimple_type_tables): Free canonical_type_hash_cache.
* g++.dg/lto/20101126-1_0.C: New testcase.
* g++.dg/lto/20101126-1_1.c: Likewise.
François Dumont [Wed, 1 Dec 2010 20:51:38 +0000 (21:51 +0100)]
2.cc: Fix to explicitely invoke the copy construtor with or without C++0x mode.
2010-12-01 François Dumont <francois.cppdevs@free.fr>
* testsuite/23_containers/deque/cons/2.cc: Fix to explicitely invoke
the copy construtor with or without C++0x mode.
* testsuite/23_containers/vector/cons/4.cc: Likewise.
Sebastian Pop [Wed, 1 Dec 2010 17:25:10 +0000 (17:25 +0000)]
Postpone the rewrite out of SSA to the end of the translation to polyhedral representation.
2010-11-22 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/45297
* graphite-poly.c (new_poly_bb): Returns a poly_bb_p. Do not take
the reduction bool in parameter. Clear PBB_IS_REDUCTION. Set GBB_PBB.
* graphite-poly.h (new_poly_bb): Update declaration.
(gbb_from_bb): Moved here...
(pbb_from_bb): New.
* graphite-sese-to-poly.c (var_used_in_not_loop_header_phi_node):
Removed.
(graphite_stmt_p): Removed.
(try_generate_gimple_bb): Returns a gimple_bb_p. Do not pass in
sbitmap reductions. Always build a gimple_bb_p. Do not call
new_poly_bb.
(build_scop_bbs_1): Do not pass in sbitmap reductions.
(build_scop_bbs): Same.
(gbb_from_bb): ... from here.
(add_conditions_to_constraints): Moved up.
(analyze_drs): New.
(build_scop_drs): Call analyze_drs. Remove all the PBBs that do
not contain data references.
(new_pbb_from_pbb): New.
(insert_out_of_ssa_copy_on_edge): Call new_pbb_from_pbb after a
block is split.
(rewrite_close_phi_out_of_ssa): Update call to
insert_out_of_ssa_copy_on_edge.
(rewrite_reductions_out_of_ssa): Now static.
(rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
(split_pbb): New.
(split_reduction_stmt): Call split_pbb.
(translate_scalar_reduction_to_array): Pass in the scop, do not
pass in the sbitmap reductions.
(rewrite_commutative_reductions_out_of_ssa_close_phi): Same.
(rewrite_commutative_reductions_out_of_ssa_loop): Same.
(rewrite_commutative_reductions_out_of_ssa): Same.
(build_poly_scop): Call build_scop_bbs,
rewrite_commutative_reductions_out_of_ssa,
rewrite_reductions_out_of_ssa, and
rewrite_cross_bb_scalar_deps_out_of_ssa. Move build_scop_drs
before scop_to_lst.
* graphite-sese-to-poly.h (rewrite_commutative_reductions_out_of_ssa):
Removed declaration.
(rewrite_reductions_out_of_ssa): Same.
(rewrite_cross_bb_scalar_deps_out_of_ssa): Same.
(build_scop_bbs): Same.
* graphite.c (graphite_transform_loops): Do not initialize reductions.
Do not call build_scop_bbs,
rewrite_commutative_reductions_out_of_ssa,
rewrite_reductions_out_of_ssa, and
rewrite_cross_bb_scalar_deps_out_of_ssa.
* sese.h (struct gimple_bb): Add field pbb.
(GBB_PBB): New.
Sebastian Pop [Wed, 1 Dec 2010 17:24:57 +0000 (17:24 +0000)]
Do not rewrite out of SSA scalar dependences crossing the limits of the scop.
2010-11-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (handle_scalar_deps_crossing_scop_limits):
New.
(rewrite_cross_bb_scalar_deps): Pass in the scop. Call
handle_scalar_deps_crossing_scop_limits.
(rewrite_cross_bb_scalar_deps_out_of_ssa): Create an empty BB
after the scop. Update call to rewrite_cross_bb_scalar_deps.
Joseph Myers [Wed, 1 Dec 2010 13:58:52 +0000 (13:58 +0000)]
common.opt (flag_stack_check): New Variable entry.
* common.opt (flag_stack_check): New Variable entry.
(fcompare-debug-second): Use Var.
* flags.h (flag_compare_debug, flag_stack_check): Remove.
* opts.c (flag_compare_debug): Remove.
(common_handle_option): Don't handle OPT_fcompare_debug_second.
Set opts->x_flag_stack_check for OPT_fstack_check_.
* toplev.c (flag_stack_check): Remove.
ada:
* gcc-interface/misc.c (flag_compare_debug, flag_stack_check):
Undefine as macros then define as variables.
(gnat_post_options): Set variables from global_options.