GCC Administrator [Wed, 13 Apr 2011 00:18:51 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172353
Janis Johnson [Tue, 12 Apr 2011 22:47:54 +0000 (22:47 +0000)]
pr43698.c: Remove -march option.
For
2011-04-12 Janis Johnson <janisjo@codesourcery.com>
* gcc.target/arm/pr43698.c: Remove -march option.
From-SVN: r172348
Janis Johnson [Tue, 12 Apr 2011 22:43:22 +0000 (22:43 +0000)]
For Janis Johnson
2011-04-12 Janis Johnson <janisjo@codesourcery.com>
* gcc.target/arm/sync-1.c: Limit to sync_int_long, do not use
-march option.
From-SVN: r172347
Pat Haugen [Tue, 12 Apr 2011 20:59:41 +0000 (20:59 +0000)]
rs6000.c (call_ABI_of_interest): Call cgraph_get_create_node instead of cgraph_node.
* config/rs6000/rs6000.c (call_ABI_of_interest): Call
cgraph_get_create_node instead of cgraph_node.
From-SVN: r172345
Janne Blomqvist [Tue, 12 Apr 2011 19:27:49 +0000 (22:27 +0300)]
Cleanup memsize types
From-SVN: r172340
Paul Thomas [Tue, 12 Apr 2011 19:14:49 +0000 (19:14 +0000)]
re PR fortran/48360 (ICE on array assignment statement with allocatable LHS)
2011-04-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/48360
PR fortran/48456
* trans-array.c (get_std_lbound): For derived type variables
return array valued component lbound.
2011-04-12 Paul Thomas <pault@gcc.gnu.org>
PR fortran/48360
PR fortran/48456
* gfortran.dg/realloc_on_assign_6.f03: New test.
From-SVN: r172339
Nicola Pero [Tue, 12 Apr 2011 19:02:14 +0000 (19:02 +0000)]
In gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* c-parser.c (c_parser_initelt): Updated call to
objc_build_message_expr.
(c_parser_postfix_expression): Likewise.
In gcc/c-family/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* c-objc.h (objc_build_message_expr): Updated prototype.
* stub-objc.c (objc_build_message_expr): Likewise.
In gcc/objc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_build_message_expr): Accept two arguments
instead of one so that callers can simply pass the arguments
without having to create a temporary chain to hold them.
In gcc/cp/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* parser.c (cp_parser_objc_message_expression): Updated call
to objc_build_message_expr.
From-SVN: r172338
Nicola Pero [Tue, 12 Apr 2011 18:53:08 +0000 (18:53 +0000)]
In gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (comp_proto_with_proto): Do not create and use
inefficient temporary argument lists. Compare the arguments
directly. (match_proto_with_proto): Removed; incorporated into
comp_proto_with_proto ().
From-SVN: r172337
Kai Tietz [Tue, 12 Apr 2011 18:52:41 +0000 (20:52 +0200)]
ChangeLog gcc/
2011-04-12 Kai Tietz <ktietz@redhat.com>
* config/i386/mingw32.h (TARGET_SUBTARGET_DEFAULT): Add
MASK_MS_BITFIELD_LAYOUT bit.
ChangeLog gcc/testsuite
2011-04-12 Kai Tietz <ktietz@redhat.com>
* g++.dg/ext/bitfield2.C: Add for i?86/x86_64-*-mingw*
targets the additional -mno-ms-bitfields and
-Wno-packed-bitfield-compat options.
* g++.dg/ext/bitfield3.C: Likewise.
* g++.dg/ext/bitfield4.C: Likewise.
* g++.dg/ext/bitfield5.C: Likewise.
* gcc.dg/bitfld-15.c: Likewise.
* gcc.dg/bitfld-16.c: Likewise.
* gcc.dg/bitfld-17.c: Likewise.
* gcc.dg/bitfld-18.c: Likewise.
From-SVN: r172336
Ian Lance Taylor [Tue, 12 Apr 2011 18:51:12 +0000 (18:51 +0000)]
Call cgraph_get_node rather than cgraph_node.
This is for a recent change to the gcc middle-end.
From-SVN: r172335
Nicola Pero [Tue, 12 Apr 2011 18:35:47 +0000 (18:35 +0000)]
Fixed my email address in a ChangeLog entry of a few months ago
From-SVN: r172334
Janne Blomqvist [Tue, 12 Apr 2011 18:10:28 +0000 (21:10 +0300)]
Remove _GNU_SOURCE from AM_CPPFLAGS
From-SVN: r172330
Jakub Jelinek [Tue, 12 Apr 2011 17:49:11 +0000 (19:49 +0200)]
combine.c (update_cfg_for_uncondjump): Instead of testing at_end assert it is always true.
* combine.c (update_cfg_for_uncondjump): Instead of testing at_end
assert it is always true.
(try_combine): Don't call update_cfg_for_uncondjump for noop non-jump
moves.
From-SVN: r172329
Nicola Pero [Tue, 12 Apr 2011 17:37:39 +0000 (17:37 +0000)]
In gcc/objc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (printable_ivar_name): New.
(add_instance_variable): Call printable_ivar_name() when an error
message needs to be printed. Do not prepare the instance variable
for printing unless there is an actual error.
From-SVN: r172328
Nicola Pero [Tue, 12 Apr 2011 16:45:40 +0000 (16:45 +0000)]
In gcc/: 2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* c-parser.c (c_lex_one_token): Rewritten conditional used when
compiling Objective-C to be more efficient.
In gcc/objc/:
2011-04-12 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_is_class_name, objc_is_id): For efficiency,
avoid calling identifier_global_value() multiple times.
From-SVN: r172327
Axel Freyn [Tue, 12 Apr 2011 16:29:23 +0000 (16:29 +0000)]
opts-common.c (decode_cmdline_options_to_array): Remove variable argv_copied.
2011-04-12 Axel Freyn <axel-freyn@gmx.de>
* opts-common.c (decode_cmdline_options_to_array): Remove variable
argv_copied.
From-SVN: r172325
Yufeng Zhang [Tue, 12 Apr 2011 16:19:10 +0000 (16:19 +0000)]
ChangeLog: Add the mising change log for my previous commit.
2011-04-12 Yufeng Zhang <yufeng.zhang@arm.com>
* ChangeLog: Add the mising change log for my previous commit.
From-SVN: r172324
Yufeng Zhang [Tue, 12 Apr 2011 16:03:39 +0000 (16:03 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2011-04-12 Yufeng Zhang <yufeng.zhang@arm.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r172323
Richard Sandiford [Tue, 12 Apr 2011 14:56:57 +0000 (14:56 +0000)]
* recog.h, genoutput.c, optabs.c: Revert last patch.
From-SVN: r172321
Ramana Radhakrishnan [Tue, 12 Apr 2011 13:42:48 +0000 (13:42 +0000)]
re PR target/48090 (gcc 4.5.2 miscompilation when building on arm)
Fix PR target/48090
2011-04-12 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
PR target/48090
* config/arm/arm.md (*arm_negdi2): Fix early clobber constraints.
From-SVN: r172318
Richard Sandiford [Tue, 12 Apr 2011 12:51:28 +0000 (12:51 +0000)]
recog.h (insn_operand_data): Add an "allows_mem" field.
gcc/
* recog.h (insn_operand_data): Add an "allows_mem" field.
* genoutput.c (output_operand_data): Initialize it.
* optabs.c (maybe_legitimize_operand_same_code): New function.
(maybe_legitimize_operand): Use it when matching the original
op->value.
From-SVN: r172316
Richard Sandiford [Tue, 12 Apr 2011 12:51:10 +0000 (12:51 +0000)]
genpreds.c (process_define_predicate): Move most processing to gensupport.c.
gcc/
* genpreds.c (process_define_predicate): Move most processing
to gensupport.c. Continue to validate the expression.
* genrecog.c (did_you_mean_codes, compute_predicate_codes)
(process_define_predicate): Move processing to gensupport.c.
(main): Remove DEFINE_PREDICATE and DEFINE_SPECIAL_PREDICATE cases.
* gensupport.c (did_you_mean_codes): Moved from genrecog.c.
(compute_predicate_codes): Moved from genrecog.c. Add lineno
argument.
(valid_predicate_name_p): New function, split out from old
genpreds.c:process_define_predicate.
(process_define_predicate): New function, combining code from
old genpreds.c and genrecog.c functions.
(process_rtx): Call it for DEFINE_PREDICATE and
DEFINE_SPECIAL_PREDICATE.
From-SVN: r172315
Richard Sandiford [Tue, 12 Apr 2011 12:19:38 +0000 (12:19 +0000)]
arm.c (arm_print_operand): Use MEM_SIZE to get the size of a '%A' memory reference.
gcc/
* config/arm/arm.c (arm_print_operand): Use MEM_SIZE to get the
size of a '%A' memory reference.
(T_DREG, T_QREG): New neon_builtin_type_bits.
(arm_init_neon_builtins): Assert that the load and store operands
are neon_struct_operands.
(locate_neon_builtin_icode): Provide the neon_builtin_type_bits.
(NEON_ARG_MEMORY): New builtin_arg.
(neon_dereference_pointer): New function.
(arm_expand_neon_args): Add a neon_builtin_type_bits argument.
Handle NEON_ARG_MEMORY.
(arm_expand_neon_builtin): Update after above interface changes.
Use NEON_ARG_MEMORY for loads and stores.
* config/arm/predicates.md (neon_struct_operand): New predicate.
* config/arm/iterators.md (V_two_elem): Tweak formatting.
(V_three_elem): Use BLKmode for accesses that have no associated mode.
(V_four_elem): Tweak formatting.
* config/arm/neon.md (neon_vld1<mode>, neon_vld1_dup<mode>)
(neon_vst1_lane<mode>, neon_vst1<mode>, neon_vld2<mode>)
(neon_vld2_lane<mode>, neon_vld2_dup<mode>, neon_vst2<mode>)
(neon_vst2_lane<mode>, neon_vld3<mode>, neon_vld3_lane<mode>)
(neon_vld3_dup<mode>, neon_vst3<mode>, neon_vst3_lane<mode>)
(neon_vld4<mode>, neon_vld4_lane<mode>, neon_vld4_dup<mode>)
(neon_vst4<mode>): Replace pointer operand with a memory operand.
Use %A in the output template.
(neon_vld3qa<mode>, neon_vld3qb<mode>, neon_vst3qa<mode>)
(neon_vst3qb<mode>, neon_vld4qa<mode>, neon_vld4qb<mode>)
(neon_vst4qa<mode>, neon_vst4qb<mode>): Likewise, but halve
the width of the memory access. Remove post-increment.
* config/arm/neon-testgen.ml: Allow addresses to have an alignment.
gcc/testsuite/
* gcc.target/arm/neon-vld3-1.c: New test.
* gcc.target/arm/neon-vst3-1.c: New test.
* gcc.target/arm/neon/v*.c: Regenerate.
From-SVN: r172314
Nick Clifton [Tue, 12 Apr 2011 11:34:26 +0000 (11:34 +0000)]
v850.c (expand_prologue): Do not use the CALLT instruction for interrupt handlers if...
* config/v850/v850.c (expand_prologue): Do not use the CALLT
instruction for interrupt handlers if the target is the basic V850
architecture.
(expand_epilogue): Likewise.
From-SVN: r172313
Jakub Jelinek [Tue, 12 Apr 2011 10:53:47 +0000 (12:53 +0200)]
re PR rtl-optimization/48549 (Combiner ICE with -g)
PR rtl-optimization/48549
* combine.c (propagate_for_debug): Also stop after BB_END of
this_basic_block. Process LAST and just stop processing after it.
(combine_instructions): If last_combined_insn has been deleted,
set last_combined_insn to its PREV_INSN.
* g++.dg/opt/pr48549.C: New test.
From-SVN: r172311
Richard Guenther [Tue, 12 Apr 2011 10:44:15 +0000 (10:44 +0000)]
re PR tree-optimization/46076 (constant propagation and compile-time math no longer happening versus 4.4 and 4.5)
2011-04-12 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46076
* gimple.h (struct gimple_statement_call): Add fntype field.
(gimple_call_fntype): Adjust.
(gimple_call_set_fntype): New function.
* gimple.c (gimple_build_call_1): Set the call function type.
* gimplify.c (gimplify_call_expr): Preserve the function
type the frontend used for the call.
(gimplify_modify_expr): Likewise.
* lto-streamer-in.c (input_gimple_stmt): Input the call stmts
function type.
* lto-streamer-out.c (output_gimple_stmt): Output the call stmts
function type.
* tree-ssa.c (useless_type_conversion_p): Function pointer
conversions are useless.
* gcc.dg/tree-ssa/pr46076.c: Un-XFAIL.
From-SVN: r172310
Takaya Saito [Tue, 12 Apr 2011 10:31:33 +0000 (10:31 +0000)]
re PR libstdc++/48476 ([C++0x] conversion between std::tuple which have reference member is rejected)
2011-04-12 Takaya Saito <gintensubaru@gmail.com>
PR libstdc++/48476
* include/std/tuple (_Tuple_impl<>::_Tuple_impl(_Tuple_impl<>&&),
_Tuple_impl<>::operator=(_Tuple_impl&&), _Tuple_impl<>::operator=
(_Tuple_impl<>&&), tuple_cat): Use std::forward where appropriate.
* testsuite/20_util/tuple/cons/48476.cc: New.
* testsuite/20_util/tuple/48476.cc: Likewise.
* testsuite/20_util/tuple/creation_functions/48476.cc: Likewise.
From-SVN: r172309
Martin Jambor [Tue, 12 Apr 2011 10:02:31 +0000 (12:02 +0200)]
class.c (cp_fold_obj_type_ref): Call cgraph_get_node instead of cgraph_get_create_node.
2011-04-12 Martin Jambor <mjambor@suse.cz>
gcc/cp/
* class.c (cp_fold_obj_type_ref): Call cgraph_get_node instead of
cgraph_get_create_node.
* decl2.c (cp_write_global_declarations): Call cgraph_get_node
instead of cgraph_get_create_node.
* method.c (make_alias_for_thunk): Call cgraph_get_node
instead of cgraph_get_create_node, assert it returns non-NULL.
(use_thunk): Likewise.
* optimize.c (maybe_clone_body): Call cgraph_same_body_alias only
when flag_syntax_only is not set. Call cgraph_get_node instead of
cgraph_get_create_node.
(maybe_clone_body): Call cgraph_get_node instead of
cgraph_get_create_node.
From-SVN: r172308
Martin Jambor [Tue, 12 Apr 2011 09:27:18 +0000 (11:27 +0200)]
cgraph.h (cgraph_node): Remove function declaration.
2011-04-12 Martin Jambor <mjambor@suse.cz>
* cgraph.h (cgraph_node): Remove function declaration.
(cgraph_create_node): Declare.
(cgraph_get_create_node): Likewise.
* cgraph.c (cgraph_create_node): Renamed to cgraph_create_node_1.
Updated all callers.
(cgraph_node): Renamed to cgraph_create_node, assert that a node for
the decl does not already exist. Call cgraph_get_create_node instead
of cgraph_node.
(cgraph_get_create_node): New function.
(cgraph_same_body_alias): Update comment.
(cgraph_set_call_stmt): Call cgraph_get_node instead of cgraph_node,
assert it does not return NULL.
(cgraph_update_edges_for_call_stmt): Likewise.
(cgraph_clone_edge): Likewise.
(cgraph_create_virtual_clone): Likewise.
(cgraph_update_edges_for_call_stmt_node): Call cgraph_get_create_node
instead of cgraph_node.
(cgraph_add_new_function): Call cgraph_create_node or
cgraph_get_create_node instead of cgraph_node.
* cgraphbuild.c (record_reference): Call cgraph_get_create_node
instead of cgraph_node.
(record_eh_tables): Likewise.
(mark_address): Likewise.
(mark_load): Likewise.
(build_cgraph_edges): Call cgraph_get_create_node instead
of cgraph_node.
(rebuild_cgraph_edges): Likewise.
* cgraphunit.c (cgraph_finalize_function): Call cgraph_get_create_node
instead of cgraph_node.
(cgraph_copy_node_for_versioning): Call cgraph_create_node instead of
cgraph_node.
* lto-symtab.c (lto_symtab_merge_cgraph_nodes_1): Call
cgraph_create_node instead of cgraph_node.
* c-decl.c (finish_function): Call cgraph_get_create_node instead
of cgraph_node.
* lto-cgraph.c (input_node): Likewise.
* lto-streamer-in.c (input_function): Likewise.
* varasm.c (mark_decl_referenced): Likewise.
(assemble_alias): Likewise.
gcc/c-family/
* c-gimplify.c (c_genericize): Call cgraph_get_create_node instead
of cgraph_node.
gcc/cp/
* cp/class.c (cp_fold_obj_type_ref): Call cgraph_get_create_node
instead of cgraph_node.
* cp/decl2.c (cxx_callgraph_analyze_expr): Likewise.
(cp_write_global_declarations): Likewise.
* cp/optimize.c (maybe_clone_body): Likewise.
* cp/semantics.c (maybe_add_lambda_conv_op): Likewise.
* cp/mangle.c (mangle_decl): Likewise.
* cp/method.c (make_alias_for_thunk): Likewise.
(use_thunk): Likewise.
gcc/ada/
* gcc-interface/utils.c (end_subprog_body): Call
cgraph_get_create_node instead of cgraph_node.
gcc/fortran/
* trans-decl.c (gfc_generate_function_code): Call
cgraph_get_create_node instead of cgraph_node.
gcc/objc/
* objc-act.c (mark_referenced_methods): Call cgraph_get_create_node
instead of cgraph_node.
From-SVN: r172307
Martin Jambor [Tue, 12 Apr 2011 09:12:58 +0000 (11:12 +0200)]
tree-inline.c (tree_function_versioning): Call cgraph_get_node instead of cgraph_node and assert it does not return NULL.
2011-04-12 Martin Jambor <mjambor@suse.cz>
* tree-inline.c (tree_function_versioning): Call cgraph_get_node
instead of cgraph_node and assert it does not return NULL.
* lto-streamer-in.c (lto_read_body): Likewise.
* omp-low.c (new_omp_context): Likewise.
(create_task_copyfn): Likewise.
* tree-emutls.c (lower_emutls_function_body): Likewise.
* matrix-reorg.c (transform_allocation_sites): Likewise.
From-SVN: r172306
Paolo Carlini [Tue, 12 Apr 2011 09:05:30 +0000 (09:05 +0000)]
re PR libstdc++/48566 (libstdc++-v3 testsuite failures due to missing includes)
2011-04-12 Allan McRae <allan@archlinux.org>
PR libstdc++/48566
* testsuite/tr1/6_containers/unordered_map/requirements/
iterator_null_neg.cc: Include <cstddef>.
* testsuite/tr1/6_containers/unordered_set/requirements/
iterator_null_neg.cc: Likewise.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/4.cc: Include
<cstring>.
* testsuite/util/testsuite_common_types.h: Include <limits>.
* testsuite/29_atomics/atomic_integral/cons/assign_neg.cc:
Adjust dg-error line numbers.
* testsuite/29_atomics/atomic_integral/cons/copy_neg.cc: Likewise.
* testsuite/29_atomics/atomic_integral/operators/increment_neg.cc:
Likewise.
* testsuite/29_atomics/atomic_integral/operators/bitwise_neg.cc:
Likewise.
* testsuite/29_atomics/atomic_integral/operators/decrement_neg.cc:
Likewise.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Likewise.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Likewise.
From-SVN: r172303
Rainer Orth [Tue, 12 Apr 2011 09:04:05 +0000 (09:04 +0000)]
re PR testsuite/21164 (libjava tests uses absolute paths)
libjava:
PR testsuite/21164
* testsuite/lib/libjava.exp: Load dg.exp.
* testsuite/libjava.jar/jar.exp (gcj_jar_interpret): Strip srcdir
from jarfile.
Use result for messages.
* testsuite/libjava.loader/loader.exp (gcj_loader_test_one): Pass
errname to libjava_invoke, fix testname.
gcc:
PR testsuite/21164
* lib/compat.exp (compat-execute): Declare unsupported after
stripping path from src1.
* lib/lto.exp (lto-execute): Likewise.
From-SVN: r172302
Jakub Jelinek [Tue, 12 Apr 2011 06:43:12 +0000 (08:43 +0200)]
re PR c/48517 (ICE in build_unary_op, at c-typeck.c:3786)
PR c/48517
* c-typeck.c (store_init_value): Set TREE_TYPE (decl) to
qualified type.
* gcc.c-torture/compile/pr48517.c: New test.
From-SVN: r172299
Jakub Jelinek [Tue, 12 Apr 2011 06:27:23 +0000 (08:27 +0200)]
re PR c/48552 (ICE with void type expressions in asm inputs/outputs)
PR c/48552
* c-typeck.c (build_asm_expr): Error out on attempts to use
void type outputs or inputs for constraints that allow reg or
don't allow memory.
* gcc.dg/pr48552-1.c: New test.
* gcc.dg/pr48552-2.c: New test.
From-SVN: r172298
Chung-Lin Tang [Tue, 12 Apr 2011 04:42:55 +0000 (04:42 +0000)]
re PR target/48250 (ICE in reload_cse_simplify_operands, at postreload.c:403)
2011-04-11 Chung-Lin Tang <cltang@codesourcery.com>
Richard Earnshaw <rearnsha@arm.com>
PR target/48250
* config/arm/arm.c (arm_legitimize_reload_address): Update cases
to use sign-magnitude offsets. Reject unsupported unaligned
cases. Add detailed description in comments.
* config/arm/arm.md (reload_outdf): Disable for ARM mode; change
condition from TARGET_32BIT to TARGET_ARM.
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r172297
Nathan Froyd [Tue, 12 Apr 2011 02:18:41 +0000 (02:18 +0000)]
tree.h (struct typed_tree): New.
* tree.h (struct typed_tree): New.
(struct tree_common): Include it instead of tree_base.
(TREE_TYPE): Update for new location of type field.
(TYPE_USER_ALIGN, TYPE_PACKED): Refer to base field directly.
(DECL_USER_ALIGN, DECL_PACKED): Likewise.
(union tree_node): Add typed field.
* treestruct.def (TS_TYPED): New.
* lto-streamer.c (check_handled_ts_structures): Handle it.
* tree.c (MARK_TS_TYPED): New macro.
(MARK_TS_COMMON): Call it instead of MARK_TS_BASE.
From-SVN: r172295
GCC Administrator [Tue, 12 Apr 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172292
Jason Merrill [Mon, 11 Apr 2011 22:01:04 +0000 (18:01 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
PR c++/48535
* decl.c (cp_complete_array_type_or_error): New.
* semantics.c (finish_compound_literal): Use it.
* cp-tree.h: Declare it.
From-SVN: r172287
Jason Merrill [Mon, 11 Apr 2011 22:00:53 +0000 (18:00 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
PR c++/48535
* semantics.c (finish_compound_literal): Handle references.
From-SVN: r172286
Jason Merrill [Mon, 11 Apr 2011 22:00:42 +0000 (18:00 -0400)]
re PR c++/48535 ([C++0x][SFINAE] Hard errors during list-value-initialization)
PR c++/48535
* semantics.c (finish_compound_literal): Take complain parm.
(build_lambda_object): Adjust.
* cp-tree.h: Adjust.
* call.c (convert_like_real): Adjust.
* decl.c (check_initializer): Adjust.
* parser.c (cp_parser_postfix_expression): Adjust.
(cp_parser_functional_cast): Adjust.
* pt.c (tsubst_copy_and_build): Adjust.
* typeck2.c (process_init_constructor_record): Adjust.
From-SVN: r172285
Jason Merrill [Mon, 11 Apr 2011 22:00:31 +0000 (18:00 -0400)]
re PR c++/48534 ([C++0x][SFINAE] Compiler break down on explicit scoped enum => bool conversion)
PR c++/48534
* cvt.c (ocp_convert): Use build_nop to convert to underlying type
of scoped enum.
From-SVN: r172284
Jason Merrill [Mon, 11 Apr 2011 22:00:20 +0000 (18:00 -0400)]
re PR c++/48523 ([C++0x] lambda cannot capture 'this' in class template)
PR c++/48523
* tree.c (maybe_dummy_object): Use build_x_indirect_ref rather
than cp_build_indirect_ref.
From-SVN: r172283
Jason Merrill [Mon, 11 Apr 2011 22:00:06 +0000 (18:00 -0400)]
PR c++/48457, Core 1238
PR c++/48457, Core 1238
* call.c (reference_binding): Allow rvalue reference to bind to
function lvalue.
* tree.c (lvalue_kind): Functions are always lvalues.
From-SVN: r172282
Eric Botcazou [Mon, 11 Apr 2011 21:54:59 +0000 (21:54 +0000)]
cfghooks.c (redirect_edge_and_branch_force): Localize variable.
* cfghooks.c (redirect_edge_and_branch_force): Localize variable.
(force_nonfallthru): Do not alter the loop nest if no basic block
was created.
From-SVN: r172281
Uros Bizjak [Mon, 11 Apr 2011 21:39:40 +0000 (23:39 +0200)]
sse.md (VI): New mode iterator.
* config/i386/sse.md (VI): New mode iterator.
(SSEMODEI): Remove.
(AVX256MODEI): Ditto.
(AVXMODEF4P): Ditto.
(avxvecpsmode): Ditto.
(one_cmpl<mode>2): Enable for TARGET_SSE. Use VI mode iterator.
(sse2_andnot<mode>3): New expander.
(*andnot<mode>3): Merge with *sse2_andnot<mode>3 and
*avx_andnot<mode>3. Enable for TARGET_SSE. Use VI mode iterator.
(<any_logic:code><mode>3): Use VI mode iterator.
(*<any_logic:code><mode>3): Merge with *sse2_<any_logic:code><mode>3
and *avx_<any_logic:code><mode>3. Use VI mode iterator.
(*andnottf3): Handle AVX three-operand constraints.
(*<any_logic:code>tf3): Handle AVX three-operand constraints.
From-SVN: r172280
Joseph Myers [Mon, 11 Apr 2011 21:22:36 +0000 (22:22 +0100)]
config.gcc (x86_64-*-kfreebsd*-gnu): Use i386/kfreebsd-gnu.h.
2011-04-11 Joseph Myers <joseph@codesourcery.com>
Robert Millan <rmh@gnu.org>
* config.gcc (x86_64-*-kfreebsd*-gnu): Use i386/kfreebsd-gnu.h.
* config/i386/kfreebsd-gnu.h (GNU_USER_DYNAMIC_LINKER32,
GNU_USER_DYNAMIC_LINKER64): Define.
(REG_NAME): Don't undefine.
(MD_UNWIND_SUPPORT): Undefine.
* config/i386/knetbsd-gnu.h (GNU_USER_LINK_EMULATION): Define.
(REG_NAME): Don't undefine.
(MD_UNWIND_SUPPORT): Undefine.
* config/i386/kopensolaris-gnu.h (GNU_USER_LINK_EMULATION):
Define.
Co-Authored-By: Robert Millan <rmh@gnu.org>
From-SVN: r172279
Joseph Myers [Mon, 11 Apr 2011 21:21:49 +0000 (22:21 +0100)]
gnu.h (GNU_USER_LINK_EMULATION): Define.
* config/i386/gnu.h (GNU_USER_LINK_EMULATION): Define.
(CPP_SPEC, CC1_SPEC, ENDFILE_SPEC): Remove.
From-SVN: r172278
Xinliang David Li [Mon, 11 Apr 2011 20:37:57 +0000 (20:37 +0000)]
sanity check ic target
From-SVN: r172276
Basile Starynkevitch [Mon, 11 Apr 2011 19:31:50 +0000 (19:31 +0000)]
Makefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h tree-pretty-print.h & realmpfr.h.
2011-04-11 Basile Starynkevitch <basile@starynkevitch.net>
* Makefile.in (PLUGIN_HEADERS): Add gimple-pretty-print.h
tree-pretty-print.h & realmpfr.h.
From-SVN: r172275
Vladimir Makarov [Mon, 11 Apr 2011 19:23:13 +0000 (19:23 +0000)]
re PR middle-end/48464 (@171649: ICE in setup_pressure_classes, at ira.c:877)
2011-04-11 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/48464
* ira.c (setup_pressure_classes): Fix typo in loop condition.
(setup_allocno_and_important_classes): Ditto.
From-SVN: r172274
Joseph Myers [Mon, 11 Apr 2011 18:46:05 +0000 (19:46 +0100)]
linux-elf.h (LINUX_DYNAMIC_LINKER): Rename to GNU_USER_DYNAMIC_LINKER.
* config/alpha/linux-elf.h (LINUX_DYNAMIC_LINKER): Rename to
GNU_USER_DYNAMIC_LINKER.
* config/arm/linux-eabi.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Change
LINUX_DYNAMIC_LINKER to GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/bfin/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/bfin/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/cris/linux.h (CRIS_LINK_SUBTARGET_SPEC): Change
LINUX_DYNAMIC_LINKER to GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/frv/linux.h (LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/gnu-user.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/gnu-user64.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/i386/linux.h (GNU_USER_DYNAMIC_LINKER): Remove.
* config/i386/linux64.h (GNU_USER_DYNAMIC_LINKER32,
GNU_USER_DYNAMIC_LINKER64): Remove.
* config/ia64/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/kfreebsd-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/knetbsd-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/kopensolaris-gnu.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename
to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/linux.h (LINUX_TARGET_OS_CPP_BUILTINS): Rename to
GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINUX_DYNAMIC_LINKER): Rename to GNU_USER_DYNAMIC_LINKER.
(LINUX_DYNAMIC_LINKER32): Rename to GNU_USER_DYNAMIC_LINKER32.
(LINUX_DYNAMIC_LINKER64): Rename to GNU_USER_DYNAMIC_LINKER64.
* config/lm32/uclinux-elf.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/m32r/linux.h (LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
(TARGET_OS_CPP_BUILTINS): Change LINUX_TARGET_OS_CPP_BUILTINS to
GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/m68k/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/m68k/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/mips/linux64.h (LINUX_DYNAMIC_LINKERN32): Rename to
GNU_USER_DYNAMIC_LINKERN32.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKERN32 to
GNU_USER_DYNAMIC_LINKERN32. Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64. Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32.
* config/mn10300/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/moxie/uclinux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/pa/pa-linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/rs6000/linux64.h (LINUX_DYNAMIC_LINKER32): Rename to
GNU_USER_DYNAMIC_LINKER32.
(LINUX_DYNAMIC_LINKER64): Rename to GNU_USER_DYNAMIC_LINKER64.
* config/rs6000/sysv4.h (LINUX_DYNAMIC_LINKER): Rename to
GNU_USER_DYNAMIC_LINKER.
* config/s390/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32. Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
* config/sh/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(SUBTARGET_LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/sparc/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
* config/sparc/linux64.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_ARCH32_SPEC): Change LINUX_DYNAMIC_LINKER32 to
GNU_USER_DYNAMIC_LINKER32.
(LINK_ARCH64_SPEC): Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER64 to
GNU_USER_DYNAMIC_LINKER64.
* config/vax/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
* config/xtensa/linux.h (TARGET_OS_CPP_BUILTINS): Change
LINUX_TARGET_OS_CPP_BUILTINS to GNU_USER_TARGET_OS_CPP_BUILTINS.
(LINK_SPEC): Change LINUX_DYNAMIC_LINKER to
GNU_USER_DYNAMIC_LINKER.
From-SVN: r172273
Joseph Myers [Mon, 11 Apr 2011 18:44:32 +0000 (19:44 +0100)]
gnu-user.h: Copy from linux.h.
* config/i386/gnu-user.h: Copy from linux.h. Update comments.
(LINK_EMULATION, GLIBC_DYNAMIC_LINKER): Remove.
(SUBTARGET_EXTRA_SPECS): Use GNU_USER_LINK_EMULATION and
GNU_USER_DYNAMIC_LINKER.
(MD_UNWIND_SUPPORT, REG_NAME): Remove.
* config/i386/gnu-user64.h: Copy from linux64.h. Update comments.
(GLIBC_DYNAMIC_LINKER32, GLIBC_DYNAMIC_LINKER64): Remove.
(LINK_SPEC): Use GNU_USER_DYNAMIC_LINKER32 and
GNU_USER_DYNAMIC_LINKER64.
(MD_UNWIND_SUPPORT, REG_NAME): Remove.
* config/i386/kfreebsd-gnu.h (LINK_EMULATION): Change to
GNU_USER_LINK_EMULATION.
* config/i386/linux.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE,
DEFAULT_PCC_STRUCT_RETURN, TARGET_TLS_DIRECT_SEG_REFS_DEFAULT,
ASM_COMMENT_START, DBX_REGISTER_NUMBER, NO_PROFILE_COUNTERS,
MCOUNT_NAME, SUBTARGET_FRAME_POINTER_REQUIRED, SIZE_TYPE,
PTRDIFF_TYPE, WCHAR_TYPE, WCHAR_TYPE_SIZE, TARGET_OS_CPP_BUILTINS,
CPP_SPEC, CC1_SPEC): Remove.
(LINK_EMULATION): Change to GNU_USER_LINK_EMULATION.
(GNU_USER_DYNAMIC_LINKER): Define.
(ASM_SPEC, SUBTARGET_EXTRA_SPECS, LINK_SPEC, ENDFILE_SPEC,
ASM_OUTPUT_ALIGNED_BSS, ASM_OUTPUT_MAX_SKIP_ALIGN,
ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX, CRT_GET_RFIB_DATA,
LIBGCC2_HAS_TF_MODE, LIBGCC2_TF_CEXT, TF_SIZE,
TARGET_ASM_FILE_END, STACK_CHECK_MOVING_SP,
STACK_CHECK_STATIC_BUILTIN, TARGET_THREAD_SSP_OFFSET,
TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET): Remove.
* config/i386/linux64.h (TARGET_OS_CPP_BUILTINS, CPP_SPEC,
CC1_SPEC, DEFAULT_PCC_STRUCT_RETURN,
TARGET_TLS_DIRECT_SEG_REFS_DEFAULT, SPEC_32, SPEC_64, ASM_SPEC,
LINK_SPEC, ENDFILE_SPEC, MULTILIB_DEFAULTS, LIBGCC2_HAS_TF_MODE,
LIBGCC2_TF_CEXT, TF_SIZE, TARGET_ASM_FILE_END): Remove.
(GNU_USER_DYNAMIC_LINKER32, GNU_USER_DYNAMIC_LINKER64): Define.
(STACK_CHECK_MOVING_SP, STACK_CHECK_STATIC_BUILTIN,
TARGET_THREAD_SSP_OFFSET, TARGET_CAN_SPLIT_STACK,
TARGET_THREAD_SPLIT_STACK_OFFSET): Remove.
* config/i386/gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER.
* config/kfreebsd-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER. Unconditionally undefine and redefine.
* config/knetbsd-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER. Unconditionally undefine and redefine.
* config/kopensolaris-gnu.h (GLIBC_DYNAMIC_LINKER): Change to
GNU_USER_DYNAMIC_LINKER. Unconditionally undefine and redefine.
* config.gcc (i[34567]86-*-linux* | i[34567]86-*-kfreebsd*-gnu |
i[34567]86-*-knetbsd*-gnu | i[34567]86-*-gnu* |
i[34567]86-*-kopensolaris*-gnu, x86_64-*-linux* |
x86_64-*-kfreebsd*-gnu | x86_64-*-knetbsd*-gnu): Use the new
headers.
From-SVN: r172271
Rainer Orth [Mon, 11 Apr 2011 18:14:23 +0000 (18:14 +0000)]
pr47917.c: Define _ISO_C_SOURCE=19990L for alpha*-dec-osf5*.
* gcc.dg/torture/pr47917.c: Define _ISO_C_SOURCE=19990L for
alpha*-dec-osf5*.
From-SVN: r172270
Paolo Carlini [Mon, 11 Apr 2011 17:50:39 +0000 (17:50 +0000)]
moveable.cc: Actually run it in parallel-mode for check-parallel.
2011-04-11 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/25_algorithms/inplace_merge/moveable.cc: Actually run
it in parallel-mode for check-parallel.
* testsuite/25_algorithms/rotate/moveable.cc: Likewise.
* testsuite/25_algorithms/stable_partition/moveable.cc: Likewise.
* testsuite/25_algorithms/remove/moveable.cc: Likewise.
* testsuite/25_algorithms/sort_heap/check_compare_by_value.cc:
Likewise.
* testsuite/25_algorithms/unique/moveable.cc: Likewise.
* testsuite/25_algorithms/remove_if/moveable.cc: Likewise.
* testsuite/25_algorithms/heap/moveable.cc: Likewise.
* testsuite/25_algorithms/next_permutation/moveable.cc: Only skip
the tests based on std::lexicographical_compare for check-parallel.
* testsuite/25_algorithms/prev_permutation/moveable.cc: Likewise.
From-SVN: r172269
Kai Tietz [Mon, 11 Apr 2011 17:44:04 +0000 (19:44 +0200)]
re PR target/9601 (-mrtd switch/stdcall attribute raises warnings for __buitltin functions)
2011-04-11 Kai Tietz <ktietz@redhat.com>
PR target/9601
PR target/11772
* config/i386/i386-protos.h (ix86_get_callcvt): New prototype.
* config/i386/i386.c (ix86_handle_cconv_attribute): Adjust
comment.
(ix86_is_msabi_thiscall): Removed.
(ix86_is_type_thiscall): Likewise.
(ix86_get_callcvt): New function.
(ix86_comp_type_attributes): Simplify check.
(ix86_function_regparm): Use ix86_get_callcvt for calling
convention attribute checks.
(ix86_return_pops_args): Likewise.
(ix86_static_chain): Likewise.
(x86_this_parameter): Likewise.
(x86_output_mi_thunk): Likewise.
(ix86_function_type_abi): Optimize check for types without attributes.
* config/i386/i386.h (IX86_CALLCVT_CDECL, IX86_CALLCVT_STDCALL,
IX86_CALLCVT_FASTCALL, IX86_CALLCVT_THISCALL, IX86_CALLCVT_REGPARM,
IX86_CALLCVT_SSEREGPARM): New macros to represent calling convention
by flag-values.
(IX86_BASE_CALLCVT): Helper macro.
* config/i386/netware.c (i386_nlm_maybe_mangle_decl_assembler_name):
Use ix86_get_callcvt for calling convention attribute checks and avoid
symbol-decoration for stdcall in TARGET_RTD case.
* config/i386/winnt.c (i386_pe_maybe_mangle_decl_assembler_name):
Likewise.
(gen_stdcall_or_fastcall_suffix): Adjust ident and use DECL_ORIGIN
for declaration.
From-SVN: r172268
Uros Bizjak [Mon, 11 Apr 2011 16:52:23 +0000 (18:52 +0200)]
* config/i386/sse.md: Fix unwanted commit.
From-SVN: r172266
Uros Bizjak [Mon, 11 Apr 2011 16:12:53 +0000 (18:12 +0200)]
sse.md (VI_128): New mode iterator.
* config/i386/sse.md (VI_128): New mode iterator.
(VI12_128): Rename from SSEMODE12.
(VI14_128): Rename from SSEMODE14.
(VI124_128): New mode iterator.
(VI24_128): Rename from SSEMODE248.
(VI248_128): Rename from SSEMODE248.
(SSEMODE124C8): Remove.
(*<plusminus_insn><mode>3): Merge with *avx_<plusminus_insn><mode>3.
(*sse2_<plusminus_insn><mode>3): Merge with
*avx_<plusminus_insn><mode>3.
(*mulv8hi3): Merge with *avx_mulv8hi3.
(*<s>mulv8hi3_highpart): Merge with *avx_<s>mulv8hi3_highpart.
(*sse2_umulv2siv2di3): Merge with *avx_umulv2siv2di3.
(*sse2_pmaddwd): Merge with *avx_pmaddwd.
(*sse4_1_mulv4si3): Merge with *avx_mulv4si3.
(ashr<mode>3): Merge with *avx_ashr<mode>3.
(lshr<mode>3): Merge with *avx_lshr<mode>3.
(ashl<mode>3): Merge with *avx_ashl<mode>3.
(sse2_ashlv1ti3): Merge with *avx_ashlv1ti3.
(sse2_lshrv1ti3): Merge with *avx_lshrv1ti3.
(*sse4_1_<smaxmin:code><mode>3): Merge with *avx_<smaxmin:code><mode>3.
(*<smaxmin:code>v8hi3): Ditto.
(*sse4_1_<umaxmin:code><mode>3): Merge with *avx_<umaxmin:code><mode>3.
(*<smaxmin:code>v16qi3): Ditto.
(*sse4_1_eqv2di3): Merge with *avx_eq<mode>3.
(*sse2_eq<mode>3): Ditto.
(*sse4_2_eqv2di3): Merge with *avx_gt<mode>3.
(*sse2_gt<mode>3): Ditto.
(vcondv2di): Split out of vcond<mode>.
(vconduv2di): Split out of vcondu<mode>.
From-SVN: r172264
Richard Guenther [Mon, 11 Apr 2011 15:50:57 +0000 (15:50 +0000)]
gimplify.c (gimple_fold_indirect_ref): Check host_integerp before calling tree_low_cst.
2011-04-11 Richard Guenther <rguenther@suse.de>
* gimplify.c (gimple_fold_indirect_ref): Check host_integerp
before calling tree_low_cst.
From-SVN: r172263
Tobias Burnus [Mon, 11 Apr 2011 15:50:47 +0000 (17:50 +0200)]
re PR fortran/18918 (Eventually support Fortran 2008's coarrays [co-arrays])
2011-04-11 Tobias Burnus <burnus@net-b.de>
PR fortran/18918
* simplify.c (simplify_bound_dim): Exit for
ucobound's last dimension unless -fcoarray=single.
* trans-array (gfc_conv_descriptor_size_1): Renamed from
gfc_conv_descriptor_size, made static, has now from_dim and
to_dim arguments.
(gfc_conv_descriptor_size): Call gfc_conv_descriptor_size.
(gfc_conv_descriptor_cosize): New function.
* trans-array.h (gfc_conv_descriptor_cosize): New prototype.
* trans-intrinsic.c (conv_intrinsic_cobound): Add input_location
and handle last codim of ucobound for when -fcoarray is not "single".
From-SVN: r172262
Richard Guenther [Mon, 11 Apr 2011 15:47:30 +0000 (15:47 +0000)]
stor-layout.c (layout_type): Compute all array index size operations in the original type.
2011-04-11 Richard Guenther <rguenther@suse.de>
* stor-layout.c (layout_type): Compute all array index size operations
in the original type.
(initialize_sizetypes): Add comment.
(set_sizetype): Do not set TREE_TYPE of a TREE_VEC.
c-family/
* c-common.c (complete_array_type): Build a range type of
proper type.
From-SVN: r172261
Joseph Myers [Mon, 11 Apr 2011 15:25:37 +0000 (16:25 +0100)]
* common.opt (Tbss=, Tdata=, Ttext=): New options.
From-SVN: r172259
Martin Jambor [Mon, 11 Apr 2011 15:17:44 +0000 (17:17 +0200)]
cgraph.c (cgraph_local_info): Call cgraph_get_node instead of cgraph_node, handle NULL return value.
2011-04-11 Martin Jambor <mjambor@suse.cz>
gcc/
* cgraph.c (cgraph_local_info): Call cgraph_get_node instead
of cgraph_node, handle NULL return value.
(cgraph_global_info): Likewise.
(cgraph_rtl_info): Likewise.
* tree-inline.c (estimate_num_insns): Likewise.
* gimplify.c (unshare_body): Likewise.
(unvisit_body): Likewise.
(gimplify_body): Likewise.
* predict.c (optimize_function_for_size_p): Likewise.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1): Likewise.
(call_may_clobber_ref_p_1): Likewise.
* varasm.c (function_section_1): Likewise.
(assemble_start_function): Likewise.
gcc/java/
* decl.c (java_mark_decl_local): Call cgraph_get_node instead of
cgraph_node and handle returned NULL.
From-SVN: r172258
Martin Jambor [Mon, 11 Apr 2011 14:57:06 +0000 (16:57 +0200)]
except.c (set_nothrow_function_flags): Call cgraph_get_node instead of cgraph_node.
2011-04-11 Martin Jambor <mjambor@suse.cz>
* except.c (set_nothrow_function_flags): Call cgraph_get_node instead
of cgraph_node.
* final.c (rest_of_clean_state): Likewise.
* gimple-iterator.c (update_call_edge_frequencies): Likewise.
* passes.c (pass_init_dump_file): Likewise.
(execute_all_ipa_transforms): Likewise.
(function_called_by_processed_nodes_p): Likewise.
* predict.c (maybe_hot_frequency_p): Likewise.
(probably_never_executed_bb_p): Likewise.
(compute_function_frequency): Likewise.
* tree-nested.c (check_for_nested_with_variably_modified): Likewise.
(unnest_nesting_tree_1): Likewise.
(lower_nested_functions): Likewise.
* tree-optimize.c (execute_fixup_cfg): Likewise.
(tree_rest_of_compilation): Likewise.
* tree-profile.c (gimple_gen_ic_func_profiler): Likewise.
* tree-sra.c (ipa_early_sra): Likewise.
* tree-ssa-loop-ivopts.c (computation_cost): Likewise.
* config/i386/i386.c (ix86_compute_frame_layout): Likewise.
* ipa.c (record_cdtor_fn): Likewise.
* ipa-inline.c (cgraph_early_inlining): Likewise.
(compute_inline_parameters_for_current): Likewise.
* ipa-prop.c (ipa_make_edge_direct_to_target): Likewise.
* ipa-pure-const.c (local_pure_const): Likewise.
* ipa-split.c (split_function): Likewise.
(execute_split_functions): Likewise.
* cgraphbuild.c (build_cgraph_edges): Likewise.
(rebuild_cgraph_edges): Likewise.
(cgraph_rebuild_references): Likewise.
(remove_cgraph_callee_edges): Likewise.
* cgraphunit.c (cgraph_mark_if_needed): Likewise.
(verify_cgraph_node): Likewise.
(cgraph_analyze_functions): Likewise.
(cgraph_preserve_function_body_p): Likewise.
(save_inline_function_body): Likewise.
(save_inline_function_body): Likewise.
* tree-inline.c (copy_bb): Likewise.
(optimize_inline_calls): Likewise.
From-SVN: r172257
Martin Jambor [Mon, 11 Apr 2011 14:25:55 +0000 (16:25 +0200)]
re PR tree-optimization/48195 (ICE: vector VEC(ipa_node_params_t,base) index domain error, in ipa_analyze_node at ipa-prop.c:1525 with -flto --param partial-inlining-entry-probability=101)
2011-04-11 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/48195
* ipa-cp.c (ipcp_driver): Call ipa_check_create_node_params and
ipa_check_create_edge_args.
(ipcp_generate_summary): Do not call ipa_check_create_node_params and
ipa_check_create_edge_args.
* ipa-inline.c (inline_generate_summary): Do not call
ipa_check_create_node_params and ipa_check_create_edge_args.
* ipa-prop.c (ipa_analyze_node): Call ipa_check_create_node_params and
ipa_check_create_edge_args.
* testsuite/gcc.dg/ipa/pr48195.c: New test.
From-SVN: r172256
GCC Administrator [Mon, 11 Apr 2011 00:19:05 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r172252
Mike Stump [Sun, 10 Apr 2011 18:46:45 +0000 (18:46 +0000)]
Remove doubled up words.
From-SVN: r172247
Jim Meyering [Sun, 10 Apr 2011 18:13:23 +0000 (18:13 +0000)]
Avoid memory overrun in a test leading to potential double-free.
2011-04-10 Jim Meyering <meyering@redhat.com>
Avoid memory overrun in a test leading to potential double-free.
* testsuite/test-expandargv.c (writeout_test): Fix off-by-one error:
i.e., do copy the trailing NUL byte.
From-SVN: r172246
Mike Stump [Sun, 10 Apr 2011 17:57:59 +0000 (17:57 +0000)]
Cleanup double words.
From-SVN: r172245
Jonathan Wakely [Sun, 10 Apr 2011 16:35:58 +0000 (16:35 +0000)]
re PR libstdc++/48541 (std::function(std::_Function_base) should use std::addressof)
2011-04-10 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/48541
* include/std/functional (_Base_manager::_M_get_pointer): Use
addressof.
* testsuite/20_util/function/48541.cc: New.
From-SVN: r172244
Jonathan Wakely [Sun, 10 Apr 2011 16:20:42 +0000 (16:20 +0000)]
re PR libstdc++/48465 (undefined reference to std::basic_string::_S_compare(unsigned long, unsigned long))
2011-04-10 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/48465
* configure.ac (libtool_VERSION): Bump library version to 6:16:0.
* configure: Regenerate.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.16): Export missing symbols.
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.16.
From-SVN: r172241
Eric Botcazou [Sun, 10 Apr 2011 10:31:14 +0000 (10:31 +0000)]
* gnat.dg/return3.adb: Remove unused switch.
From-SVN: r172239
GCC Administrator [Sun, 10 Apr 2011 00:18:43 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172236
Anatoly Sokolov [Sat, 9 Apr 2011 19:10:45 +0000 (23:10 +0400)]
expr.c (expand_expr_real_1): Use add_to_hard_reg_set function instead of loop.
* expr.c (expand_expr_real_1): Use add_to_hard_reg_set function
instead of loop.
* sel-sched.c (mark_unavailable_hard_regs): Likewise.
* function.c (record_hard_reg_sets): Likewise.
* ira.c (compute_regs_asm_clobbered): Likewise.
* sched-deps.c (sched_analyze_1): Likewise.
* reload1.c (mark_reload_reg_in_use, choose_reload_regs): Likewise.
From-SVN: r172231
Xinliang David Li [Sat, 9 Apr 2011 16:29:08 +0000 (16:29 +0000)]
Fix PR48484
From-SVN: r172229
Duncan Sands [Sat, 9 Apr 2011 16:18:01 +0000 (18:18 +0200)]
Bail out rather than crashing in array_type_nelts if TYPE_MAX_VALUE is null.
From-SVN: r172227
GCC Administrator [Sat, 9 Apr 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r172224
Mike Stump [Fri, 8 Apr 2011 23:53:59 +0000 (23:53 +0000)]
re PR testsuite/48506 (ssa-ccp-17.c = g.i fails)
PR testsuite/48506
* gcc.dg/tree-ssa/ssa-ccp-17.c: Robustify against ports that
default to fno-common.
From-SVN: r172218
Georg-Johann Lay [Fri, 8 Apr 2011 23:17:52 +0000 (23:17 +0000)]
sibcall-3.c: Don't xfail on AVR.
2011-04-08 Georg-Johann Lay <avr@gjlay.de>
* gcc.dg/sibcall-3.c: Don't xfail on AVR.
* gcc.dg/sibcall-4.c: Don't xfail on AVR.
From-SVN: r172217
Eric Botcazou [Fri, 8 Apr 2011 22:31:22 +0000 (22:31 +0000)]
combine.c (combine_validate_cost): Adjust comments.
* combine.c (combine_validate_cost): Adjust comments. Set registered
cost of I0 to zero at the end, if any.
From-SVN: r172216
Thomas Koenig [Fri, 8 Apr 2011 21:46:08 +0000 (21:46 +0000)]
re PR fortran/48448 (Implement -f(no-)frontend-optimization)
2011-04-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48448
* gfortran.h (gfc_option_t): Add warn_function_elimination and
flag_frontend_optimize.
* lang.opt (Wfunction-elimination): Add.
(ffrontend-optimize): Add.
* invoke.texi: Add documentation for -Wfunction-elimination
and -ffrontend-optimize. Add -faggressive-function-elimination
to list of code generation options.
* frontend-passes.c (gfc_run_passes): Run optimizations if
flag_frontend_optimize is set.
(warn_function_elimination): New function.
(cfe_expr_0): Call it if requested to do so.
* options.c (gfc_init_options): Initiate warn_function_elimination
and flag_frontend_optimize.
(gfc_post_options): Set flag_frontend_optimize if not specified
by user, depending on the optimization level.
(gfc_handle_option): Handle -Wfunction-elimination and
-ffrontend-optimize.
2011-04-08 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/48448
* gfortran.dg/function_optimize_5.f90: New test.
From-SVN: r172215
Xinliang David Li [Fri, 8 Apr 2011 21:03:12 +0000 (21:03 +0000)]
FDO insane profile
From-SVN: r172213
Xinliang David Li [Fri, 8 Apr 2011 21:01:08 +0000 (21:01 +0000)]
-dA enhancement
From-SVN: r172212
Steven G. Kargl [Fri, 8 Apr 2011 20:57:44 +0000 (20:57 +0000)]
re PR target/47829 (no .eh_frame_hdr table will be created.)
2011-04-08 Steven G. Kargl <kargl@gcc.gnu.org>
PR 47829
gcc/config.gcc: disable unwind table generation for crtbegin/crtend
on i386-*-freebsd.
From-SVN: r172211
Eric Botcazou [Fri, 8 Apr 2011 20:30:14 +0000 (20:30 +0000)]
decl.c (gnat_to_gnu_entity): Set minimum alignment on fields of the RETURN type built for the Copy-In...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Procedure>: Set minimum
alignment on fields of the RETURN type built for the Copy-In Copy-Out
mechanism.
From-SVN: r172210
Eric Botcazou [Fri, 8 Apr 2011 20:21:36 +0000 (20:21 +0000)]
trans.c (Identifier_to_gnu): Do not return initializers of aggregate types that contain a placeholder.
* gcc-interface/trans.c (Identifier_to_gnu): Do not return initializers
of aggregate types that contain a placeholder.
From-SVN: r172209
Michael Matz [Fri, 8 Apr 2011 20:18:08 +0000 (20:18 +0000)]
re PR rtl-optimization/48389 (ICE: in make_edges, at cfgbuild.c:319 with -mtune=pentiumpro)
PR middle-end/48389
* jump.c (rebuild_jump_labels_1, rebuild_jump_labels_chain): New
functions.
(rebuild_jump_labels): Call rebuild_jump_labels_1.
* rtl.h (rebuild_jump_labels_chain): Declare.
* cfgexpand.c (gimple_expand_cfg): Initialize JUMP_LABEL also on
insns inserted on edges.
testsuite/
* gcc.target/i386/pr48389.c: New test.
From-SVN: r172208
Joseph Myers [Fri, 8 Apr 2011 19:39:48 +0000 (20:39 +0100)]
gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.
contrib:
* gcc_update (gcc/config/arm/arm-tables.opt): New dependencies.
gcc:
* config.gcc (arm*-*-*): Add arm/arm-tables.opt to extra_options.
* config/arm/arm-arches.def: New.
* config/arm/arm-opts.h: New.
* config/arm/genopt.sh: New.
* config/arm/arm-tables.opt: New (generated).
* config/arm/arm.c (arm_handle_option, arm_target_help,
TARGET_HANDLE_OPTION, TARGET_HELP, arm_find_cpu): Remove.
(all_architectures): Get most table contents from arm-arches.def.
(arm_option_override): Set arm_selected_arch, arm_selected_cpu and
arm_selected_tune here.
* config/arm/arm.h (enum processor_type): Move to arm-opts.h.
* config/arm/arm.opt (config/arm/arm-opts.h): New HeaderInclude.
(march=, mcpu=, mtune=): Use Enum and Var.
* config/arm/t-arm ($(srcdir)/config/arm/arm-tables.opt): New.
(arm.o): Update dependencies.
From-SVN: r172205
Basile Starynkevitch [Fri, 8 Apr 2011 17:52:25 +0000 (17:52 +0000)]
gengtype.c (write_typed_alloc_def): New argument f.
2011-04-08 Basile Starynkevitch <basile@starynkevitch.net>
* gengtype.c (write_typed_alloc_def): New argument f. Use it instead
of header_file.
(write_typed_struct_alloc_def, write_typed_typedef_alloc_def)
(write_typed_alloc_defns): Likewise.
(main): Calls write_typed_alloc_defns with output_header.
From-SVN: r172203
Vladimir Makarov [Fri, 8 Apr 2011 17:48:23 +0000 (17:48 +0000)]
Fix PR # 48435 instead of 4435
From-SVN: r172202
Vladimir Makarov [Fri, 8 Apr 2011 17:17:50 +0000 (17:17 +0000)]
re PR libstdc++/4435 (Object file has undefined basic_string symbol as local.)
2011-04-08 Vladimir Makarov <vmakarov@redhat.com>
PR 4435
* ira-color.c (setup_profitable_hard_regs): Add comments.
Don't take prohibited hard regs into account.
(setup_conflict_profitable_regs): Rename to
get_conflict_profitable_regs.
(check_hard_reg_p): Check prohibited hard regs.
From-SVN: r172201
Nathan Froyd [Fri, 8 Apr 2011 17:05:23 +0000 (17:05 +0000)]
utils.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES
gcc/ada/
* gcc-interface/utils.c (handle_sentinel_attribute): Don't use
TYPE_ARG_TYPES
(handle_type_generic_attribute): Likewise.
gcc/c-family/
* c-common.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
(handle_type_generic_attribute): Likewise.
gcc/lto/
* lto-lang.c (handle_sentinel_attribute): Don't use TYPE_ARG_TYPES.
(handle_type_generic_attribute): Likewise.
From-SVN: r172200
Nathan Froyd [Fri, 8 Apr 2011 16:48:52 +0000 (16:48 +0000)]
alpha.c (alpha_emit_xfloating_libcall): Call use_reg.
* config/alpha/alpha.c (alpha_emit_xfloating_libcall): Call use_reg.
* config/xtensa/xtensa.c (xtensa_call_tls_desc): Likewise.
* config/sparc/sparc.c (sparc_legitimize_tls_address): Likewise.
From-SVN: r172199
John David Anglin [Fri, 8 Apr 2011 16:21:39 +0000 (16:21 +0000)]
re PR target/48366 (ICE in extract_constrain_insn_cached, at recog.c:2024)
PR target/48366
* config/pa/pa.c (hppa_register_move_cost): Increase to 18 cost of
move from floating point to shift amount register .
(emit_move_sequence): Remove secondary reload support for floating
point to shift amount amount register copies.
(pa_secondary_reload): Return GENERAL_REGS for floating point/shift
amount register copies.
* config/pa/pa32-regs.h (HARD_REGNO_MODE_OK): For shift amount
register, return false if mode isn't a scalar integer mode.
* config/pa/pa64-regs.h (HARD_REGNO_MODE_OK): Likewise.
From-SVN: r172197
Kai Tietz [Fri, 8 Apr 2011 16:12:14 +0000 (18:12 +0200)]
Missed part of regenerated file.
From-SVN: r172196
Richard Guenther [Fri, 8 Apr 2011 14:36:14 +0000 (14:36 +0000)]
gimple.c (gimple_call_flags): Remove kludge.
2011-04-08 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_call_flags): Remove kludge.
From-SVN: r172190
Joseph Myers [Fri, 8 Apr 2011 14:29:33 +0000 (15:29 +0100)]
* de.po: Update.
From-SVN: r172187
Kai Tietz [Fri, 8 Apr 2011 14:16:38 +0000 (16:16 +0200)]
configure.ac (libgcj_ld_export_all): Set for windows native targets to export-all-symbols.
2011-04-08 Kai Tietz <ktietz@redhat.com>
* configure.ac (libgcj_ld_export_all): Set for windows
native targets to export-all-symbols.
(LIBGCJ_LD_EXPORT_ALL): Export libgcj_ld_export_all.
* Makefile.am (libgcj_la_LDFLAGS): Add LIBGCJ_LD_EXPORT_ALL.
* sysdep/i386/backtrace.h (MAIN_FUNC): Define for windows
native targets to DllMain.
* gcj/javaprims.h (JNICALL): Define it dependent
for different windows targets.
* include/jni_md.h: Likewise.
* headers.txt (_Jv_JNI_ToReflectedField): Mark
JNICALLS for friends.
(_Jv_JNI_ToReflectedMethod): Likewise.
* java/lang/Class.h: Regenerated.
* java/lang/reflect/Field.h: Regenerated.
* java/lang/reflect/Constructor.h: Regenerated.
* java/lang/reflect/Method.h: Regenerated.
* configure: Regenerated.
* Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
From-SVN: r172186
Alexander Monakov [Fri, 8 Apr 2011 14:10:10 +0000 (18:10 +0400)]
sel-sched.c (sel_region_init): Move call to sel_setup_region_sched_flags after setup_current_loop_nest.
* sel-sched.c (sel_region_init): Move call to
sel_setup_region_sched_flags after setup_current_loop_nest.
From-SVN: r172185
Andrey Belevantsev [Fri, 8 Apr 2011 13:25:29 +0000 (17:25 +0400)]
re PR rtl-optimization/48272 (internal compiler error: in setup_insn_reg_pressure_info, at haifa-sched.c:1124)
PR rtl-optimization/48272
* sched-deps.c (setup_insn_reg_pressure_info): Export and rename to
init_insn_reg_pressure_info. Adjust a caller.
* sched-int.h (init_insn_reg_pressure_info): Declare.
* haifa-sched.c (haifa_init_insn): Call init_insn_reg_pressure_info
when sched-pressure is enabled.
* g++.dg/opt/pr48272.C: New.
From-SVN: r172183
Richard Guenther [Fri, 8 Apr 2011 13:22:32 +0000 (13:22 +0000)]
gimple.c (gimple_set_modified): Do not queue calls to MODIFIED_NORETURN_CALLS here ...
2011-04-08 Richard Guenther <rguenther@suse.de>
* gimple.c (gimple_set_modified): Do not queue calls to
MODIFIED_NORETURN_CALLS here ...
* tree-ssa-operands.c (update_stmt_operands): ... but here.
From-SVN: r172182