Steven Bosscher [Fri, 28 May 2010 23:47:05 +0000 (23:47 +0000)]
c-lex.c: Do not include c-tree.h.
* c-lex.c: Do not include c-tree.h.
* c-pretty-print.c: Likewise.
* c-opts.c: Likewise.
* c-gimplify.c: Likewise.
* c-common.c: Likewise.
* c-dump.c: Likewise. Include c-common.h.
From-SVN: r160008
Steven Bosscher [Fri, 28 May 2010 23:15:55 +0000 (23:15 +0000)]
c-common.h (GCC_DIAG_STYLE): Define earlier in the file, before including diagnostic-core.h.
gcc/ChangeLog:
* c-common.h (GCC_DIAG_STYLE): Define earlier in the file,
before including diagnostic-core.h.
(c_cpp_error): New prototype moved from c-tree.h.
Use ATTRIBUTE_GCC_DIAG instead of ATTRIBUTE_GCC_CDIAG.
* c-tree.h (ATTRIBUTE_GCC_CDIAG): Remove define.
(pedwarn_c90, perwarn_c99): Use ATTRIBUTE_GCC_DIAG instead.
(c_cpp_error): Prototype moved to c-common.h.
* Makefile.in: Update dependency for C_COMMON_H.
cp/ChangeLog:
* cp-tree.h (ATTRIBUTE_GCC_CXXDIAG): Remove. Require that
this file is included before c-common.h. Define GCC_DIAG_STYLE
before including diagnostic-core.h and toplev.h.
(pedwarn_cxx98): Use ATTRIBUTE_GCC_DIAG.
* pt.c: Include cp-tree.h before c-common.h.
From-SVN: r160007
Steven Bosscher [Fri, 28 May 2010 23:13:18 +0000 (23:13 +0000)]
c-common.h: Add FIXME for awkward split of c_register_addr_space.
gcc/ChangeLog:
* c-common.h: Add FIXME for awkward split of c_register_addr_space.
* c-common.c (c_register_addr_space): Remove here.
* c-decl.c (c_register_addr_space): Re-add here.
cp/ChangeLog:
* tree.c (c_register_addr_space): Add stub.
From-SVN: r160006
Mike Stump [Fri, 28 May 2010 22:55:02 +0000 (22:55 +0000)]
* config/darwin-c.c: Remove c-tree.h include.
From-SVN: r160005
Joseph Myers [Fri, 28 May 2010 22:48:36 +0000 (23:48 +0100)]
gcc.c: Include diagnostic.h.
* gcc.c: Include diagnostic.h.
(error_count): Remove. All users changed to use errorcount.
(programname): Remove. All users changed to use progname.
(fancy_abort, internal_error, fatal_error, error, warning, inform,
fnotice): Remove.
(execute): Don't include "Internal error" and bug reporting
information in argument of internal_error call.
(process_command): Don't increment error_count after calling
perror_with_name.
(input_filename): Rename to gcc_input_filename. All users
changed.
(main): Call diagnostic_initialize. Register delete_temp_files
with atexit. Use seen_error to test for errors.
* gcc.h: Include diagnostic-core.h.
(fatal_error, error, warning): Remove.
* Makefile.in (GCC_H): Add $(DIAGNOSTIC_CORE_H).
(GCC_OBJS): Add diagnostic.o, pretty-print.o and input.o.
(gcc.o): Update dependencies.
From-SVN: r160004
Jeff Law [Fri, 28 May 2010 22:19:22 +0000 (16:19 -0600)]
ira.c (ira_bad_reload_regno, [...]): New functions.
* ira.c (ira_bad_reload_regno, ira_build_reload_regno_1): New functions.
* ira.h (ira_bad_reload_regno): Declare
* reload1.c (allocate_reload_reg): Use ira_bad_reload_regno.
From-SVN: r160001
Jeff Law [Fri, 28 May 2010 22:06:40 +0000 (16:06 -0600)]
ira-color.c (update_curr_costs): Free updated hard reg costs.
* ira-color.c (update_curr_costs): Free updated hard reg costs.
(ira_reassign_conflict_allocnos): Remove bogus asserts.
(allocno_reload_assign): Likewise.
From-SVN: r160000
Ian Lance Taylor [Fri, 28 May 2010 21:48:47 +0000 (21:48 +0000)]
Fix erroneous duplication.
From-SVN: r159999
Paolo Carlini [Fri, 28 May 2010 21:47:07 +0000 (21:47 +0000)]
stl_vector.h (vector<>::data): Fix return type in c++0x mode.
2010-05-28 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_vector.h (vector<>::data): Fix return type
in c++0x mode.
* testsuite/23_containers/vector/requirements/dr438/
assign_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Likewise.
From-SVN: r159998
Tobias Burnus [Fri, 28 May 2010 21:11:42 +0000 (23:11 +0200)]
options.c (gfc_handle_option): Fix handling of -fno-whole-file.
2010-05-28 Tobias Burnus <burnus@net-b.de>
* options.c (gfc_handle_option): Fix handling of
-fno-whole-file.
From-SVN: r159997
Nathan Froyd [Fri, 28 May 2010 19:49:22 +0000 (19:49 +0000)]
tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of build1_stat.
* tree-vect-stmts.c (vectorizable_assignment): Call build1 instead of
build1_stat.
From-SVN: r159995
Richard Guenther [Fri, 28 May 2010 18:49:51 +0000 (18:49 +0000)]
re PR lto/44312 (lto-streamer-in.c: In function ‘lto_read_tree’: warning: ‘fv.mode’ is used uninitialized in this function)
2010-05-28 Richard Guenther <rguenther@suse.de>
PR lto/44312
* lto-streamer-in.c (unpack_ts_fixed_cst_value_fields):
Stream fixed-point constants mode.
(unpack_ts_type_value_fields): Fix width of TYPE_MODE
and TYPE_PRECISION.
* lto-streamer-out.c (pack_ts_fixed_cst_value_fields):
Stream fixed-point constants mode.
(pack_ts_function_decl_value_fields): Fix width of TYPE_MODE
and TYPE_PRECISION.
From-SVN: r159993
Sebastian Pop [Fri, 28 May 2010 18:42:15 +0000 (18:42 +0000)]
When niter may be zero, return a COND_EXPR with the may_be_zero condition.
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
* tree-scalar-evolution.c (set_nb_iterations_in_loop): Inlined in the
only place it was called from.
(number_of_latch_executions): Do not return chrec_dont_know when the
may_be_zero is a runtime condition: instead, return a COND_EXPR
including the may_be_zero condition.
* cfgloop.h (struct loop): Add a note on COND_EXPRs to the comment
of nb_iterations.
* tree-ssa-loop-ivopts.c (contains_abnormal_ssa_name_p): Handle
COND_EXPRs.
* gcc.dg/vect/vect-outer-fir-lb.c: Un-XFAIL-ed.
From-SVN: r159992
Sebastian Pop [Fri, 28 May 2010 18:42:06 +0000 (18:42 +0000)]
Don't generate COND_EXPRs for degenerate_phi_result.
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (replace_phi_with_cond_gimple_assign_stmt): Don't
generate COND_EXPRs for degenerate_phi_result.
From-SVN: r159991
Sebastian Pop [Fri, 28 May 2010 18:38:06 +0000 (18:38 +0000)]
Check the if-convertibility of phi nodes in non predicated BBs.
2010-05-28 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/44293
* tree-if-conv.c (if_convertible_loop_p): Check the
if-convertibility of phi nodes in non predicated BBs.
From-SVN: r159990
Mike Stump [Fri, 28 May 2010 18:33:45 +0000 (18:33 +0000)]
re PR objc/44125 (const-str-9 fails.)
PR objc/44125
* objc.dg/const-str-9.m: Remove static.
From-SVN: r159989
Mike Stump [Fri, 28 May 2010 17:53:56 +0000 (17:53 +0000)]
* objc.dg/stret-2.m: Fix to use more than 4 bytes.
From-SVN: r159988
Joseph Myers [Fri, 28 May 2010 17:34:11 +0000 (18:34 +0100)]
* gcc.c (error, warning, inform): Remove duplicate ": " in output.
From-SVN: r159987
Joseph Myers [Fri, 28 May 2010 17:28:57 +0000 (18:28 +0100)]
re PR driver/15303 (When gcc sees an unrecognized option, the exit status indicates success)
PR driver/15303
* gcc.c (inform, warning, inform): New functions.
(fatal_ice): Rename to internal_error; change cmsgid parameter to
gmsgid. All callers changed.
(notice): Rename to fnotice; add parameter fp. All callers
changed.
(fatal_error): Rename to fatal_signal. All users changed.
(fatal): Rename to fatal_error; change cmsgid parameter to
gmsgid. All callers changed.
(process_command): Use warning instead of error for warnings.
(end_going_arg): Don't use _() around argument of error.
(do_spec_1): Use inform for message from %n specs. Use warning
instead of error for warnings.
(main): Use inform for comparison messages. Use warning for
message about unused linker input.
(error): Increment error_count. Print "error: ".
* gcc.h (fatal): Change to fatal_error.
(warning): Declare.
* config/darwin-driver.c (darwin_default_min_version): Use warning
instead of fprintf for warnings.
* cppspec.c (lang_specific_driver): Use fatal_error instead of
fatal.
cp:
* g++spec.c (lang_specific_driver): Use fatal_error instead of
fatal.
fortran:
* gfortranspec.c (append_arg, lang_specific_driver): Use
fatal_error instead of fatal. Use warning instead of fprintf for
warnings.
java:
* jvspec.c (lang_specific_driver): Use fatal_error instead of
fatal. Use warning instead of error for warnings.
From-SVN: r159986
Nathan Froyd [Fri, 28 May 2010 17:11:15 +0000 (17:11 +0000)]
* expr.c (get_symbol_table_index): Add spaces in expression.
From-SVN: r159984
Julian Brown [Fri, 28 May 2010 16:07:33 +0000 (16:07 +0000)]
thumb2.md (*thumb2_addsi3_compare0): New.
gcc/
* config/arm/thumb2.md (*thumb2_addsi3_compare0): New.
(*thumb2_addsi3_compare0_scratch): New.
* config/arm/constraints.md (Pv): New.
* config/arm/arm.md (*addsi3_compare0): Remove FIXME comment. Use
for ARM mode only.
(*addsi3_compare0_scratch): Likewise.
From-SVN: r159983
Jan Hubicka [Fri, 28 May 2010 15:56:16 +0000 (17:56 +0200)]
ipa-reference.c (add_static_var): Remove redundant all_module_statics check.
* ipa-reference.c (add_static_var): Remove redundant all_module_statics check.
(ipa_reference_write_optimization_summary): Call is_proper_for_analysis only
on local statics.
From-SVN: r159982
Iain Sandoe [Fri, 28 May 2010 15:11:08 +0000 (15:11 +0000)]
config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
2010-05-28 Iain Sandoe <iains@gcc.gnu.org>
* config.gcc (*-*-darwin*): Adjust t-make fragments for Darwin.
From-SVN: r159979
Maxim Kuvyrkov [Fri, 28 May 2010 15:03:23 +0000 (15:03 +0000)]
re PR bootstrap/44314 (Powerpc64-unknown-linux-gnu bootstrap broken)
PR bootstrap/44314
* config/alpha/linux.h, config/rs6000/linux.h, config/rs6000/linux64.h
(OPTION_GLIBC): Define.
From-SVN: r159978
Jakub Jelinek [Fri, 28 May 2010 13:46:46 +0000 (15:46 +0200)]
re PR debug/41048 (bad DW_AT_data_member_location from g++)
PR debug/41048
* dwarf2out.c (double_int_type_size_in_bits): New function.
(round_up_to_align): Change first argument and return value to
double_int.
(field_byte_offset): Work internally on double_ints.
From-SVN: r159975
Nathan Froyd [Fri, 28 May 2010 13:41:55 +0000 (13:41 +0000)]
java-tree.h (method_entry): Declare.
* java-tree.h (method_entry): Declare. Declare VECs containing it.
(struct lang_type): Change type of otable_methods, atable_methods, and
itable_methods to VECs. Fix comment for atable_methods.
(emit_symbol_table): Take a VEC instead of a tree.
(get_symbol_table_index): Take a VEC * instead of a tree *.
* class.c (add_table_and_syms): Take a VEC instead of a tree.
(emit_symbol_table): Update for changed parameter type.
* expr.c (get_symbol_table_index): Likewise.
From-SVN: r159974
Jakub Jelinek [Fri, 28 May 2010 13:35:56 +0000 (15:35 +0200)]
re PR target/43636 (ICE in extract_insn, at recog.c:2103)
PR target/43636
* builtins.c (expand_movstr): Use a temporary pseudo instead
of target even when target is not NULL and not const0_rtx, but
fails movstr predicate.
* config/m32c/blkmov.md (movstr): Add predicate to first operand.
* gcc.c-torture/compile/pr43636.c: New test.
From-SVN: r159972
Iain Sandoe [Fri, 28 May 2010 13:16:44 +0000 (13:16 +0000)]
re PR objc++/23616 (obj-c++.dg/try-catch-[29].mm (objc exceptions are broken) fails with the GNU Runtime)
PR ObjC++/23616
* obj-c++.dg/try-catch-2.mm: Adjust xfail.
* obj-c++.dg/try-catch-9.mm: Ditto.
From-SVN: r159971
Joseph Myers [Fri, 28 May 2010 13:03:31 +0000 (14:03 +0100)]
final.c (rest_of_clean_state): Use %m in errors instead of strerror (errno).
* final.c (rest_of_clean_state): Use %m in errors instead of
strerror (errno).
* gengtype.c (read_input_list, close_output_files): Use xstrerror
instead of strerror.
* toplev.c (process_options): Use %m in errors instead of strerror
(errno).
* tree-dump.c (dump_begin): Use %m in errors instead of strerror
(errno).
fortran:
* cpp.c (gfc_cpp_init_0): Use xstrerror instead of strerror.
* module.c (write_char, gfc_dump_module, gfc_use_module): Use
xstrerror instead of strerror.
lto:
* lto-coff.c (coff_errmsg): Remove.
(lto_coff_begin_section_with_type, lto_obj_append_data): Use %m in
errors instead of coff_errmsg (-1).
* lto-macho.c (mach_o_errmsg): Remove.
(lto_obj_begin_section, lto_obj_append_data): Use %m in errors
instead of mach_o_errmsg (-1).
* lto.c (read_cgraph_and_symbols): Use %m in errors instead of
xstrerror (errno).
From-SVN: r159969
Uros Bizjak [Fri, 28 May 2010 12:59:32 +0000 (14:59 +0200)]
i386.c (ix86_fn_abi_va_list): Make static.
* config/i386/i386.c (ix86_fn_abi_va_list): Make static.
(ix86_canonical_va_list_type): Make static. Add declaration.
(ix86_enum_va_list): Make static. Reindent.
* config/i386/i386-protos.h (ix86_fn_abi_va_list): Remove declaration.
(ix86_canonical_va_list_type): Ditto.
(ix86_enum_va_list): Ditto.
From-SVN: r159968
Richard Guenther [Fri, 28 May 2010 12:48:54 +0000 (12:48 +0000)]
lto-wrapper.c (run_gcc): With -save-temps generate a user-visible ltrans filename.
2010-05-28 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (run_gcc): With -save-temps generate a
user-visible ltrans filename. Fixup ltrans unit numbering.
lto/
* lto.c (prefix_name_with_star): Removed.
(strip_extension): Likewise.
(get_filename_for_set): Likewise.
(lto_write_ltrans_list): Fold into ...
(lto_wpa_write_files): ... this. Name LTRANS units
by suffixing the ltrans output list filename.
(do_whole_program_analysis): Adjust.
From-SVN: r159967
Kai Tietz [Fri, 28 May 2010 11:58:35 +0000 (11:58 +0000)]
c-common.c (c_common_nodes_and_builtins): Replace use of TARGET_ENUM_VA_LIST by target hook enum_va_list.
2010-05-28 Kai Tietz <kai.tietz@onevision.com>
* c-common.c (c_common_nodes_and_builtins): Replace use
of TARGET_ENUM_VA_LIST by target hook enum_va_list.
* config/i386/i386.c (TARGET_ENUM_VA_LIST_P): Hook
to ix86_enum_va_list.
* config/i386/i386.h (TARGET_ENUM_VA_LIST): Removed.
* doc/tm.texi (TARGET_ENUM_VA_LIST): Removed.
(TARGET_ENUM_VA_LIST_P): Add hook description.
* target-def.h (TARGET_ENUM_VA_LIST_P): Added.
* target.h (gcc_target): Add enum_va_list hook.
From-SVN: r159966
Kai Tietz [Fri, 28 May 2010 11:19:41 +0000 (11:19 +0000)]
re PR bootstrap/44299 (Bootstrap broken for cygwin and mingw targets)
2010-05-28 Kai Tietz <kai.tietz@onevision.com>
PR bootstrap/44299
* config/i386/t-cygming: Adjust header dependencies for winnt-cxx.c.
* config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Remove undefine.
* config/i386/winnt.c (IN_GCC_FRONTEND): Likewise.
From-SVN: r159965
Alan Modra [Fri, 28 May 2010 08:57:16 +0000 (18:27 +0930)]
re PR target/44266 (stack frame lacks parameter save area)
PR target/44266
* config/rs6000/rs6000.c (rs6000_legitimize_tls_address): Use
emit_library_call machinery to set up __tls_get_addr calls.
From-SVN: r159963
Andreas Krebbel [Fri, 28 May 2010 07:39:10 +0000 (07:39 +0000)]
s390.md (movqi): Fix typo ('*' -> '#').
2010-05-28 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md (movqi): Fix typo ('*' -> '#').
From-SVN: r159960
GCC Administrator [Fri, 28 May 2010 00:17:21 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159959
Dodji Seketeli [Fri, 28 May 2010 00:03:19 +0000 (00:03 +0000)]
Revert "Fix PR c++/44188"
gcc/ChangeLog:
revert fix for PR c++/44188
* c-common.c (is_typedef_decl): Revert the moving of this
definition ...
* tree.c (is_typedef_decl): ... here.
(typdef_variant_p): Revert the moving of this definition
here from gcc/cp/tree.c.
* c-common.h (is_typedef_decl): Revert the moving of this
declaration ...
* tree.h (is_typedef_decl): ... here.
(typedef_variant_p): Revert the moving of this declaration here
from gcc/cp/cp-tree.h
* dwarf2out.c (is_naming_typedef_decl): Revert this new function.
(gen_tagged_type_die): Revert the splitting out of ...
(gen_type_die_with_usage): ... this function. Revert the anonymous
tagged type handling.
(gen_typedef_die): Revert emitting DW_TAG_typedef for
typedefs naming anonymous tagged types.
gcc/cp/ChangeLog:
Revert fix of PR c++/44188
* cp-tree.h (typedef_variant_p): Revert moving this declaration to
gcc/tree.h.
* tree.c (typedef_variant_p): Revert moving this definition to
gcc/tree.c.
* decl.c (grokdeclarator): Revert naming typedef handling.
gcc/testsuite/ChangeLog:
Revert fix for PR c++/44188
* g++.dg/debug/dwarf2/typedef3.C: Revert new test.
From-SVN: r159955
Segher Boessenkool [Thu, 27 May 2010 23:14:05 +0000 (01:14 +0200)]
rs6000-modes.def (PSImode): Delete.
2010-05-26 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/rs6000-modes.def (PSImode): Delete.
From-SVN: r159954
Segher Boessenkool [Thu, 27 May 2010 23:06:31 +0000 (01:06 +0200)]
constraints.md ("z" constraint): Change to CA_REGS.
2010-05-28 Segher Boessenkool <segher@kernel.crashing.org>
* config/rs6000/constraints.md ("z" constraint): Change to CA_REGS.
* config/rs6000/predicates.md: Change XER_REGNO_P to CA_REGNO_P
throughout.
* config/rs6000/rs6000.c (rs6000_reg_names, alt_reg_names): Change
"xer" to "ca".
Change XER_REGNO_P to CA_REGNO_P, XER_REGNO to CA_REGNO, and
XER_REGS to CA_REGS throughout.
* config/rs6000/rs6000.h: Same.
(ADDITIONAL_REGISTER_NAMES): Add "xer".
* config/rs6000/rs6000.md: Change XER_REGNO to CA_REGNO. Document
that mode_iterator "P" is the size for arithmetic carries as well.
* doc/md.texi (rs6000 section, "z" constraint): Fix documentation.
From-SVN: r159953
Jakub Jelinek [Thu, 27 May 2010 22:08:41 +0000 (00:08 +0200)]
re PR bootstrap/44255 (gcc-4.6-
20100522 bootstrap comparison failure on sparc64 and arm)
PR bootstrap/44255
* combine.c (struct rtx_subst_pair): Define unconditionally.
(propagate_for_debug_subst): Likewise. If not AUTO_INC_DEC,
copy_rtx pair->to instead of cleanup_auto_inc_dec it.
Call make_compound_operation on pair->to.
(propagate_for_debug): Don't call make_compound_operation here.
Always use simplify_replace_fn_rtx.
From-SVN: r159952
Sterling Augustine [Thu, 27 May 2010 21:10:54 +0000 (21:10 +0000)]
invoke.texi (xtensa options): Add -mforce-no-pic.
2010-05-27 Sterling Augustine <sterling@tensilica.com>
* doc/invoke.texi (xtensa options): Add -mforce-no-pic.
* config/xtensa/xtensa.c (override_options): Check
TARGET_FORCE_NO_PIC and set flag_pic.
* config/xtensa/xtensa.opt: Document -mforce-no-pic
From-SVN: r159950
Kai Tietz [Thu, 27 May 2010 20:40:48 +0000 (20:40 +0000)]
re PR bootstrap/44299 (Bootstrap broken for cygwin and mingw targets)
2010-05-27 Kai Tietz <kai.tietz@onevision.com>
PR bootstrap/44299
* config/i386/winnt.c (IN_GCC_FRONTEND): Undefine.
* config/i386/winnt-cxx.c (IN_GCC_FRONTEND): Likewise.
From-SVN: r159949
Joseph Myers [Thu, 27 May 2010 20:16:07 +0000 (21:16 +0100)]
diagnostic-core.h: New.
* diagnostic-core.h: New. Contents moved from diagnostic.h and
toplev.h.
* diagnostic.c: Don't include toplev.h.
(progname): Define. Moved from toplev.c.
(seen_error): New function.
* diagnostic.h: Include diagnostic-core.h.
(diagnostic_t, emit_diagnostic): Don't declare here.
* toplev.c (progname): Move to toplev.c.
(emit_debug_global_declarations, compile_file, finalize,
do_compile, toplev_main): Use seen_error.
* toplev.h: Include diagnostic-core.h.
(trim_filename, GCC_DIAG_STYLE, ATTRIBUTE_GCC_DIAG,
internal_error, warning, warning_at, error, error_n, error_at,
fatal_error, pedwarn, permerror, sorry, inform, inform_n,
verbatim, fnotice, progname): Move to diagnostic-core.h.
* builtins.c: Include diagnostic-core.h instead of diagnostic.h.
(expand_builtin_expect): Use seen_error.
* c-decl.c: Include diagnostic-core.h instead of diagnostic.h.
(c_make_fname_decl, c_write_global_declarations): Use seen_error.
* c-format.c: Include diagnostic-core.h instead of diagnostic.h.
* c-gimplify.c: Include diagnostic-core.h instead of diagnostic.h.
* c-lang.c: Include diagnostic-core.h instead of diagnostic.h.
* c-lex.c (c_lex_with_flags, interpret_float): Don't increment
errorcount for errors.
* c-opts.c (c_common_finish): Use seen_error.
* cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
* cgraphunit.c (verify_cgraph_node, verify_cgraph,
cgraph_output_pending_asms, cgraph_optimize): Use seen_error.
* coverage.c: Include diagnostic-core.h instead of diagnostic.h.
(get_coverage_counts): Use seen_error.
* dwarf2out.c (dwarf2out_finish): Use seen_error.
* gimplify.c (gimplify_var_or_parm_decl, gimple_push_cleanup,
gimplify_body): Use seen_error.
* ipa-inline.c (cgraph_early_inlining): Use seen_error.
* ipa-pure-const.c (gate_pure_const): Use seen_error.
* ipa-reference.c (gate_reference): Use seen_error.
* jump.c: Include diagnostic-core.h instead of diagnostic.h.
* lambda-code.c: Include diagnostic-core.h instead of
diagnostic.h.
* lto-cgraph.c: Include diagnostic-core.h instead of diagnostic.h.
* lto-compress.c: Include diagnostic-core.h instead of
diagnostic.h.
* lto-section-in.c: Include diagnostic-core.h instead of
diagnostic.h.
* lto-streamer-out.c: Include diagnostic-core.h instead of
diagnostic.h.
* lto-streamer.c: Include diagnostic-core.h instead of
diagnostic.h.
(gate_lto_out): Use seen_error.
* matrix-reorg.c: Include diagnostic-core.h instead of
diagnostic.h.
* omega.c: Include diagnostic-core.h instead of diagnostic.h.
* omp-low.c: Include diagnostic-core.h instead of diagnostic.h.
(gate_expand_omp, lower_omp_1): Use seen_error.
* passes.c: Include diagnostic-core.h instead of diagnostic.h.
(rest_of_decl_compilation, rest_of_type_compilation,
gate_rest_of_compilation, ipa_write_summaries): Use seen_error.
* tree-cfg.c (label_to_block_fn): Use seen_error.
* tree-inline.c (optimize_inline_calls): Use seen_error.
* tree-mudflap.c (mudflap_finish_file): Use
seen_error.
* tree-optimize.c (gate_all_optimizations,
gate_all_early_local_passes, gate_all_early_optimizations): Use
seen_error.
* tree-ssa-structalias.c (gate_ipa_pta): Use seen_error.
* varpool.c: Include diagnostic-core.h instead of diagnostic.h.
(varpool_remove_unreferenced_decls,
varpool_assemble_pending_decls): Use seen_error.
* Makefile.in (DIAGNOSTIC_CORE_H): Define.
(TOPLEV_H, DIAGNOSTIC_H): Update.
(c-decl.o, c-lang.o, c-format.o, lto-compress.o, lto-cgraph.o,
lto-streamer-out.o, lto-section-in.o, lto-streamer.o,
c-gimplify.o, omp-low.o, omega.o, diagnostic.o, passes.o,
builtins.o, jump.o, cgraph.o, varpool.o, matrix-reorg.o,
coverage.o, lambda-code.o): Update dependencies.
cp:
* call.c: Include diagnostic-core.h instead of diagnostic.h.
* cp-lang.c: Don't include diagnostic.h
* name-lookup.c: Include diagnostic-core.h instead of
diagnostic.h.
(cp_emit_debug_info_for_using): Use seen_error.
* optimize.c: Include diagnostic-core.h instead of diagnostic.h.
* parser.c: Include diagnostic-core.h instead of diagnostic.h.
* pt.c (iterative_hash_template_arg): Use seen_error.
* repo.c: Include diagnostic-core.h instead of diagnostic.h.
* typeck2.c: Include diagnostic-core.h instead of diagnostic.h.
* Make-lang.in (cp/cp-lang.o, cp/typeck2.o, cp/call.o, cp/repo.o,
cp/optimize.o, cp/parser.o, cp/name-lookup.o): Update
dependencies.
lto:
* lto.c: Include diagnostic-core.h instead of diagnostic.h.
(read_cgraph_and_symbols, lto_main): Use seen_error.
* Make-lang.in (lto/lto.o): Update dependencies.
objc:
* objc-act.c: Include diagnostic-core.h instead of diagnostic.h.
* Make-lang.in (objc/objc-act.o): Update dependencies.
From-SVN: r159947
Dodji Seketeli [Thu, 27 May 2010 19:29:53 +0000 (19:29 +0000)]
re PR c++/44188 (Fails to produce DW_AT_typedef for typedef of anonymous struct)
Fix PR c++/44188
gcc/ChangeLog:
PR c++/44188
* c-common.c (is_typedef_decl): Move this definition ...
* tree.c (is_typedef_decl): ... here.
(typdef_variant_p): Move definition here from gcc/cp/tree.c.
* c-common.h (is_typedef_decl): Move this declaration ...
* tree.h (is_typedef_decl): ... here.
(typedef_variant_p): Move declaration here from gcc/cp/cp-tree.h
* dwarf2out.c (is_naming_typedef_decl): New function.
(gen_tagged_type_die): Split out of ...
(gen_type_die_with_usage): ... this function. When an anonymous
tagged type is named by a typedef, make sure a DW_TAG_typedef DIE
is emitted for the typedef.
(gen_typedef_die): Emit DW_TAG_typedef also for typedefs naming
anonymous tagged types.
gcc/cp/ChangeLog:
PR c++/44188
* cp-tree.h (typedef_variant_p): Move this declaration to
gcc/tree.h.
* tree.c (typedef_variant_p): Move this definition to gcc/tree.c.
* decl.c (grokdeclarator): Do not rename debug info of an
anonymous tagged type named by a typedef.
gcc/testsuite/ChangeLog:
PR c++/44188
* g++.dg/debug/dwarf2/typedef3.C: New test.
From-SVN: r159943
Jason Merrill [Thu, 27 May 2010 18:39:56 +0000 (14:39 -0400)]
print-tree.c (debug_vec_tree): New fn.
* print-tree.c (debug_vec_tree): New fn.
(print_vec_tree): New fn.
* tree.h: Declare them.
* gdbinit.in (ptv): New command.
* print-tree.c (print_node) [TREE_VEC]: Print elements normally.
* gdbinit.in (pdd): New command.
From-SVN: r159941
Jason Merrill [Thu, 27 May 2010 18:39:46 +0000 (14:39 -0400)]
revert: re PR libstdc++/42832 (Revisit std::function for aliasing issues and efficiency)
Revert:
PR libstdc++/42832
* include/std/functional (function<>::swap): Perform bytewise
swap of _M_functor.
* include/tr1/functional (function<>::swap): Likewise.
From-SVN: r159940
Jason Merrill [Thu, 27 May 2010 18:39:28 +0000 (14:39 -0400)]
re PR c++/43555 (wrong address calculation of multidimensional variable-length array element)
PR c++/43555
* decl.c (grokdeclarator) [cdk_pointer et al]: Force evaluation of
anonymous VLA size.
From-SVN: r159939
Paolo Carlini [Thu, 27 May 2010 17:37:11 +0000 (17:37 +0000)]
re PR libstdc++/40497 ([C++0x] troubles with std::next / std::prev declarations)
2010-05-27 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40497
* include/bits/cpp_type_traits.h (__is_iterator): Add.
* include/bits/stl_iterator_base_funcs.h (next, prev): Use it.
* testsuite/24_iterators/operations/40497.cc: New.
From-SVN: r159933
Jan Hubicka [Thu, 27 May 2010 17:07:21 +0000 (19:07 +0200)]
ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
* ipa-inline.c (cgraph_estimate_size_after_inlining): Make inline.
(update_caller_keys): Return early if there are no callers;
only update fibheap when decresing the key.
(update_callee_keys): Avoid recursion.
(decide_inlining_of_small_functions): When badness does not match;
re-insert into fibheap.
From-SVN: r159931
Iain Sandoe [Thu, 27 May 2010 16:28:13 +0000 (16:28 +0000)]
re PR objc/44140 (ObjC lto/whopr fails)
2010-05-27 Iain Sandoe <iains@gcc.gnu.org>
PR ObjC/44140
* objc.dg/torture/tls/thr-init-2.m: Skip for -flto, -fwhopr.
* objc.dg/torture/tls/thr-init-3.m: Ditto.
* objc.dg/torture/tls/thr-init.m: Ditto.
* objc.dg/torture/trivial.m: Ditto.
* obj-c++.dg/torture/tls/thr-init-1.mm: Ditto.
* obj-c++.dg/torture/tls/thr-init-2.mm: Ditto.
* obj-c++.dg/torture/tls/thr-init-3.mm: Ditto.
* obj-c++.dg/torture/trivial.mm: Ditto.
From-SVN: r159929
Jason Merrill [Thu, 27 May 2010 16:27:19 +0000 (12:27 -0400)]
changelog correction
From-SVN: r159928
Steven Bosscher [Thu, 27 May 2010 16:02:50 +0000 (16:02 +0000)]
Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
gcc/ChangeLog:
* Makefile.in (ALL_CFLAGS): Add file-specific CFLAGS.
(ALL_HOST_FRONTEND_OBJS): New, for all front-end specific objects.
(ALL_HOST_BACKEND_OBJS): New, for all backend and target objects.
(ALL_HOST_OBJS): Now a union of the above two.
<section "Language makefile fragments">: Add -DIN_GCC_FRONTEND for
all files in ALL_HOST_FRONTEND_OBJS.
* system.h: Poison GCC_RTL_H if IN_GCC_FRONTEND is defined.
* c-common.c: Pretend to be a backend file by undefining
IN_GCC_FRONTEND (still need rtl.h here).
ada/ChangeLog:
* gcc-interface/decl.c: Pretend to be a backend file by undefining
IN_GCC_FRONTEND (still need rtl.h here).
java/ChangeLog:
* buildings.c: Pretend to be a backend file by undefining
IN_GCC_FRONTEND (still need rtl.h here).
From-SVN: r159927
Jan Hubicka [Thu, 27 May 2010 15:43:25 +0000 (17:43 +0200)]
cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
* cgraph.h (struct cgraph_node): Mark former_clone_of by GTY ((skip)).
* cgraphunit.c (clone_of_p): Compile only when checking is enabled.
From-SVN: r159925
Jack Howarth [Thu, 27 May 2010 15:19:55 +0000 (15:19 +0000)]
20100302_0.C: Skip on darwin.
2010-05-27 Jack Howarth <howarth@bromo.med.uc.edu>
* g++.dg/lto/20100302_0.C: Skip on darwin.
From-SVN: r159924
Jan Hubicka [Thu, 27 May 2010 15:08:00 +0000 (15:08 +0000)]
sched-ebb.c: Rename struct deps to struct deps_desc.
* sched-ebb.c: Rename struct deps to struct deps_desc.
* ddg.c: Likewise.
* sel-sched-ir.c: Likewise.
* sched-deps.c: Likewise.
* sched-int.h: Likewise.
* sched-rgn.c: Likewise.
From-SVN: r159923
Jon Beniston [Thu, 27 May 2010 15:05:48 +0000 (15:05 +0000)]
PR 43726 * config/lm32/lm32.h: Remove definition of GO_IF_MODE_DEPENDENT_ADDRESS.
From-SVN: r159922
Eric Botcazou [Thu, 27 May 2010 14:11:35 +0000 (14:11 +0000)]
re PR lto/44230 (Do not create need for multiple EH personalities)
PR lto/44230
* dwarf2out.c (dwarf2out_begin_prologue): Fix nits in sorry message.
lto/
* lto.h (lto_eh_personality): New prototype.
* lto.c: Include debug.h.
(first_personality_decl): New static variable.
(lto_materialize_function): Set it to DECL_FUNCTION_PERSONALITY of the
first function for which it is non-null.
(lto_eh_personality_decl): New static variable.
(lto_eh_personality): New function.
* lto-lang.c (LANG_HOOKS_EH_PERSONALITY): Redefine to above function.
* Make-lang.in (lto/lto.o): Add dependency on debug.h.
From-SVN: r159921
Richard Guenther [Thu, 27 May 2010 13:23:45 +0000 (13:23 +0000)]
re PR tree-optimization/44284 (vectorization does not work for short variable)
2010-05-27 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44284
* tree-vect-stmts.c (vectorizable_assignment): Handle
sign-changing conversions as simple copy.
* gcc.dg/vect/vect-118.c: New testcase.
* gcc.dg/vect/bb-slp-20.c: Adjust.
* gcc.dg/vect/no-section-anchors-vect-36.c: Likewise.
* gcc.dg/vect/slp-9.c: Likewise.
* gcc.dg/vect/slp-reduc-4.c: Likewise.
* gcc.dg/vect/vect-10.c: Likewise.
* gcc.dg/vect/vect-109.c: Likewise.
* gcc.dg/vect/vect-12.c: Likewise.
* gcc.dg/vect/vect-36.c: Likewise.
* gcc.dg/vect/vect-7.c: Likewise.
* gcc.dg/vect/vect-iv-8.c: Likewise.
* gcc.dg/vect/vect-multitypes-10.c: Likewise.
* gcc.dg/vect/vect-multitypes-13.c: Likewise.
* gcc.dg/vect/vect-multitypes-14.c: Likewise.
* gcc.dg/vect/vect-multitypes-15.c: Likewise.
* gcc.dg/vect/vect-multitypes-7.c: Likewise.
* gcc.dg/vect/vect-multitypes-8.c: Likewise.
* gcc.dg/vect/vect-multitypes-9.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise.
* gcc.dg/vect/vect-strided-a-u32-mult.c: Likewise.
* gcc.dg/vect/vect-strided-u32-mult.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s8.c: Likewise.
* gcc.dg/vect/vect-widen-mult-sum.c: Likewise.
* gcc.dg/vect/vect-widen-mult-u16.c: Likewise.
From-SVN: r159920
Maxim Kuvyrkov [Thu, 27 May 2010 12:08:51 +0000 (12:08 +0000)]
gthr-posix.h (pthread_cancel): Don't declare if compiling against Bionic C library.
* gthr-posix.h (pthread_cancel): Don't declare if compiling against
Bionic C library.
(__gthread_active_p): Check for pthread_create if compiling against
Bionic C library.
From-SVN: r159919
Maxim Kuvyrkov [Thu, 27 May 2010 12:06:58 +0000 (12:06 +0000)]
Support compilation for Android platform. Reimplement -mandroid.
* config.gcc (*linux*): Include linux-android.h and linux-android.opt.
(*android*): Set ANDROID_DEFAULT.
(arm*-*-linux*): Include linux-android.h.
(arm*-*-eabi*): Don't include previous -mandroid implementation.
* config/arm/eabi.h: Remove, move Android-specific parts ...
* config/linux-android.h: ... here. New file.
* config/arm/eabi.opt: Rename to ...
* config/linux-android.opt: ... this.
(mandroid): Allow -mno-android option. Initialize based on
ANDROID_DEFAULT.
* config/linux.h (STARTFILE_SPEC, ENDFILE_SPEC, CC1_SPEC, LIB_SPEC):
Move logic to corresponding LINUX_TARGET_* macros.
(TARGET_OS_CPP_BUILTINS): Define __ANDROID__, when appropriate.
* config/linux-eabi.h (LINK_SPEC, CC1_SPEC, CC1PLUS_SPEC, LIB_SPEC,)
(STARTFILE_SPEC, ENDFILE_SPEC): Define to choose between Linux and
Android definitions.
(LINUX_TARGET_OS_CPP_BUILTINS): Define __ANDROID__ if TARGET_ANDROID.
* doc/invoke.texi (-mandroid, -tno-android-cc, -tno-android-ld):
Document.
From-SVN: r159918
Maxim Kuvyrkov [Thu, 27 May 2010 11:54:48 +0000 (11:54 +0000)]
Add support for Bionic C library
Add support for Bionic C library
gcc/
* config.gcc (LIBC_GLIBC, LIBC_BIONIC, LIBC_UCLIBC): New tm_define
macro.
(DEFAULT_LIBC): New tm_define macro set to one of LIBC_*.
(bfin*-uclinux, moxie-*-uclinux*, m68k-*-uclinux*): Update.
* config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC): Define.
(LINUX_TARGET_OS_CPP_BUILTINS): Define __gnu_linux__ only for GLIBC.
(CHOOSE_DYNAMIC_LINKER1, CHOOSE_DYNAMIC_LINKER): Make it easier
to support multiple C libraries. Handle Bionic.
(BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,)
(BIONIC_DYNAMIC_LINKER64): Define.
(LINUX_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64):
Update.
(TARGET_HAS_SINCOS): Enable for Bionic.
* config/linux.opt: Rewrite to handle more than 2 C libraries. Make
the last option specified on command line take effect.
(linux_uclibc): Rename to linux_libc, initialize using DEFAULT_LIBC.
(mbionic): New.
(mglibc, muclibc): Update.
* config/alpha/linux-elf.h, config/rs6000/linux64.h,
* config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Update to use
DEFAULT_LIBC.
* doc/invoke.texi (-mglibc, -muclibc): Update.
(-mbionic): Document.
gcc/testsuite/
* gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: Remove, no longer
necessary.
From-SVN: r159917
Ulrich Weigand [Thu, 27 May 2010 11:46:06 +0000 (11:46 +0000)]
c-common.h (c_register_addr_space): Add prototype.
* c-common.h (c_register_addr_space): Add prototype.
(ADDR_SPACE_KEYWORD): Remove.
* c-common.c (c_register_addr_space): New function.
(c_addr_space_name): Reimplement.
(c_common_reswords): Do not include TARGET_ADDR_SPACE_KEYWORDS.
* config/spu/spu.h (TARGET_ADDR_SPACE_KEYWORDS): Remove.
(REGISTER_TARGET_PRAGMAS): Call c_register_addr_space.
* doc/tm.texi (Named Address Spaces): Mention c_register_addr_space.
Remove TARGET_ADDR_SPACE_KEYWORDS.
From-SVN: r159916
Uros Bizjak [Thu, 27 May 2010 11:36:26 +0000 (13:36 +0200)]
ChangeLog: Fix whitespace.
* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.
From-SVN: r159915
Joseph Myers [Thu, 27 May 2010 11:33:27 +0000 (12:33 +0100)]
input.c: New file.
* input.c: New file.
* input.h (main_input_filename): Move declaration to toplev.h.
* toplev.c (input_location, line_table): Move to input.c
* toplev.h (main_input_filename): Move declaration from input.h.
* tree.c (expand_location): Move to input.c.
* Makefile.in (OBJS-common): Add input.o.
(input.o): Add dependencies.
From-SVN: r159914
Richard Guenther [Thu, 27 May 2010 10:33:08 +0000 (10:33 +0000)]
lto-wrapper.c (maybe_unlink_file): Ignore unlink failure for non-existant files.
2010-05-27 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (maybe_unlink_file): Ignore unlink failure
for non-existant files.
(fork_execute): Mark args_name file as deleted.
From-SVN: r159913
Kai Tietz [Thu, 27 May 2010 08:13:58 +0000 (08:13 +0000)]
re PR bootstrap/44287 (Failed to bootstrap)
gcc/cp/
2010-05-27 Kai Tietz <kai.tietz@onevision.com>
PR bootstrap/44287
* rtti.c (emit_support_tinfos): Check for NULL_TREE.
* class.c (layout_class_type): Likewise.
* decl.c (finish_enum): Likewise.
* mangle.c (write_builitin_type): Likewise.
gcc/
2010-05-27 Kai Tietz <kai.tietz@onevision.com>
PR bootstrp/44287
* c-lex.c (narrowest_unsigned_type): Check for NULL_TREE.
(narrow_signed_type): Likewise.
From-SVN: r159912
Jan Hubicka [Thu, 27 May 2010 08:01:10 +0000 (10:01 +0200)]
materialize-1_0.c: New file.
* gcc.dg/lto/materialize-1_0.c: New file.
* gcc.dg/lto/materialize-1_1.c: New file.
From-SVN: r159911
Jan Hubicka [Thu, 27 May 2010 02:07:01 +0000 (04:07 +0200)]
cgraphunit.c (verify_cgraph_node): Do checking that DECL match edge only when checking is enabled...
* cgraphunit.c (verify_cgraph_node): Do checking that DECL match
edge only when checking is enabled; check using former_clone_of;
check inline clones too.
(cgraph_materialize_clone): Record former_clone_of pointer.
(cgraph_redirect_edge_call_stmt_to_callee): Assert that we are not
combining redirections; dump args_to_skip bitmap
(cgraph_materialize_all_clones): Do no redirection here.
* ipa-inline.c (inline_transform): Do redirection here.
* cgraph.h (struct cgraph_node): Add former_clone_of filed (enabled
cheking only).
From-SVN: r159907
GCC Administrator [Thu, 27 May 2010 00:17:42 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r159906
Steven Bosscher [Wed, 26 May 2010 22:45:08 +0000 (22:45 +0000)]
avr-c.c: Do not include regs.h.
* config/avr/avr-c.c: Do not include regs.h.
Include cpplib.h for cpp_define and tree.h for c-common.h.
* config/avr/avr-devices.c (avr_mcu_types): Fix initializer.
* config/avr/t-avr: Fix dependencies for avr-c.o.
From-SVN: r159901
Steven Bosscher [Wed, 26 May 2010 21:46:22 +0000 (21:46 +0000)]
explow.c (set_stack_check_libfunc): Adjust to accept name as a string instead of SYMBOL_REF rtx.
gcc/ChangeLog:
* explow.c (set_stack_check_libfunc): Adjust to accept name as a
string instead of SYMBOL_REF rtx.
* rtl.h (set_stack_check_libfunc): Move prototype from here...
* libfuncs.h: ...to here. Adjust for explow.c change.
ada/ChangeLog:
* gcc-interface/trans.c: Do not include rtl.h, insclude libfuncs.h.
(gigi): Adjust call to set_stack_check_libfunc.
From-SVN: r159900
Nathan Froyd [Wed, 26 May 2010 19:27:58 +0000 (19:27 +0000)]
java-tree.h (struct lang_decl_func): Change type of throws_list field to a VEC.
* java-tree.h (struct lang_decl_func): Change type of throws_list
field to a VEC.
* jcf-parse.c (HANDLE_EXCEPTIONS_ATTRIBUTE): Adjust for changed type
of DECL_FUNCTION_THROWS.
* class.c (make_method_value): Likewise.
From-SVN: r159899
Joseph Myers [Wed, 26 May 2010 18:55:51 +0000 (19:55 +0100)]
pretty-print.c: Don't include ggc.h.
* pretty-print.c: Don't include ggc.h.
(identifier_to_locale_alloc, identifier_to_locale_free): Define.
(identifier_to_locale): Use them for allocation.
* pretty-print.h (identifier_to_locale_alloc,
identifier_to_locale_free): Declare.
* toplev.c (alloc_for_identifier_to_locale): New.
(general_init): Set identifier_to_locale_alloc and
identifier_to_locale_free.
* Makefile.in (pretty-print.o): Update dependencies.
From-SVN: r159898
Kai Tietz [Wed, 26 May 2010 18:09:29 +0000 (20:09 +0200)]
Move cplusplus parts into cp/ChangeLog and remove them from gcc's.
From-SVN: r159897
Eric Botcazou [Wed, 26 May 2010 17:57:30 +0000 (17:57 +0000)]
gimple.c (gimple_types_compatible_p): Return 0 for aggregate and pointer types if they have different alignment or mode.
* gimple.c (gimple_types_compatible_p): Return 0 for aggregate and
pointer types if they have different alignment or mode.
From-SVN: r159896
Sterling Augustine [Wed, 26 May 2010 17:36:37 +0000 (17:36 +0000)]
MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.
2010-05-25 Sterling Augustine <sterling@tensilica.com>
* MAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.
From-SVN: r159894
Anatoly Sokolov [Wed, 26 May 2010 17:12:20 +0000 (21:12 +0400)]
sparc.h (FUNCTION_VALUE, [...]): Remove macros.
* config/sparc/sparc.h (FUNCTION_VALUE, FUNCTION_OUTGOING_VALUE,
LIBCALL_VALUE, FUNCTION_VALUE_REGNO_P): Remove macros.
* config/sparc/sparc-protos.h (function_value): Remove declaration.
* config/sparc/sparc.c (sparc_function_value, sparc_libcall_value,
sparc_function_value_regno_p): New functions.
(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE,
TARGET_FUNCTION_VALUE_REGNO_P): Define.
(function_value): Rename to...
(sparc_function_value_1): ... this. Make static. Change 'incoming_p'
argument to 'outgoing'.
(function_arg_record_value, function_arg_union_value,
function_arg_vector_value): Update comment.
From-SVN: r159890
Eric Botcazou [Wed, 26 May 2010 16:55:35 +0000 (16:55 +0000)]
dwarf2out.c (struct dw_fde_struct): Reorder flags.
* dwarf2out.c (struct dw_fde_struct): Reorder flags.
(fde_needed_for_eh_p): New predicate.
(output_call_frame_info): Use it throughout to decide whether FDEs
are needed for EH purpose.
(dwarf2out_begin_prologue): Reorder assignments.
From-SVN: r159889
Sebastian Pop [Wed, 26 May 2010 16:47:08 +0000 (16:47 +0000)]
Do not check the if-convertibility of statements that are not predicated.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (if_convertible_gimple_assign_stmt_p): Do not
special case loop->header.
(is_predicated): New.
(if_convertible_loop_p): Call it.
From-SVN: r159887
Sebastian Pop [Wed, 26 May 2010 16:46:59 +0000 (16:46 +0000)]
Reorganize the analysis of basic block predication.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (add_to_dst_predicate_list): Do not pass a statemet
iterator in parameter. Do not generate code during the analysis.
(tree_if_convert_cond_stmt): Removed.
(tree_if_convert_stmt): Removed.
(predicate_bbs): New.
(if_convertible_loop_p): Call predicate_bbs.
(tree_if_conversion): Simplify the top-level logic as predicate_bbs
now contains all the analysis part.
From-SVN: r159886
Sebastian Pop [Wed, 26 May 2010 16:46:49 +0000 (16:46 +0000)]
Remove conditions in the code generation of if-conversion.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (tree_if_convert_cond_stmt): Do not remove
statements in the analysis part.
(tree_if_convert_stmt): Update comment.
(remove_conditions_and_labels): New.
(combine_blocks): Call remove_conditions_and_labels.
(tree_if_conversion): Update comment.
From-SVN: r159885
Sebastian Pop [Wed, 26 May 2010 16:46:39 +0000 (16:46 +0000)]
Don't handle BBs with more than 2 preds or succs.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (if_convertible_bb_p): Don't handle BBs with more
than 2 predecessors or more than 2 successors.
From-SVN: r159884
Sebastian Pop [Wed, 26 May 2010 16:46:25 +0000 (16:46 +0000)]
Avoid if-conversion of loops in which the data dependence analysis fails.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (if_convertible_loop_p): Avoid if-conversion
of loops in which the data dependence analysis fails.
From-SVN: r159883
Sebastian Pop [Wed, 26 May 2010 16:46:12 +0000 (16:46 +0000)]
Do not compute/free CDI_POST_DOMINATORS.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (if_convertible_loop_p): Do not compute/free
CDI_POST_DOMINATORS.
(tree_if_conversion): Same.
From-SVN: r159882
Sebastian Pop [Wed, 26 May 2010 16:45:56 +0000 (16:45 +0000)]
Make tree_if_conversion not return a bool.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c (tree_if_conversion): Do not return a bool.
From-SVN: r159881
Sebastian Pop [Wed, 26 May 2010 16:45:47 +0000 (16:45 +0000)]
Fix comments.
2010-05-26 Sebastian Pop <sebastian.pop@amd.com>
* tree-if-conv.c: Update copyright years. Fix comments.
Fix indentation.
From-SVN: r159880
Kai Tietz [Wed, 26 May 2010 16:13:55 +0000 (16:13 +0000)]
demangle-expected: Add tests for __int128 and unsigned __int128 types.
libiberty/
2010-05-26 Kai Tietz <kai.tietz@onevision.com>
* testsuite/demangle-expected: Add tests for __int128
and unsigned __int128 types.
gcc/testsuite
2010-05-26 Kai Tietz <kai.tietz@onevision.com>
* lib/target-supports.exp (check_effective_target_int128): New
function to check if __int128 types are available for target.
* testsuite/c-c++-common/int128-types-1.c: New.
* testsuite/c-c++-common/int128-1.c: New.
* testsuite/c-c++-common/int128-2.c: New.
* g++.dg/abi/mangle43.C: New.
* g++.dg/init/enum1.C: Handle __int128 case and add -Wno-overflow.
* g++.dg/cpp0x/nullptr04.C: Use __SIZE_TYPE__ for getting
pointer-wide scalar.
* g++.dg/other/pr25632.C: Likewise.
* g++.dg/other/large-size-array.C (DIM): Use ULLONG_MAX for win64 case.
* g++.dg/warn/pr13358-2.C: Add llp64 for check of special
overflow warnings.
* g++.dg/warn/pr13358-4.C: Likewise.
* g++.dg/warn/Wconversion-null-2.C: Add 'long long' case.
* g++.dg/warn/Wconversion-null.C: Likewise.
gcc/
2010-05-26 Kai Tietz <kai.tietz@onevision.com>
* builtin-types.def (BT_INT128): New primitive type.
(BT_UINT128): Likewise.
* c-common.c (c_common_r): Add __int128 keyword.
(c_common_type_for_size): Handle __int128.
(c_common_type_for_mode): Likewise.
(c_common_signed_or_unsigned_type): Likewise.
(c_common_nodes_and_builtins): Add builtin type
if target supports 128-bit integer scalar.
* c-common.h (enum rid): Add RID_INT128.
* c-cppbuiltin.c (c_cpp_builtins): Define __SIZEOF_INT128__
if target supports 128-bit integer scalar.
* c-decl.c (declspecs_add_type): Handle new keyword
__int128.
(finish_declspecs): Likewise.
* c-parser.c (c_token_starts_typename): Handle RID_INT128.
(c_token_starts_declspecs): Likewise.
(c_parser_declspecs): Likewise.
(c_parser_attributes): Likewise.
(c_parser_objc_selector): Likewise.
* c-pretty-print.c (pp_c_integer_constant): Handle __int128.
* c-tree.h (enum c_typespec_keyword): Add cts_int128.
* gimple.c (gimple_signed_or_unsigned_type): Handle int128 types.
* tree.c (make_or_reuse_type): Likewise.
(make_unsigned_type): Likewise.
(build_common_tree_nodes_2): Likewise.
* tree.h (enum integer_type_kind): Add itk_int128 and
itk_unsigned_int128.
(int128_integer_type_node): New define..
(int128_unsigned_type_node): New define.
* cp/cp-tree.h (cp_decl_specifier_seq): Add new bifield
explicit_int128_p.
* cp/decl.c (grokdeclarator): Handle __int128.
* cp/parser.c (cp_lexer_next_token_is_decl_specifier_ke): Likewise.
(cp_parser_simple_type_specifier): Likewise.
* cp/rtti.c (emit_support_tinfos): Add int128 nodes for rtti.
* cp/typeck.c (cp_common_type): Handle __int128.
* cp/mangle.c (integer_type_codes): Add itk_int128 and
itk_unsigned_int128.
* doc/extend.texi: Add documentation about __int128 type.
From-SVN: r159879
Richard Guenther [Wed, 26 May 2010 15:35:03 +0000 (15:35 +0000)]
tree-ssa-sccvn.c (copy_nary): Adjust.
2010-05-26 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (copy_nary): Adjust.
(copy_phis): Rename to ...
(copy_phi): ... this. Adjust.
(copy_references): Rename to ...
(copy_reference): ... this. Adjust.
(process_scc): Use HTAB_FOR_EACH_ELEMENT to insert the
result into the valid table.
From-SVN: r159877
Steven Bosscher [Wed, 26 May 2010 15:23:00 +0000 (15:23 +0000)]
spu-c.c: Do not include function.h...
* config/spu/spu-c.c: Do not include function.h, rtl.h, expr.h,
insn-config.h, insn-codes.h, recog.h, and optabs.h.
From-SVN: r159876
Laurynas Biveinis [Wed, 26 May 2010 15:08:28 +0000 (15:08 +0000)]
ggc.h (ggc_min_expand_heuristic, [...]): Remove.
2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* ggc.h (ggc_min_expand_heuristic, ggc_min_heapsize_heuristic):
Remove.
From-SVN: r159874
Jason Merrill [Wed, 26 May 2010 15:00:02 +0000 (11:00 -0400)]
re PR c++/43382 ([C++0x] ICE with auto return type and variadic templates)
PR c++/43382
* pt.c (fn_type_unification): Don't get confused by recursive
unification.
From-SVN: r159873
Richard Guenther [Wed, 26 May 2010 14:41:45 +0000 (14:41 +0000)]
opts.c (common_handle_option): Handle OPT_Ofast.
2010-05-26 Richard Guenther <rguenther@suse.de>
* opts.c (common_handle_option): Handle OPT_Ofast.
From-SVN: r159871
Nathan Froyd [Wed, 26 May 2010 13:55:30 +0000 (13:55 +0000)]
class.c (utf8_decl_list): Delete.
* class.c (utf8_decl_list): Delete.
(build_utf8_ref): Remove references to it.
* java-tree.h (all_class_list): Delete.
(predef_filenames): Delete.
(enum java_tree_index) [JTI ALL_CLASS_LIST,JTI_PREDEF_FILENAMES]:
Delete.
* jcf-parse.c (parse_roots): Decrease size to 2.
(current_file_list): Convert to a VEC.
(all_class_list): Declare.
(jcf_parse): Adjust for new type of all_class_list.
(java_layout_seen_class_methods): Likewise.
(predefined_filenames): Declare.
(add_predefined_file): Use it.
(predefined_filename_p): Likewise.
(java_parse_file): Adjust for new type of current_file_list. *
From-SVN: r159870
Joseph Myers [Wed, 26 May 2010 13:40:53 +0000 (14:40 +0100)]
diagnostic.c: Don't include opts.h.
* diagnostic.c: Don't include opts.h.
(permissive_error_option): Define.
(diagnostic_initialize): Take n_opts parameter. Allocate memory
for classify_diagnostic. Don't use memset for
classify_diagnostic. Initialize new and recently added fields.
(diagnostic_classify_diagnostic): Use context->n_opts instead of
N_OPTS.
(diagnostic_report_diagnostic): Pass context parameter to
diagnostic_report_warnings_p. Use option_enabled and option_name
hooks from context.
(emit_diagnostic): Use permissive_error_option.
(permerror): Likewise.
* diagnostic.h: Don't include options.h.
(struct diagnostic_context): Add n_opts, opt_permissive,
inhibit_warnings, warn_system_headers, option_enabled and
option_name fields. Change classify_diagnostic to a pointer.
* opts-diagnostic.h: New file.
* opts.c: Include opts-diagnostic.h.
(common_handle_option): Set global_dc fields for -Wfatal-errors,
-Wsystem-headers, -fshow-column, -pedantic-errors and -w.
(option_name): New function.
* c-opts.c (c_common_init_options): Set global_dc->opt_permissive.
(c_common_handle_option): Set global_dc->permissive for
-fpermissive.
* c-common.c (c_cpp_error): Save and restore
global_dc->warn_system_headers, not variable warn_system_headers.
* toplev.c: Include opts-diagnostic.h.
(general_init): Update call to diagnostic_initialize. Set
global_dc->show_column, global_dc->option_enabled and
global_dc->option_name.
(process_options): Don't set global_dc fields here.
* Makefile.in (DIAGNOSTIC_H): Remove options.h.
(diagnostic.o, opts.o, toplev.o): Update dependencies.
fortran:
* cpp.c (cb_cpp_error): Save and restore
global_dc->warn_system_headers, not variable warn_system_headers.
From-SVN: r159869
Hariharan Sandanagobalane [Wed, 26 May 2010 12:20:31 +0000 (12:20 +0000)]
picochip.md (movsi): Split a movsi from a const after reload.
* config/picochip/picochip.md (movsi): Split a movsi from a
const after reload.
From-SVN: r159867
Laurynas Biveinis [Wed, 26 May 2010 11:24:42 +0000 (11:24 +0000)]
ggc-zone.c: Update copyright year.
2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* ggc-zone.c: Update copyright year.
(poison_region): Mark memory for Valgrind as undefined before
memset () call and inaccessible afterwards.
(ggc_pch_total_size): Change type of i to int.
2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* ggc-common.c (ggc_free_overhead): Allow empty slot.
2010-05-26 Laurynas Biveinis <laurynas.biveinis@gmail.com>
* ggc-common.c: Update copyright year.
(ggc_rlimit_bound): Remove prototype. Compile only if
!ENABLE_GC_CHECKING && !ENABLE_GC_ALWAYS_COLLECT.
(ggc_min_heapsize_heuristic): Compile only if !ENABLE_GC_CHECKING
&& !ENABLE_GC_ALWAYS_COLLECT. Make static.
(ggc_min_heapsize_heuristic): Likewise.
From-SVN: r159863
Steven Bosscher [Wed, 26 May 2010 10:34:40 +0000 (10:34 +0000)]
* lto-lang.c: Do not include expr.h.
From-SVN: r159862
Richard Guenther [Wed, 26 May 2010 10:30:31 +0000 (10:30 +0000)]
re PR rtl-optimization/44164 (Aliasing bug triggered by Boost.Bind/Boost.Function)
2010-05-26 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/44164
* tree-ssa-alias.c (aliasing_component_refs_p): Fix the
no-common access-path disambiguation.
(indirect_ref_may_alias_decl_p): Adjust.
(indirect_refs_may_alias_p): Likewise.
(refs_may_alias_p_1): Likewise.
* gcc.c-torture/execute/pr44164.c: New testcase.
* g++.dg/tree-ssa/pr13146.C: Adjust.
From-SVN: r159861
Steven Bosscher [Wed, 26 May 2010 09:53:37 +0000 (09:53 +0000)]
* c-typeck.c: Do not include expr.h.
From-SVN: r159860
Steven Bosscher [Wed, 26 May 2010 09:52:56 +0000 (09:52 +0000)]
* cp-lang.c: Do not include expr.h.
From-SVN: r159859