gcc.git
14 years agoavr-c.c: Do not include regs.h.
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

14 years agoexplow.c (set_stack_check_libfunc): Adjust to accept name as a string instead of...
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

14 years agojava-tree.h (struct lang_decl_func): Change type of throws_list field to a VEC.
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

14 years agopretty-print.c: Don't include ggc.h.
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

14 years agoMove cplusplus parts into cp/ChangeLog and remove them from gcc's.
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

14 years agogimple.c (gimple_types_compatible_p): Return 0 for aggregate and pointer types if...
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

14 years agoMAINTAINERS (CPU Port Maintainers): Add myself for xtensa port.
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

14 years agosparc.h (FUNCTION_VALUE, [...]): Remove macros.
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

14 years agodwarf2out.c (struct dw_fde_struct): Reorder flags.
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

14 years agoDo not check the if-convertibility of statements that are not predicated.
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

14 years agoReorganize the analysis of basic block predication.
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

14 years agoRemove conditions in the code generation of if-conversion.
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

14 years agoDon't handle BBs with more than 2 preds or succs.
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

14 years agoAvoid if-conversion of loops in which the data dependence analysis fails.
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

14 years agoDo not compute/free CDI_POST_DOMINATORS.
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

14 years agoMake tree_if_conversion not return a bool.
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

14 years agoFix comments.
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

14 years agodemangle-expected: Add tests for __int128 and unsigned __int128 types.
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

14 years agotree-ssa-sccvn.c (copy_nary): Adjust.
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

14 years agospu-c.c: Do not include function.h...
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

14 years agoggc.h (ggc_min_expand_heuristic, [...]): Remove.
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

14 years agore PR c++/43382 ([C++0x] ICE with auto return type and variadic templates)
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

14 years agoopts.c (common_handle_option): Handle OPT_Ofast.
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

14 years agoclass.c (utf8_decl_list): Delete.
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

14 years agodiagnostic.c: Don't include opts.h.
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

14 years agopicochip.md (movsi): Split a movsi from a const after reload.
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

14 years agoggc-zone.c: Update copyright year.
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

14 years ago* lto-lang.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 10:34:40 +0000 (10:34 +0000)]
* lto-lang.c: Do not include expr.h.

From-SVN: r159862

14 years agore PR rtl-optimization/44164 (Aliasing bug triggered by Boost.Bind/Boost.Function)
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

14 years ago* c-typeck.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 09:53:37 +0000 (09:53 +0000)]
* c-typeck.c: Do not include expr.h.

From-SVN: r159860

14 years ago* cp-lang.c: Do not include expr.h.
Steven Bosscher [Wed, 26 May 2010 09:52:56 +0000 (09:52 +0000)]
* cp-lang.c: Do not include expr.h.

From-SVN: r159859

14 years ago* fortran/f95-lang.c: Do not include libfuncs.h, expr.h, and except.h.
Steven Bosscher [Wed, 26 May 2010 09:52:03 +0000 (09:52 +0000)]
* fortran/f95-lang.c: Do not include libfuncs.h, expr.h, and except.h.

From-SVN: r159858

14 years agortl.h (decl_default_tls_model): Move prototype from here...
Steven Bosscher [Wed, 26 May 2010 08:36:49 +0000 (08:36 +0000)]
rtl.h (decl_default_tls_model): Move prototype from here...

gcc/ChangeLog:
* rtl.h (decl_default_tls_model): Move prototype from here...
* output.h: ...to here.
* c-decl.c: Do not include rtl.h.
* c-pragma.c: Likewise.
* c-parser.c: Likewise.
* c-gimplify.c: Likewise.  And also not hard-reg-set.
* c-common.c: Do not include rtl.h.  Include tm_p.h and add a
FIXME note for it.  Add a FIXME note for expr.h.
* config/i386/i386-protos.h (ix86_enum_va_list, ix86_fn_abi_va_list,
ix86_canonical_va_list_type): Make visible even if RTX_CODE is not
defined.

cp/ChangeLog:
* decl.c: Do not include rtl.h
* semantics.c: Likewise.

ada/ChangeLog:
* gcc-interface/utils.c: Do not include rtl.h.

fortran/ChangeLog:
* trans-common.c: Do not include rtl.h, include output.h instead.
* trans-decl.c: Likewise.

From-SVN: r159856

14 years agore PR target/44199 (ppc64 glibc miscompilation)
Jakub Jelinek [Wed, 26 May 2010 06:00:44 +0000 (08:00 +0200)]
re PR target/44199 (ppc64 glibc miscompilation)

PR target/44199
* config/rs6000/rs6000.c (rs6000_emit_epilogue): If cfun->calls_alloca
or total_size is larger than red zone size for non-V4 ABI, emit a
stack_tie resp. frame_tie insn before stack pointer restore.
* config/rs6000/rs6000.md (frame_tie): New insn.

From-SVN: r159853

14 years agore PR fortran/40011 (Problems with -fwhole-file)
Paul Thomas [Wed, 26 May 2010 05:11:04 +0000 (05:11 +0000)]
re PR fortran/40011 (Problems with -fwhole-file)

2010-05-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40011
* resolve.c (resolve_global_procedure): Resolve the gsymbol's
namespace before trying to reorder the gsymbols.

2010-05-26  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40011
* gfortran.dg/whole_file_19.f90 : New test.

From-SVN: r159852

14 years agoDaily bump.
GCC Administrator [Wed, 26 May 2010 00:17:44 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159851

14 years agofunction.h (struct function): Add can_throw_non_call_exceptions bit.
Eric Botcazou [Tue, 25 May 2010 22:34:36 +0000 (22:34 +0000)]
function.h (struct function): Add can_throw_non_call_exceptions bit.

* function.h (struct function): Add can_throw_non_call_exceptions bit.
* lto-streamer-in.c (input_function): Stream it in.
* lto-streamer-out.c (output_function): Stream it out.
* function.c (allocate_struct_function): Set it.
(expand_function_end): Substitute cfun->can_throw_non_call_exceptions
for flag_non_call_exceptions.
* cfgbuild.c (control_flow_insn_p): Likewise.
(make_edges): Likewise.
* cfgexpand.c (expand_stack_alignment): Likewise.
* combine.c (distribute_notes): Likewise.
* cse.c (cse_extended_basic_block): Likewise.
* except.c (insn_could_throw_p): Likewise.
* gcse.c (simple_mem): Likewise.
* ipa-pure-const.c (check_call): Likewise.
(check_stmt ): Likewise.
* lower-subreg.c (lower-subreg.c): Likewise.
* optabs.c (emit_libcall_block): Likewise.
(prepare_cmp_insn): Likewise.
* postreload-gcse.c (eliminate_partially_redundant_loads): Likewise.
* postreload.c (rest_of_handle_postreload): Likewise.
* reload1.c (reload_as_needed): Likewise.
(emit_input_reload_insns): Likewise.
(emit_output_reload_insns): Likewise.
(fixup_abnormal_edges): Likewise.
* sel-sched-ir.c (init_global_and_expr_for_insn): Likewise.
* store-motion.c (find_moveable_store): Likewise.
* tree-eh.c (stmt_could_throw_p): Likewise.
(tree_could_throw_p): Likewise.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Likewise.
* config/arm/arm.c (arm_expand_prologue): Likewise.
(thumb1_expand_prologue): Likewise.
* config/rx/rx.md (cbranchsf4): Likewise.
(cmpsf): Likewise.
* config/s390/s390.c (s390_emit_prologue): Likewise.
* tree-inline.c (initialize_cfun): Copy can_throw_non_call_exceptions.
(inline_forbidden_into_p): New predicate.
(expand_call_inline): Use it to forbid inlining.
(tree_can_inline_p): Likewise.

From-SVN: r159847

14 years agoi386-c.c: Do not include rtl.h.
Steven Bosscher [Tue, 25 May 2010 22:33:00 +0000 (22:33 +0000)]
i386-c.c: Do not include rtl.h.

* config/i386/i386-c.c: Do not include rtl.h.
* config/i386/t-i386: Update dependencies.

From-SVN: r159846

14 years agoattribs.c: Do not include rtl.h.
Steven Bosscher [Tue, 25 May 2010 22:31:19 +0000 (22:31 +0000)]
attribs.c: Do not include rtl.h.

* attribs.c: Do not include rtl.h.
* Makefile.in: Update dependencies.

From-SVN: r159845

14 years agoutils.c: Do not include function.h, pointer-set.h, and gimple.h.
Steven Bosscher [Tue, 25 May 2010 21:07:40 +0000 (21:07 +0000)]
utils.c: Do not include function.h, pointer-set.h, and gimple.h.

* gcc-interface/utils.c: Do not include function.h, pointer-set.h,
and gimple.h.  Explain why rtl.h has to be included.
(handle_vector_size_attribute): Call reconstruct_complex_type directly.
* gcc-interface/targtyps.c: Do not include tm_p.h
* gcc-interface/utils2.c: Do not include flags.h.
* gcc-interface/trans.c: Do not include expr.h.  Include rtl.h instead,
and explain why it has to be included.
* gcc-interface/misc.c: Do not include expr.h, libfuncs.h, cgraph.h,
and optabs.h.
Include function.h and explain why.  Explain why except.h is included.
(enumerate_modes): Remove unused function.
* gcc-interface/gigi.h (enumerate_modes): Remove prototype.
* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r159844

14 years agodouble-int.h (double_int_and): New.
Anatoly Sokolov [Tue, 25 May 2010 19:48:40 +0000 (23:48 +0400)]
double-int.h (double_int_and): New.

* double-int.h (double_int_and): New.
* combine.c (try_combine): Clean up, use double_int_* and
immed_double_int_const functions.

From-SVN: r159842

14 years agoconfigure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q.
Rainer Orth [Tue, 25 May 2010 18:50:01 +0000 (18:50 +0000)]
configure.ac: Redirect grep stdout, stderr to /dev/null instead of grep -q.

libjava:
* configure.ac: Redirect grep stdout, stderr to /dev/null instead
of grep -q.
Use -- instead of grep -e.
* configure: Regenerate.

gcc:
* configure.ac (gcc_cv_as_ld_jalr_reloc): Redirect grep stdout,
stderr to /dev/null instead of grep -q.
* configure: Regenerate.

contrib:
* dg-extract-results.sh: Redirect grep output to /dev/null instead
of grep -q.

From-SVN: r159840

14 years agoMakefile.in (EXCEPT_H): Fix typo.
Steven Bosscher [Tue, 25 May 2010 18:14:23 +0000 (18:14 +0000)]
Makefile.in (EXCEPT_H): Fix typo.

gcc/ChangeLog:
* Makefile.in (EXCEPT_H): Fix typo.

objc/ChangeLog:
* objc-act.h: Do not include gimple.h.
* objc-act.c: Do not include rtl.h, expr.h, libfuncs.h, and tm_p.h.
Include gimple.h.  Explain why except.h has to be included.
* objc-lang.c: Do not include diagnostics.h.
* Make-lang.in: Update dependencies.

objcp/ChangeLog:
* objcp-decl.c: Do not include tm.h, rtl.h, expr.h, c-common.h,
flags.h, input.h, except.h, output.h, toplev.h, cpplib.h, debug.h,
and target.h.
* objcp-lang.c: Do not include tm.h, toplev.h, diagnostics.h,
and debug.h.  Explain why except.h has to be included.
* Make-lang.in: Update dependencies.

cp/ChangeLog:
* cp-tree.h: Do not include splay-tree.h.
(struct prtmem_cst): Remove unused field and false comment.
* typeck.c: Do not include rtl.h, expr.h, and tm_p.h.
* optimize.c: Do not inclde rtl.h, insn-config.h, and integrate.h.
* init.c: Do not include rtl.h and expr.h.
* class.c: Do not include rtl.h.  Include splay-tree.h.
(build_clone): Use plain NULL instead of NULL_RTX.
* decl.c: Do not include expr.h.  Explain why rtl.h has to be
included.  Include splay-tree.h.
* method.c: Do not include rtl.h and expr.h.
(use_thunk): Use plain NULL instead of NULL_RTX.
* except.c: Do not include rtl.h, expr.h, and libfuncs.h.
* tree.c: Do not include rtl.h, insn-config.h, integrate.h,
and target.h.  Include splay-tree.h.
* expr.c: Do not include rtl.h and expr.h.
* pt.c: Do not include obstack.h and rtl.h.
(tsubst_friend_function): Use plain NULL instead of NULL_RTX.
(tsubst_decl): Likewise.
(instantiate_decl): Likewise.
* semantics.c: Do not include exprt.h and debug.h.  Explain why
rtl.h has to be included.
* decl2.c: Do not include rtl.h and expr.h.  Include splay-tree.h.
* call.c: Do not include rtl.h and expr.h.
* search.c: Do not include obstack.h and rtl.h.
* friend.c: Do not include rtl.h and expr.h.
* Make-lang.in: Update dependencies.

From-SVN: r159839

14 years agore PR fortran/30668 (-fwhole-file should catch function of wrong type)
Daniel Franke [Tue, 25 May 2010 18:10:01 +0000 (14:10 -0400)]
re PR fortran/30668 (-fwhole-file should catch function of wrong type)

gcc/fortran/:
2010-05-25  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/30668
PR fortran/31346
PR fortran/34260
* resolve.c (resolve_global_procedure): Add check for global
procedures with implicit interfaces and assumed-shape or optional
dummy arguments. Verify that function return type, kind and string
lengths match.

gcc/testsuite/:
2010-05-25  Daniel Franke  <franke.daniel@gmail.com>

PR fortran/30668
PR fortran/31346
PR fortran/34260
* gfortran.dg/pr40999.f: Fix function type.
* gfortran.dg/whole_file_5.f90: Likewise.
* gfortran.dg/whole_file_6.f90: Likewise.
* gfortran.dg/whole_file_16.f90: New.
* gfortran.dg/whole_file_17.f90: New.
* gfortran.dg/whole_file_18.f90: New.

From-SVN: r159838

14 years agomangle40.C: Adjust dg-require-alias syntax.
Jack Howarth [Tue, 25 May 2010 17:26:38 +0000 (17:26 +0000)]
mangle40.C: Adjust dg-require-alias syntax.

2010-05-25  Jack Howarth <howarth@bromo.med.uc.edu>
    Iain Sandoe  <iains@gcc.gnu.org>

* g++.dg/abi/mangle40.C: Adjust dg-require-alias syntax.
* gcc.c-torture/compile/pr44197.c: Require alias support.
* gcc.dg/lto/20081222_0.c: Ditto.

Co-Authored-By: Iain Sandoe <iains@gcc.gnu.org>
From-SVN: r159837

14 years agolang.c (java_classify_record): Return RECORD_IS_INTERFACE for interfaces.
Jakub Jelinek [Tue, 25 May 2010 17:12:39 +0000 (19:12 +0200)]
lang.c (java_classify_record): Return RECORD_IS_INTERFACE for interfaces.

* lang.c (java_classify_record): Return RECORD_IS_INTERFACE
for interfaces.

From-SVN: r159835

14 years agoobjc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance mismatch code for...
Nathan Froyd [Tue, 25 May 2010 16:59:56 +0000 (16:59 +0000)]
objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance mismatch code for VECs.

* objc-act.c (objc_build_constructor): Adjust OBJCPLUS impedance
mismatch code for VECs.

From-SVN: r159834

14 years agore PR libgcj/44216 (All libjava tests fail on IRIX 6.5: ld warns about -no-merge...
Rainer Orth [Tue, 25 May 2010 16:59:45 +0000 (16:59 +0000)]
re PR libgcj/44216 (All libjava tests fail on IRIX 6.5: ld warns about -no-merge-exidx-entries)

PR libgcj/44216
* configure.ac (libgcj_cv_exidx): Enable AC_LANG_WERROR.
Save and restore werror flag.
* configure: Regenerate.

From-SVN: r159833

14 years agoRename misnamed test.
Jakub Jelinek [Tue, 25 May 2010 16:30:56 +0000 (18:30 +0200)]
Rename misnamed test.

From-SVN: r159831

14 years agoira-build.c (update_conflict_hard_reg_costs): New.
Vladimir Makarov [Tue, 25 May 2010 16:29:38 +0000 (16:29 +0000)]
ira-build.c (update_conflict_hard_reg_costs): New.

        * ira-build.c (update_conflict_hard_reg_costs): New.
        (ira_build): Call update_conflict_hard_reg_costs.

From-SVN: r159830

14 years agore PR debug/41371 (var-tracking is slow and memory hungry)
Jakub Jelinek [Tue, 25 May 2010 16:27:03 +0000 (18:27 +0200)]
re PR debug/41371 (var-tracking is slow and memory hungry)

PR debug/41371
* var-tracking.c (find_loc_in_1pdv): Guard asserts with
ENABLE_CHECKING.
(intersect_loc_chains): Walk the s2var's loc_chain together
with s1node chain as long as the locations are equal, don't
call find_loc_in_1pdv in that case.

From-SVN: r159829

14 years agore PR debug/43260 (Java static class members lack DWARF location info)
Jakub Jelinek [Tue, 25 May 2010 16:19:11 +0000 (18:19 +0200)]
re PR debug/43260 (Java static class members lack DWARF location info)

PR debug/43260
* java-tree.h (pending_static_fields): New extern declaration.
(java_write_globals): New prototype.
* lang.c (LANG_HOOKS_WRITE_GLOBALS): Define.
* decl.c (java_mark_class_local): When clearing DECL_EXTERNAL
of a static field push it into pending_static_fields vector.
* class.c (pending_static_fields): New variable.
(add_field): If static field is not DECL_EXTERNAL, push it into
pending_static_fields vector.
(java_write_globals): New function.

From-SVN: r159828

14 years agore PR c++/18249 (C++ parser i18n problems)
Jakub Jelinek [Tue, 25 May 2010 16:17:32 +0000 (18:17 +0200)]
re PR c++/18249 (C++ parser i18n problems)

PR c++/18249
* parser.c (non_integral_constant): Add NIC_NONE.
(required_token): Add RT_NONE.
(cp_parser_unary_expression): Initialize non_constant_p
to NIC_NONE.
(cp_parser_asm_definition): Initialize missing to RT_NONE.
(cp_parser_primary_expression, cp_parser_postfix_expression,
cp_parser_cast_expression, cp_parser_binary_expression,
cp_parser_functional_cast): Fix formatting.

From-SVN: r159827

14 years agore PR debug/42801 (C VLAs should use DW_AT_allocated)
Jakub Jelinek [Tue, 25 May 2010 16:15:38 +0000 (18:15 +0200)]
re PR debug/42801 (C VLAs should use DW_AT_allocated)

PR debug/42801
* tree-inline.c (remap_decls): Remap DECL_VALUE_EXPR here...
(copy_bind_expr): ... instead of here.
(copy_tree_body_r): If id->remapping_type_depth clear TREE_BLOCK
if the block hasn't been remapped.
* dwarf2out.c (gen_formal_parameter_die, gen_variable_die): When
emitting concrete instance of abstract VLA, add DW_AT_type attribute.

* gcc.dg/guality/sra-2.c: New test.

From-SVN: r159826

14 years agore PR middle-end/44069 (optimization bug initializing from cast array)
Richard Guenther [Tue, 25 May 2010 15:49:34 +0000 (15:49 +0000)]
re PR middle-end/44069 (optimization bug initializing from cast array)

2010-05-25  Richard Guenther  <rguenther@suse.de>

PR middle-end/44069
* gimple-fold.c (maybe_fold_stmt_addition): Avoid generating
out-of-bounds array accesses.

* g++.dg/torture/pr44069.C: New testcase.

From-SVN: r159824

14 years agolto-wrapper.c (nr, [...]): Globalize.
Richard Guenther [Tue, 25 May 2010 15:47:28 +0000 (15:47 +0000)]
lto-wrapper.c (nr, [...]): Globalize.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* lto-wrapper.c (nr, input_names, output_names, makefile): Globalize.
(lto_wrapper_exit): Unlink all LTRANS temporary files on error.
(run_gcc): Re-organize to make cleanup easier.

From-SVN: r159823

14 years agos390.c (optimization_options): Fix and move the flag_prefetch_loop_arrays override ...
Andreas Krebbel [Tue, 25 May 2010 15:19:55 +0000 (15:19 +0000)]
s390.c (optimization_options): Fix and move the flag_prefetch_loop_arrays override ...

2010-05-25  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (optimization_options): Fix and move the
flag_prefetch_loop_arrays override ...
(override_options): ... here.

From-SVN: r159822

14 years agoobjc-act.c (objc_build_constructor): Take a VEC instead of a tree.
Nathan Froyd [Tue, 25 May 2010 13:56:13 +0000 (13:56 +0000)]
objc-act.c (objc_build_constructor): Take a VEC instead of a tree.

* objc-act.c (objc_build_constructor): Take a VEC instead of a tree.
Use build_constructor instead of build_constructor_from_list.
(objc_build_string_object): Build a VEC argument for
objc_build_constructor.
(init_def_list): Likewise.
(init_objc_symtab): Likewise.
(init_module_descriptor): Likewise.
(generate_static_references): Likewise.
(build_selector_translation_table): Likewise.
(build_descriptor_table_initializer): Likewise.
(generate_descriptor_table): Likewise.
(build_protocol_initializer): Likewise.
(build_ivar_list_initializer): Likewise.
(generate_ivars_list): Likewise.
(build_dispatch_table_initializer): Likewise.
(generate_dispatch_table): Likewise.
(generate_protocol_list): Likewise.
(build_category_initializer): Likewise.
(build_shared_structure_initializer): Likewise.
(generate_objc_image_info): Likewise.

From-SVN: r159821

14 years agoconfig.sub: Update to version 2010-05-21.
Maxim Kuvyrkov [Tue, 25 May 2010 13:22:07 +0000 (13:22 +0000)]
config.sub: Update to version 2010-05-21.

* config.sub: Update to version 2010-05-21.
* config.guess: Update to version 2010-04-03.

Also, move a changelog entry to correct ChangeLog.

From-SVN: r159820

14 years agodiagnostic.c: Don't include plugin.h.
Joseph Myers [Tue, 25 May 2010 13:01:45 +0000 (14:01 +0100)]
diagnostic.c: Don't include plugin.h.

* diagnostic.c: Don't include plugin.h.
(diagnostic_report_diagnostic): Don't handle plugins specially
here.  Pass context to internal_error callback.
* diagnostic.h (struct diagnostic_context): Add context parameter
to internal_error callback.
* plugin.c (warn_if_plugins, plugins_internal_error_function):
New.
* plugin.h (struct diagnostic_context): Declare.
(warn_if_plugins, plugins_internal_error_function): Declare.
* toplev.c (general_init): Set global_dc->internal_error.
* Makefile.in (diagnostic.o): Update dependencies.

ada:
* gcc-interface/misc.c (internal_error_function): Add context
parameter.  Use it to access show_column flag and instead of using
global_dc.  Call warn_if_plugins.
* gcc-interface/Make-lang.in (ada/misc.o): Update dependencies.

From-SVN: r159819

14 years agosra-10.c: Do not dump esra details.
Richard Guenther [Tue, 25 May 2010 12:57:38 +0000 (12:57 +0000)]
sra-10.c: Do not dump esra details.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* gcc.dg/tree-ssa/sra-10.c: Do not dump esra details.

From-SVN: r159818

14 years agoenable multilibs on powerpc64-apple-darwin
Iain Sandoe [Tue, 25 May 2010 11:59:45 +0000 (11:59 +0000)]
enable multilibs on powerpc64-apple-darwin

* config/rs6000/darwin64.h: Update DARWIN_ARCH_SPEC.
* config/rs6000/t-darwin64: New.
* config.gcc (powerpc64-*-darwin*): Use darwin.opts, t-darwin64,
build crt2.

From-SVN: r159817

14 years agore PR middle-end/44203 (New prefetch test failures)
Christian Borntraeger [Tue, 25 May 2010 11:18:07 +0000 (11:18 +0000)]
re PR middle-end/44203 (New prefetch test failures)

2010-05-25  Christian Borntraeger  <borntraeger@de.ibm.com>

PR 44203
* tree-ssa-loop-prefetch.c: Fix logic for step calculation to
match the original (and intended) behaviour before r159557.  This
changeset changed a=a+b*c to a=(a+b)*b which was obviously wrong
in two ways.

From-SVN: r159816

14 years agoinvoke.texi: Document -Ofast.
Richard Guenther [Tue, 25 May 2010 09:43:59 +0000 (09:43 +0000)]
invoke.texi: Document -Ofast.

2010-05-25  Richard Guenther  <rguenther@suse.de>

* doc/invoke.texi: Document -Ofast.
* target.h (struct gcc_target): Add handle_ofast.
* target-def.h (TARGET_HANDLE_OFAST): Add.
(TARGET_INITIALIZER): Adjust.
* opts.c (decode_options): Handle -Ofast.  Enable
-ffast-math with it.
* common.opt (Ofast): Add.

From-SVN: r159815

14 years agotm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.
Paolo Bonzini [Tue, 25 May 2010 09:22:41 +0000 (09:22 +0000)]
tm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.

2010-05-25  Paolo Bonzini  <bonzini@gnu.org>

* doc/tm.texi (STORE_FLAG_VALUE): Do not refer to sCC patterns.
* doc/md.texi (cstoreXX4): Update for cond-optab changes.

From-SVN: r159814

14 years agore PR target/43610 (ICE: in prepare_float_lib_cmp, at optabs.c:4392 with -fno-trappin...
Paolo Bonzini [Tue, 25 May 2010 09:19:37 +0000 (09:19 +0000)]
re PR target/43610 (ICE: in prepare_float_lib_cmp, at optabs.c:4392 with -fno-trapping-math and _Decimal64 comparison)

2010-05-09  Paolo Bonzini  <bonzini@gnu.org>

PR target/43610
* optabs.c (prepare_float_lib_cmp): Allow reversing the comparison
even if !FLOAT_LIB_COMPARE_RETURNS_BOOL.  Always compute true_rtx and
false_rtx.  Use false_rtx to compute the correct *ptest for reversed
comparisons for which !FLOAT_LIB_COMPARE_RETURNS_BOOL.

From-SVN: r159813

14 years agore PR objc/44140 (ObjC lto/whopr fails)
Iain Sandoe [Tue, 25 May 2010 09:10:52 +0000 (09:10 +0000)]
re PR objc/44140 (ObjC lto/whopr fails)

PR ObjC/44140
* objc.dg/torture/tls/thr-init-3.m: XFAIL lto/whopr for all.

From-SVN: r159812

14 years agoadd TLS checks to ObjC++
Iain Sandoe [Tue, 25 May 2010 08:28:44 +0000 (08:28 +0000)]
add TLS checks to ObjC++

* obj-c++.dg/torture/tls/trivial.mm: New.
* obj-c++.dg/torture/tls/thr-init-1.mm: New.
* obj-c++.dg/torture/tls/thr-init-2.mm: New.
* obj-c++.dg/torture/tls/thr-init-3.mm: New.
* obj-c++.dg/torture/tls/diag-1.mm: New.
* obj-c++.dg/torture/tls/tls.exp: New.
* obj-c++.dg/torture/trivial.mm: New.
* obj-c++.dg/torture/dg-torture.exp: New.
* obj-c++.dg/dg.exp: Gather tests explicitly from the source dir.
* obj-c++.dg/tls/trivial.m: New.
* obj-c++.dg/tls/init-1.mm: New.
* obj-c++.dg/tls/diag-1.mm: New.
* obj-c++.dg/tls/init-2.mm: New.
* obj-c++.dg/tls/diag-2.mm: New.
* obj-c++.dg/tls/diag-3.mm: New.
* obj-c++.dg/tls/diag-4.mm: New.
* obj-c++.dg/tls/static-1.mm: New.
* obj-c++.dg/tls/tls.exp: New.
* obj-c++.dg/tls/diag-5.mm: New.
* obj-c++.dg/tls/static-1a.mm: New.
* objc-obj-c++-shared/Object1.mm: New.
* lib/obj-c++-dg.exp (obj-c++-dg-runtest): New proc.

From-SVN: r159810

14 years agodwarf2out.c (loc_descr_plus_const): When offset is negative, use DW_OP_minus with...
Jakub Jelinek [Tue, 25 May 2010 07:49:16 +0000 (09:49 +0200)]
dwarf2out.c (loc_descr_plus_const): When offset is negative, use DW_OP_minus with negated offset instead of DW_OP_plus.

* dwarf2out.c (loc_descr_plus_const): When offset is negative, use
DW_OP_minus with negated offset instead of DW_OP_plus.
(loc_list_from_tree): Don't test whether second operand is
INTEGER_CST.

From-SVN: r159809

14 years agore PR c++/18249 (C++ parser i18n problems)
Shujing Zhao [Tue, 25 May 2010 06:26:07 +0000 (06:26 +0000)]
re PR c++/18249 (C++ parser i18n problems)

2010-05-25  Shujing Zhao  <pearly.zhao@oracle.com>

        PR c++/18249
        * parser.c: Remove inclusion of dyn-string.h.
        (non_integral_constant): New enum.
        (name_lookup_error): New enum.
        (required_token): New enum.
        (cp_parser_required_error): New function.
        (cp_parser_require): Change the type of variable token_desc to
        required_token and use cp_parser_required_error.
        (cp_parser_require_keyword): Likewise.
        (cp_parser_error): Use gmsgid as parameter.
        (cp_parser_name_lookup_error): Change the type of variable desired to
        name_lookup_error and put the diagnostic in the full sentences. Change
        caller.
        (cp_parser_non_integral_constant_expression): Change the type of the
        variable thing to non_integral_constant and put the diagnostics in
        full sentences. Change caller.

From-SVN: r159808

14 years agothumb2.md (thumb2_tlobits_cbranch): Add constraint to tst instruction and a new alter...
Wei Guozhi [Tue, 25 May 2010 01:08:35 +0000 (01:08 +0000)]
thumb2.md (thumb2_tlobits_cbranch): Add constraint to tst instruction and a new alternative.

* config/arm/thumb2.md (thumb2_tlobits_cbranch): Add constraint to
tst instruction and a new alternative.
* config/arm/constraints.md (Pu): New constraint.

From-SVN: r159806

14 years agore PR objc++/43689 (const-str-5/6 fails)
Iain Sandoe [Tue, 25 May 2010 01:00:16 +0000 (01:00 +0000)]
re PR objc++/43689 (const-str-5/6 fails)

2010-05-24  Iain Sandoe  <iains@gcc.gnu.org>

PR ObjC++/43689
* obj-c++.dg/const-str-5.mm: Name pointer equivalence union.
* obj-c++.dg/const-str-6.mm: Ditto.

From-SVN: r159805

14 years agoDaily bump.
GCC Administrator [Tue, 25 May 2010 00:17:23 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159804

14 years agore PR middle-end/44100 (ICE compiling g++.dg/init/struct2.C on Tru64 UNIX V5.1B)
Eric Botcazou [Mon, 24 May 2010 22:03:09 +0000 (22:03 +0000)]
re PR middle-end/44100 (ICE compiling g++.dg/init/struct2.C on Tru64 UNIX V5.1B)

PR middle-end/44100
* typeck.c (cp_build_unary_op): Fold offsetof-like computations.

From-SVN: r159800

14 years agore PR ada/38394 (clashing assembler symbols)
Eric Botcazou [Mon, 24 May 2010 21:43:31 +0000 (21:43 +0000)]
re PR ada/38394 (clashing assembler symbols)

PR ada/38394
* gnat.dg/array13.ad[sb]: New test.

From-SVN: r159798

14 years agoFix bootstrap at -O3.
Sebastian Pop [Mon, 24 May 2010 21:14:23 +0000 (21:14 +0000)]
Fix bootstrap at -O3.

2010-05-24  Sebastian Pop  <sebastian.pop@amd.com>

* function.c (assign_stack_local_1): Initialize variable
to avoid warning when bootstrapping at -O3.

From-SVN: r159797

14 years agoconfigure.ac (all_lang_makefiles): Remove everything related to it.
Steven Bosscher [Mon, 24 May 2010 20:18:00 +0000 (20:18 +0000)]
configure.ac (all_lang_makefiles): Remove everything related to it.

* configure.ac (all_lang_makefiles): Remove everything related to it.
* configure: Regenerate.
* Makefile.in: Fix reference to ada Make-lang.in.
Remove support for LANG_MAKEFILES.

From-SVN: r159795

14 years agoneon-testgen.ml: Use dg-add-options arm_neon.
Daniel Jacobowitz [Mon, 24 May 2010 19:36:31 +0000 (19:36 +0000)]
neon-testgen.ml: Use dg-add-options arm_neon.

2010-05-24  Daniel Jacobowitz  <dan@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/arm/neon-testgen.ml: Use dg-add-options arm_neon.
* doc/sourcebuild.texi (Effective-Target Keywords): Update arm_neon_ok
description.  Add arm_neon_fp16_ok.
(Add Options): Add arm_neon and arm_neon_fp16.

gcc/testsuite/
* gcc.target/arm/neon/: Regenerated test cases.

* gcc.target/arm/neon/polytypes.c,
gcc.target/arm/neon-vmla-1.c, gcc.target/arm/neon-vmls-1.c,
gcc.target/arm/neon-cond-1.c, gcc.target/arm/neon/vfp-shift-a2t2.c,
gcc.target/arm/neon-thumb2-move.c, gcc.dg/torture/arm-fp16-ops-8.c,
gcc.dg/torture/arm-fp16-ops-7.c, g++.dg/ext/arm-fp16/arm-fp16-ops-7.C,
g++.dg/ext/arm-fp16/arm-fp16-ops-8.C, g++.dg/abi/mangle-neon.C: Use
dg-add-options arm_neon.

* gcc.target/arm/fp16-compile-vcvt.c, gcc.dg/torture/arm-fp16-ops-5.c,
gcc.dg/torture/arm-fp16-ops-6.c, g++.dg/ext/arm-fp16/arm-fp16-ops-5.C,
g++.dg/ext/arm-fp16/arm-fp16-ops-6.C: Use dg-add-options arm_neon_fp16
and arm_neon_fp16_ok.

* gcc.dg/vect/vect.exp, g++.dg/vect/vect.exp,
gfortran.dg/vect/vect.exp: Use add_options_for_arm_neon.

* lib/target-supports.exp (add_options_for_arm_neon): New.
(check_effective_target_arm_neon_ok_nocache): New, from
check_effective_target_arm_neon_ok.  Check multiple possibilities.
(check_effective_target_arm_neon_ok): Use
check_effective_target_arm_neon_ok_nocache.
(add_options_for_arm_neon_fp16)
(check_effective_target_arm_neon_fp16_ok)
check_effective_target_arm_neon_fp16_ok_nocache): New.
(check_effective_target_arm_neon_hw): Use add_options_for_arm_neon.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r159794

14 years agodiagnostic.c: Don't include flags.h.
Joseph Myers [Mon, 24 May 2010 18:55:44 +0000 (19:55 +0100)]
diagnostic.c: Don't include flags.h.

* diagnostic.c: Don't include flags.h.
(pedantic_warning_kind, permissive_error_kind): Take diagnostic
context parameters.  Check flags in the context passed as a
parameter.
(diagnostic_build_prefix): Add context parameter.  Check
show_column flag in context.
(diagnostic_action_after_output): Check fatal_errors flag in
context.
(diagnostic_report_current_module): Check show_column flag in
context.
(default_diagnostic_starter): Update call to
diagnostic_build_prefix.
(diagnostic_report_diagnostic): Pass context to
pedantic_warning_kind.
(emit_diagnostic): Pass context to permissive_error_kind.
(permerror): Pass context to permissive_error_kind.
* diagnostic.h (struct diagnostic_context): Add show_column,
pedantic_errors, permissive and fatal_errors fields.
(diagnostic_build_prefix): Update prototype.
* langhooks.c
* toplev.c (process_options): Set flags in global_dc from
flag_show_column, flag_pedantic_errors, flag_permissive,
flag_fatal_errors.
* tree-diagnostic.c (default_tree_diagnostic_starter): Update call
to diagnostic_build_prefix.
* Makefile.in (diagnostic.o): Update dependencies.

cp:
* error.c (cp_diagnostic_starter): Update call to
diagnostic_build_prefix.
(cp_print_error_function,
print_instantiation_partial_context_line): Check show_column flag
in context.

From-SVN: r159793

14 years agore PR c++/41510 ([C++0x] std::complex vs. initialization lists)
Jason Merrill [Mon, 24 May 2010 18:38:16 +0000 (14:38 -0400)]
re PR c++/41510 ([C++0x] std::complex vs. initialization lists)

PR c++/41510
* decl.c (check_initializer): Don't wrap an init-list in a
TREE_LIST.
* init.c (build_aggr_init): Don't assume copy-initialization if
init has CONSTRUCTOR_IS_DIRECT_INIT.
* call.c (build_new_method_call): Sanity check.

From-SVN: r159792

14 years agortti.c (tinfo_base_init): Use build_constructor instead of build_constructor_from_list.
Nathan Froyd [Mon, 24 May 2010 17:17:57 +0000 (17:17 +0000)]
rtti.c (tinfo_base_init): Use build_constructor instead of build_constructor_from_list.

* rtti.c (tinfo_base_init): Use build_constructor instead of
build_constructor_from_list.  Don't cons a tree node for
returning.
(generic_initializer): Use build_constructor_single instead of
build_constructor_from_list.
(ptr_initializer): Use build_constructor instead of
build_constructor_from_list
(ptm_initializer): Likewise.
(class_initializer): Likewise.  Take varargs instead of TRAIL.
(get_pseudo_ti_init): Adjust calls to class_initializer.  Use
build_constructor instead of build_constructor_from_list.

From-SVN: r159788

14 years agoDefine __crc32q only if __SSE4_2__ is defined.
H.J. Lu [Mon, 24 May 2010 15:38:31 +0000 (15:38 +0000)]
Define __crc32q only if __SSE4_2__ is defined.

2010-05-24  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/ia32intrin.h (__crc32q): Define only if
__SSE4_2__ is defined.

From-SVN: r159783

14 years agoexpr.c (quick_stack): Change type to a VEC.
Nathan Froyd [Mon, 24 May 2010 14:46:54 +0000 (14:46 +0000)]
expr.c (quick_stack): Change type to a VEC.

* expr.c (quick_stack): Change type to a VEC.  Update comment.
(tree_list_free_list): Delete.
(flush_quick_stack): Update for quick_stack type change.
(push_value): Likewise.
(pop_value): Likewise.

From-SVN: r159782

14 years agore PR target/44132 (emutls is broken under a range of circumstances.)
Iain Sandoe [Mon, 24 May 2010 14:36:32 +0000 (14:36 +0000)]
re PR target/44132 (emutls is broken under a range of circumstances.)

2010-05-24  Iain Sandoe  <iains@gcc.gnu.org>

PR target/44132
PR middle-end/43602
* varasm.c (get_emutls_init_templ_addr): Copy DECL_PRESERVE_P,
DECL_VISIBILITY_SPECIFIED.
(emutls_decl): Set DECL_PRESERVE_P and copy
DECL_VISIBILITY_SPECIFIED, DECL_RESTRICTED_P.
(emutls_finalize_control_var): New callback.
(emutls_finish): Finalize emutls control variables.
* toplev.c (compile_file): Move the call to emutls_finish ()
before varpool_assemble_pending_decls ().

From-SVN: r159781

14 years agolib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__ added to the preprocessor condition.
Daniel Gutson [Mon, 24 May 2010 13:19:51 +0000 (13:19 +0000)]
lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__ added to the preprocessor condition.

* config/arm/lib1funcs.asm (__ARM_ARCH__): __ARM_ARCH_7EM__
added to the preprocessor condition.

From-SVN: r159780

14 years agolto-elf.c (lto_obj_build_section_table): Work around FreeBSD libelf issue.
Richard Guenther [Mon, 24 May 2010 12:27:30 +0000 (12:27 +0000)]
lto-elf.c (lto_obj_build_section_table): Work around FreeBSD libelf issue.

2010-05-24  Richard Guenther  <rguenther@suse.de>

* lto-elf.c (lto_obj_build_section_table): Work around
FreeBSD libelf issue.

From-SVN: r159777

14 years agogengtype-lex.l: Add HARD_REG_SET.
Paul Brook [Mon, 24 May 2010 12:24:00 +0000 (12:24 +0000)]
gengtype-lex.l: Add HARD_REG_SET.

2010-05-25  Paul Brook  <paul@codesourcery.com>

gcc/
* gengtype-lex.l: Add HARD_REG_SET.
* expr.c (expand_expr_real_1): Record writes to hard registers.
* function.c (rtl_data): Add asm_clobbers.
* ira.c (compute_regs_asm_clobbered): Use crtl->asm_clobbers.
(ira_setup_eliminable_regset): Remove regs_asm_clobbered.
Use crtl->asm_clobbers.

gcc/testsuite/
* gcc.target/arm/frame-pointer-1.c: New test.
* gcc.target/i386/pr9771-1.c: Move code out of main to allow frame
pointer elimination.

From-SVN: r159776

14 years agoMention renamed stages for profiledbootstrap.
Ralf Wildenhues [Mon, 24 May 2010 07:25:40 +0000 (07:25 +0000)]
Mention renamed stages for profiledbootstrap.

gcc/:
* doc/makefile.texi (Makefile): Mention stages 'profile'
and 'feedback' for profiledbootstrap.

From-SVN: r159775

14 years agoDaily bump.
GCC Administrator [Mon, 24 May 2010 00:17:22 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r159774

14 years agoProperly check OPTION_MASK_ISA_64BIT.
H.J. Lu [Sun, 23 May 2010 21:57:13 +0000 (21:57 +0000)]
Properly check OPTION_MASK_ISA_64BIT.

gcc/

2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44245
* config/i386/i386.c (def_builtin): Properly check
OPTION_MASK_ISA_64BIT.

gcc/testsuite/

2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

PR target/44245
* gcc.target/i386/crc32-3.c: New.
* gcc.target/i386/crc32-4.c: Likewise.

From-SVN: r159768

14 years agoc-decl.c (diagnose_mismatched_decls): Give error for duplicate typedefs with differen...
Joseph Myers [Sun, 23 May 2010 20:47:16 +0000 (21:47 +0100)]
c-decl.c (diagnose_mismatched_decls): Give error for duplicate typedefs with different but compatible types.

* c-decl.c (diagnose_mismatched_decls): Give error for duplicate
typedefs with different but compatible types.  Allow duplicate
typedefs with the same type except for pedantic non-C1X, but give
warning for variably modified types.
* c-typeck.c (tagged_types_tu_compatible_p,
function_types_compatible_p, type_lists_compatible_p,
comptypes_internal): Add parameter different_types_p; set
*different_types_p for different but compatible types.  All
callers changed.
(comptypes_check_different_types): New.
* c-tree.h (comptypes_check_different_types): Declare.

testsuite:
* gcc.dg/c1x-typedef-1.c, gcc.dg/c1x-typedef-2.c,
gcc.dg/c90-typedef-1.c, gcc.dg/c99-typedef-1.c: New tests.
* gcc.dg/decl-8.c: Use -std=gnu89 -pedantic-errors.

From-SVN: r159767

14 years agoMove "dg-do run" before lp64.
H.J. Lu [Sun, 23 May 2010 19:37:23 +0000 (19:37 +0000)]
Move "dg-do run" before lp64.

2010-05-23  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.c-target/pr43869.c: Move "dg-do run" before lp64.

From-SVN: r159765

14 years agojava-gimplify.c: Do not include tm.h, toplev.h.
Steven Bosscher [Sun, 23 May 2010 17:48:41 +0000 (17:48 +0000)]
java-gimplify.c: Do not include tm.h, toplev.h.

* java-gimplify.c: Do not include tm.h, toplev.h.
* typeck.c: Do not include tm.h.
* mangle_name.c: Do not include tm.h.
* jcf-dump.c: Do not include tm.h, ggc.h.
* class.c: Do not include rtl.h, tm_p.h, target.h, except.h, cgraph.h.
* decl.c: Do not include tm.h, rtl.h, function.h, expr.h, except.h,
and timevar.h.
* jcf-parse.c: Do not include tm.h and tm_p.h.
* resource.c: Do not include tm.h, rtl.h, flags.h, obstack.h,
target.h, and expr.h.
* except.c: Do not include tm.h, rtl.h, function.h.
* builtins.c: Do not include convert.h.  Explain why RTL headers
have to be included here.
* verify-glue.c: Do not include tm.h.
* jcf-depend.c: Do not include tm.h.
* jcf-reader.c: Include ggc.h.
* jcf-io.c: Do not include tm.h, toplev.h.
* expr.c: Do not include tm.h, rtl.h, expr.h, except.h, tm_p.h,
gimple.h.
* lang.c: Do not include rtl.h, expr.h.
* Make-lang.in: Update dependencies.

From-SVN: r159764

14 years agogfortran.h: Do not include system.h.
Tobias Burnus [Sun, 23 May 2010 17:18:24 +0000 (19:18 +0200)]
gfortran.h: Do not include system.h.

2010-05-21  Tobias Burnus  <burnus@net-b.de>

        * gfortran.h: Do not include system.h.
        * bbt.c: Include system.h.
        * data.c: Ditto.
        * dependency.c: Ditto.
        * dump-parse-tree.c: Ditto.
        * arith.h: Do not include gfortran.h.
        * constructor.h: Do not include gfortran.h and splay-tree.h.
        * match.h: Do not include gfortran.h.
        * parse.h: Ditto.
        * target-memory.h: Ditto.
        * openmp.c: Do not include toplev.h and target.h.
        * trans-stmt.c: Ditto not include toplev.h.
        * primary.c: Ditto.
        * trans-common.c: Tell why toplev.h is needed. And
        do not include target.h.
        * trans-expr.c: Tell why toplev.h is needed.
        * trans-array.c: Ditto.
        * trans-openmp.c: Ditto.
        * trans-const.c: Ditto.
        * trans.c: Ditto.
        * trans-types.c: Ditto.
        * trans-io.c: Ditto.
        * trans-decl.c: Ditto.
        * scanner.c: Ditto.
        * convert.c: Ditto.
        * trans-intrinsic.c: Ditto.
        * options.c: Ditto.

From-SVN: r159763

14 years agoFix another botched commit.
Steven Bosscher [Sun, 23 May 2010 15:46:54 +0000 (15:46 +0000)]
Fix another botched commit.

From-SVN: r159762

14 years agoregs.h: Do not include obstack.h, basic-block.h.
Steven Bosscher [Sun, 23 May 2010 15:40:15 +0000 (15:40 +0000)]
regs.h: Do not include obstack.h, basic-block.h.

* regs.h: Do not include obstack.h, basic-block.h.
Include machmode.h.
* jump.c: Include basic-block.h.
* profile.c: Likewise.
* tree-profile.c: Likewise.
* coverage.c: Likewise.
* basic-block.h (optimize_function_for_size_p): Move to function.h.
(optimize_function_for_speed_p): Likewise.
* function.h (optimize_function_for_size_p,
optimize_function_for_speed_p): Moved here from basic-block.h.

From-SVN: r159761

14 years agoHonor $MAKE for -fwhopr=; do not honor $MAKEFLAGS, $MFLAGS.
Ralf Wildenhues [Sun, 23 May 2010 14:36:07 +0000 (14:36 +0000)]
Honor $MAKE for -fwhopr=; do not honor $MAKEFLAGS, $MFLAGS.

gcc/:
* lto-wrapper.c (run_gcc): Unset MAKEFLAGS and MFLAGS
before calling make; allow override through $MAKE.
* doc/invoke.texi (Optimize Options): Document override.

From-SVN: r159760

14 years agors6000.c (rs6000_mode_dependent_address_p): New.
Anatoly Sokolov [Sun, 23 May 2010 08:52:21 +0000 (12:52 +0400)]
rs6000.c (rs6000_mode_dependent_address_p): New.

* config/rs6000/rs6000.c (rs6000_mode_dependent_address_p): New.
(TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
(rs6000_mode_dependent_address_ptr): Make static.
* config/rs6000/rs6000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
* config/rs6000/rs6000-protos.h (rs6000_mode_dependent_address_ptr):
Remove.

From-SVN: r159759

14 years agoFix typo in name.
Kai Tietz [Sun, 23 May 2010 07:06:25 +0000 (09:06 +0200)]
Fix typo in name.

From-SVN: r159758

14 years agore PR target/43869 (ms_abi -> sysv_abi passing float arguments incorrectly)
Maarten Lankhorst [Sun, 23 May 2010 06:52:32 +0000 (08:52 +0200)]
re PR target/43869 (ms_abi -> sysv_abi passing float arguments incorrectly)

2010-05-23  Naarten Lankhorst  <mlankhorst@codeweavers.com>

        PR target/43869
        * config/i386/i386.c: Make sure that the correct regparm is passed.

From-SVN: r159755