Balaji V. Iyer [Tue, 25 Jun 2013 20:41:21 +0000 (20:41 +0000)]
Replaced Dynamic arrays with vec trees in Array Notation for C.
gcc/c-family/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* array-notation-common.c (length_mismatch_in_expr): Changed the
parameter type's from a dynamic array to a vec_tree. Also removed
the size parameters.
* c-common.h (length_mismatch_in_expr_p): Fixed prototype's as per
the change above.
gcc/cp/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* cp-array-notation.c (cp_length_mismatch_in_expr_p): Remove.
(expand_an_in_modify_expr): Changed a function call from the above
removed function to length_mismatch_in_expr_p.
gcc/c/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-array-notation.c (make_triplet_val_inv): New function.
(create_cmp_incr): Likewise.
(create_array_refs): Likewise.
(fix_builtin_array_notation_fn): Replaced all mallocs with tree vec.
Also modularized common parts between functions and called the function.
(build_array_notation_expr): Likewise.
(fix_conditional_array_notations_1): Likewise.
(fix_array_notation_expr): Likewise.
(fix_array_notation_call_expr): Likewise.
From-SVN: r200405
Ian Lance Taylor [Tue, 25 Jun 2013 16:51:46 +0000 (16:51 +0000)]
Update shift1.go test for recent changes.
From-SVN: r200400
Ian Lance Taylor [Tue, 25 Jun 2013 16:34:28 +0000 (16:34 +0000)]
compiler: Fix type determination issues.
From-SVN: r200398
Joseph Myers [Tue, 25 Jun 2013 16:30:13 +0000 (17:30 +0100)]
* zh_TW.po: Update.
From-SVN: r200396
Jakub Jelinek [Tue, 25 Jun 2013 12:35:21 +0000 (14:35 +0200)]
re PR tree-optimization/57705 (Non-constant step induction vars not vectorized)
PR tree-optimization/57705
* tree-vect-loop.c (vect_is_simple_iv_evolution): Allow
SSA_NAME step, provided that it is not defined inside the loop.
(vect_analyze_scalar_cycles_1): Disallow SSA_NAME step in nested
loop.
(get_initial_def_for_induction): Handle SSA_NAME IV step.
* gcc.dg/vect/pr57705.c: New test.
* gcc.dg/vect/vect-iv-7.c: Add noclone attribute, remove xfail.
From-SVN: r200394
Martin Jambor [Tue, 25 Jun 2013 11:09:21 +0000 (13:09 +0200)]
re PR middle-end/57670 (Member-pointer calls should not be redirected to builtin_unreachable)
2013-06-25 Martin Jambor <mjambor@suse.cz>
PR middle-end/57670
* cgraph.h (cgraph_indirect_call_info): New flag member_ptr.
* ipa-prop.c (ipa_print_node_jump_functions): Mark member pointer
calls in the dump.
(ipa_note_param_call): Initialize member_ptr flag.
(ipa_analyze_indirect_call_uses): Set member_ptr flag.
(ipa_make_edge_direct_to_target): Bail out if member_ptr is set.
(ipa_write_indirect_edge_info): Stream member_ptr flag.
(ipa_read_indirect_edge_info): Likewise.
testsuite/
* g++.dg/ipa/pr57670.C (H): New test.
From-SVN: r200393
Paolo Carlini [Tue, 25 Jun 2013 08:39:31 +0000 (08:39 +0000)]
re PR libstdc++/57704 (std::char_traits<char>::lt is not standards-compliant)
2013-06-25 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57704
* include/bits/char_traits.h (char_traits<char>::lt): Implement
LWG 467.
* testsuite/21_strings/char_traits/requirements/char/57704.cc: New.
From-SVN: r200392
Richard Biener [Tue, 25 Jun 2013 08:21:31 +0000 (08:21 +0000)]
re PR middle-end/56977 (gcc -Og incorrectly warns about 'constant zero length parameter')
2013-06-25 Richard Biener <rguenther@suse.de>
PR middle-end/56977
* passes.c (init_optimization_passes): Move pass_fold_builtins
and pass_dce earlier with -Og.
* gcc.dg/pr56977.c: New testcase.
From-SVN: r200391
Chung-Ju Wu [Tue, 25 Jun 2013 08:02:11 +0000 (08:02 +0000)]
Makefile.in (clean, distclean): Remove auto-target.h and stamp-h correctly.
libgcc/
2013-06-25 Chung-Ju Wu <jasonwucj@gmail.com>
* Makefile.in (clean, distclean): Remove auto-target.h and stamp-h
correctly.
From-SVN: r200390
Eric Botcazou [Tue, 25 Jun 2013 07:23:19 +0000 (07:23 +0000)]
expr.c (expand_expr_real_1): Fix formatting glitches.
* expr.c (expand_expr_real_1) <ARRAY_REF>: Fix formatting glitches.
<BIT_FIELD_REF>: Remove trailing TAB.
* varasm.c (output_constructor_bitfield): Fix formatting glitch and
remove blank line.
From-SVN: r200389
GCC Administrator [Tue, 25 Jun 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200387
Alan Modra [Tue, 25 Jun 2013 00:08:47 +0000 (09:38 +0930)]
ffi.c (ffi_prep_args_SYSV): Move var declaration before statements.
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Move var declaration
before statements.
(ffi_prep_args64): Support little-endian.
(ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Likewise.
* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Likewise.
From-SVN: r200383
Ian Lance Taylor [Mon, 24 Jun 2013 23:12:48 +0000 (23:12 +0000)]
compiler: generate dummy names for blank-named constants.
Otherwise such const declarations are not checked.
From-SVN: r200381
Ian Lance Taylor [Mon, 24 Jun 2013 22:11:12 +0000 (22:11 +0000)]
compiler: Add support for method values.
From-SVN: r200379
Dehao Chen [Mon, 24 Jun 2013 17:31:45 +0000 (17:31 +0000)]
files.c (_cpp_stack_include): Fix the highest_location when header file is guarded by #ifndef and is included...
2013-06-24 Dehao Chen <dehao@google.com>
* files.c (_cpp_stack_include): Fix the highest_location when header
file is guarded by #ifndef and is included twice.
From-SVN: r200376
Steve Ellcey [Mon, 24 Jun 2013 15:24:19 +0000 (15:24 +0000)]
configure.ac (AC_CHECK_FUNCS_ONCE): Put into if statement.
2013-06-24 Steve Ellcey <sellcey@mips.com>
* configure.ac (AC_CHECK_FUNCS_ONCE): Put into if statement.
* configure: Regenerate.
From-SVN: r200374
Bernd Edlinger [Mon, 24 Jun 2013 13:46:58 +0000 (13:46 +0000)]
re PR libstdc++/57691 (freestanding libstdc++ has compile error)
2013-06-24 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR libstdc++/57691
* include/c_global/cstdlib (atexit, at_quick_exit): If !_GLIBCC_HOSTED,
declare per the letter of the C++ standard in terms of void.
* include/c_std/cstdlib: Likewise.
From-SVN: r200371
Martin Jambor [Mon, 24 Jun 2013 12:51:43 +0000 (14:51 +0200)]
re PR tree-optimization/57358 (segmentation fault with attribute(optimize(O0)))
2013-06-24 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/57358
* ipa-prop.c (ipa_func_spec_opts_forbid_analysis_p): New function.
(ipa_compute_jump_functions_for_edge): Bail out if it returns true.
(ipa_analyze_params_uses): Generate pessimistic info when true.
testsuite
* gcc.dg/ipa/pr57358.c: New test.
From-SVN: r200369
Martin Jambor [Mon, 24 Jun 2013 12:40:17 +0000 (14:40 +0200)]
re PR tree-optimization/57539 (ice in ipa_edge_duplication_hook)
2013-06-24 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/57539
* cgraphclones.c (cgraph_clone_node): Add parameter new_inlined_to, set
global.inlined_to of the new node to it. All callers changed.
* ipa-inline-transform.c (clone_inlined_nodes): New variable
inlining_into, pass it to cgraph_clone_node.
* ipa-prop.c (ipa_propagate_indirect_call_infos): Do not call
ipa_free_edge_args_substructures.
(ipa_edge_duplication_hook): Only add edges from inlined nodes to
rdesc linked list. Do not assert rdesc edges have inlined caller.
Assert we have found an rdesc in the rdesc list.
From-SVN: r200368
Richard Biener [Mon, 24 Jun 2013 12:17:16 +0000 (12:17 +0000)]
pointer-set.h (struct pointer_set_t): Move here from pointer-set.c.
2013-06-24 Richard Biener <rguenther@suse.de>
* pointer-set.h (struct pointer_set_t): Move here from
pointer-set.c.
(pointer_set_lookup): Declare.
(class pointer_map): New template class implementing a
generic pointer to T map.
(pointer_map<T>::pointer_map, pointer_map<T>::~pointer_map,
pointer_map<T>::contains, pointer_map<T>::insert,
pointer_map<T>::traverse): New functions.
* pointer-set.c (struct pointer_set_t): Moved to pointer-set.h.
(pointer_set_lookup): New function.
(pointer_set_contains): Use pointer_set_lookup.
(pointer_set_insert): Likewise.
(insert_aux): Remove.
(struct pointer_map_t): Embed a pointer_set_t.
(pointer_map_create): Adjust.
(pointer_map_destroy): Likewise.
(pointer_map_contains): Likewise.
(pointer_map_insert): Likewise.
(pointer_map_traverse): Likewise.
* tree-streamer.h (struct streamer_tree_cache_d): Use a
pointer_map<unsigned> instead of a pointer_map_t.
* tree-streamer.c (streamer_tree_cache_insert_1): Adjust.
(streamer_tree_cache_lookup): Likewise.
(streamer_tree_cache_create): Likewise.
(streamer_tree_cache_delete): Likewise.
* lto-streamer.h (struct lto_tree_ref_encoder): Use a
pointer_map<unsigned> instead of a pointer_map_t.
(lto_init_tree_ref_encoder): Adjust.
(lto_destroy_tree_ref_encoder): Likewise.
* lto-section-out.c (lto_output_decl_index): Likewise.
(lto_record_function_out_decl_state): Likewise.
* dominance.c (iterate_fix_dominators): Use pointer_map<int>.
From-SVN: r200367
Richard Biener [Mon, 24 Jun 2013 11:14:31 +0000 (11:14 +0000)]
re PR testsuite/57686 (FAIL: gcc.dg/torture/pr57584.c with -m32)
2013-06-24 Richard Biener <rguenther@suse.de>
PR testsuite/57686
* gcc.dg/torture/pr57584.c: Remove target specific bits.
From-SVN: r200364
Richard Biener [Mon, 24 Jun 2013 10:22:22 +0000 (10:22 +0000)]
re PR tree-optimization/57488 (loop terminates early at -O3)
2013-06-24 Richard Biener <rguenther@suse.de>
PR tree-optimization/57488
* tree-ssa-pre.c (insert): Clear NEW sets before each iteration.
* gcc.dg/torture/pr57488.c: New testcase.
From-SVN: r200363
Tobias Burnus [Mon, 24 Jun 2013 08:43:55 +0000 (10:43 +0200)]
[multiple changes]
2013-06-24 Steven G. Kargl <sgk@troutmask.apl.washington.edu>
Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/52413
* simplify.c (gfc_simplify_fraction): Fix the sign of negative values.
2013-06-24 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Dominique d'Humieres <dominiq@lps.ens.fr>
PR fortran/52413
* gfortran.dg/fraction.f90: New.
From-SVN: r200361
Tobias Burnus [Mon, 24 Jun 2013 08:34:05 +0000 (10:34 +0200)]
configure.ac: Check for fp_except and fp_except_t.
2013-06-24 Tobias Burnus <burnus@net-b.de>
* configure.ac: Check for fp_except and fp_except_t.
* config/fpu-sysv.h: Conditionally use either type.
* configure: Regenerate.
* config.h.in: Regenerate.
From-SVN: r200360
Alan Modra [Mon, 24 Jun 2013 01:04:35 +0000 (10:34 +0930)]
fix duplication of test
From-SVN: r200359
Alan Modra [Mon, 24 Jun 2013 00:52:34 +0000 (10:22 +0930)]
rs6000.c (vspltis_constant): Correct for little-endian.
gcc/
* config/rs6000/rs6000.c (vspltis_constant): Correct for little-endian.
(gen_easy_altivec_constant): Likewise.
* config/rs6000/predicates.md (easy_vector_constant_add_self,
easy_vector_constant_msb): Likewise.
gcc/testsuite/
* gcc.target/powerpc/altivec-consts.c: Correct for little-endian.
Add scan-assembler-not "lvx".
* gcc.target/powerpc/le-altivec-consts.c: New.
From-SVN: r200357
GCC Administrator [Mon, 24 Jun 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200356
Paolo Carlini [Sun, 23 Jun 2013 23:36:34 +0000 (23:36 +0000)]
sfinae47.C: New.
2013-06-23 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/sfinae47.C: New.
From-SVN: r200353
Jakub Jelinek [Sun, 23 Jun 2013 19:06:00 +0000 (21:06 +0200)]
re PR target/57688 (-O3 -march=native generates illegal opcode on AMD Phenom)
PR target/57688
* common/config/i386/i386-common.c (ix86_handle_option): For OPT_mlzcnt
add missing return true.
From-SVN: r200352
Oleg Endo [Sun, 23 Jun 2013 08:39:55 +0000 (08:39 +0000)]
re PR target/52483 (SH Target: Loads from volatile memory leave redundant sign/zero extensions)
PR target/52483
* config/sh/predicates.md (general_extend_operand): Invoke
general_movsrc_operand for memory operands.
(general_movsrc_operand): Allow reg+reg addressing, do not use
general_operand for memory operands.
PR target/52483
* gcc.target/sh/pr52483-1.c: New.
* gcc.target/sh/pr52483-2.c: New.
* gcc.target/sh/pr52483-3.c: New.
* gcc.target/sh/pr52483-4.c: New.
* gcc.target/sh/pr52483-5.c: New.
From-SVN: r200350
Sriraman Tallam [Sun, 23 Jun 2013 06:15:19 +0000 (06:15 +0000)]
Allow mmintrin headers to work with function specific target opts.
Allow mmintrin headers to work with function specific target opts. Please
see discussion here:
http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00740.html
* config/i386/i386.c (ix86_pragma_target_parse): Restore target
when current target options does not apply.
* config/i386/i386-protos.h (ix86_reset_previous_fndecl): New function.
* config/i386/i386.c (ix86_reset_previous_fndecl): Ditto.
* config/i386/bmiintrin.h: Pass appropriate target attributes to header.
* config/i386/mmintrin.h: Ditto.
* config/i386/nmmintrin.h: Ditto.
* config/i386/avx2intrin.h: Ditto.
* config/i386/fxsrintrin.h: Ditto.
* config/i386/tbmintrin.h: Ditto.
* config/i386/xsaveintrin.h: Ditto.
* config/i386/f16cintrin.h: Ditto.
* config/i386/xtestintrin.h: Ditto.
* config/i386/xsaveoptintrin.h: Ditto.
* config/i386/bmi2intrin.h: Ditto.
* config/i386/lzcntintrin.h: Ditto.
* config/i386/smmintrin.h: Ditto.
* config/i386/wmmintrin.h: Ditto.
* config/i386/x86intrin.h: Remove all header include guards.
* config/i386/prfchwintrin.h: Ditto.
* config/i386/pmmintrin.h: Ditto.
* config/i386/tmmintrin.h: Ditto.
* config/i386/xmmintrin.h: Ditto.
* config/i386/popcntintrin.h: Ditto.
* config/i386/rdseedintrin.h: Ditto.
* config/i386/ammintrin.h: Ditto.
* config/i386/emmintrin.h: Ditto.
* config/i386/immintrin.h: Remove all header include guards.
* config/i386/fma4intrin.h: Ditto.
* config/i386/lwpintrin.h: Ditto.
* config/i386/xopintrin.h: Ditto.
* config/i386/ia32intrin.h: Ditto.
* config/i386/avxintrin.h: Ditto.
* config/i386/rtmintrin.h: Ditto.
* config/i386/fmaintrin.h: Ditto.
* config/i386/mm3dnow.h: Ditto.
* testsuite/gcc.target/i386/intrinsics_1.c: New test.
* testsuite/gcc.target/i386/intrinsics_2.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_3.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_4.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_5.c: Ditto.
* testsuite/gcc.target/i386/intrinsics_6.c: Ditto.
* testsuite/gcc.target/i386/avx-1.c: Provide macros for builtins
needing immediate arguments in f16cintrin.h and rtmintrin.h.
From-SVN: r200349
Gabriel Dos Reis [Sun, 23 Jun 2013 02:27:03 +0000 (02:27 +0000)]
c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
* c-common.c (c_common_nodes_and_builtins): Use cxx11 in lieu of cxx0x.
* c-cppbuiltin.c (c_cpp_builtins): Likewise.
* c-opts.c (c_common_post_options): Likewise.
cp/
2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net>
* call.c (null_ptr_cst_p): Use cxx11 in lieu of cxx0x.
* class.c (add_implicitly_declared_members): Likewise.
(check_field_decl): Likewise.
(finalize_literal_type_property): Likewise.
(check_bases_and_members): Likewise.
* decl.c (poplevel): Likewise.
(case_conversion): Likewise.
(check_initializer): Likewise.
(grokfndecl): Likewise.
(check_static_variable_definition): Likewise.
(compute_array_index_type): Likewise.
(grokdeclarator): Likewise.
(build_enumerator): Likewise.
* friend.c (make_friend_class): Likewise.
* lex.c (init_reswords): Likewise.
* method.c (synthesized_method_walk): Likewise.
(implicitly_declare_fn): Likewise.
* parser.c (cp_parser_diagnose_invalid_type_name): Likewise.
(cp_parser_constant_expression): Likewise.
(cp_parser_for_init_statement): Likewise.
(cp_parser_block_declaration): Likewise.
(cp_parser_type_name): Likewise.
(cp_parser_enum_specifier): Likewise.
(cp_parser_enumerator_list): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_nth_tokens_can_be_std_attribute_p): Likewise.
(cp_parser_template_declaration_after_export): Likewise.
* pt.c (convert_nontype_argument_function): Likewise.
(convert_nontype_argument): Likewise.
(convert_template_argument): Likewise.
(tsubst_copy_and_build): Likewise.
(build_non_dependent_expr): Likewise.
* semantics.c (non_const_var_error): Likewise.
(potential_constant_expression_1): Likewise.
* tree.c (lvalue_kind): Likewise.
(build_vec_init_expr): Likewise.
(cast_valid_in_integral_constant_expression_p): Likewise.
* typeck.c (build_x_conditional_expr): Likewise.
* typeck2.c (check_narrowing): Likewise.
From-SVN: r200348
Sriraman Tallam [Sun, 23 Jun 2013 00:57:40 +0000 (00:57 +0000)]
i386-common.c: Handle LZCNT.
2013-06-22 Sriraman Tallam <tmsriram@google.com>
* common/config/i386/i386-common.c: Handle LZCNT.
From-SVN: r200347
GCC Administrator [Sun, 23 Jun 2013 00:16:45 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200346
Paolo Carlini [Sat, 22 Jun 2013 21:07:02 +0000 (21:07 +0000)]
re PR libstdc++/57674 (wrong distribution for std::binomial_distribution::operator()(g,param))
2013-06-22 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57674
* include/bits/random.h (binomial_distribution<>::_M_waiting):
Add double parameter.
* include/bits/random.tcc (binomial_distribution<>::operator()
(_UniformRandomNumberGenerator&, const param_type&)): Pass
__param._M_q to _M_waiting.
(_M_waiting): Adjust.
* testsuite/26_numerics/random/binomial_distribution/
operators/values.cc: Add tests.
From-SVN: r200341
Andi Kleen [Sat, 22 Jun 2013 17:23:08 +0000 (17:23 +0000)]
Fix __atomic_store_n typo in recent manual change
gcc/:
2013-06-22 Andi Kleen <ak@linux.intel.com>
* doc/extend.texi: Use __atomic_store_n instead of
__atomic_store in HLE example.
From-SVN: r200333
Oleg Endo [Sat, 22 Jun 2013 12:00:09 +0000 (12:00 +0000)]
sh.c: Remove <cstdlib> workaround.
* config/sh/sh.c: Remove <cstdlib> workaround.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r200328
GCC Administrator [Sat, 22 Jun 2013 00:16:37 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200324
Tobias Burnus [Fri, 21 Jun 2013 21:51:41 +0000 (23:51 +0200)]
trans-array.c (gfc_trans_deferred_array): Call the finalizer for nonallocatable local variables.
2013-06-21 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_trans_deferred_array): Call the
finalizer for nonallocatable local variables.
* trans-decl.c (gfc_get_symbol_decl): Add local
finalizable vars to the deferred list.
(gfc_trans_deferred_vars): Call gfc_trans_deferred_array
for those.
2013-06-21 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/finalize_17.f90: New.
From-SVN: r200321
Tobias Burnus [Fri, 21 Jun 2013 21:24:59 +0000 (23:24 +0200)]
trans-array.c (gfc_alloc_allocatable_for_assignment): Allocate at least one byte.
2013-06-21 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_alloc_allocatable_for_assignment): Allocate
at least one byte.
* trans-expr.c (alloc_scalar_allocatable_for_assignment): Ditto.
2013-06-21 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/realloc_on_assign_18.f90: New.
From-SVN: r200320
Balaji V. Iyer [Fri, 21 Jun 2013 19:36:47 +0000 (19:36 +0000)]
Implemented Cilk Plus Array Notation for C++
Implemented Cilk Plus Array Notation for C++
gcc/c-family/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-common.h (struct cilkplus_an_parts): New structure.
(struct cilkplus_an_loop_parts): Likewise.
(cilkplus_extract_an_triplets): New prototype.
(fix_sec_implicit_args): Likewise.
* array-notation-common.c (cilkplus_extract_an_triplets): New function.
(fix_sec_implicit_args): Likewise.
gcc/cp/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* call.c (convert_like_real): Added a check if array notation is present
in expression. If so, then no conversion of arguments is necessary.
(build_over_call): Likewise.
* typeck.c (cp_build_function_call_vec): Likewise.
(convert_for_assignment): Likewise.
(cp_build_array_ref): Reject array notations with a rank greater than 1
as an array's index.
(cp_build_binary_op): If array notations are preent in op, then call
find_correct_array_notation_type.
(cp_build_addr_expr_1): Handle ARRAY_NOTATION_REF similar to ARRAY_REF.
* cp-array-notation.c: New file.
* cp-objcp-common.c (cp_common_init_ts): Marked ARRAY_NOTATION_REF tree
as typed.
* cp-tree.h (fix_array_notation_exprs): New prototype.
* semantics.c (finish_return_stmt): Reject array notations as
return value.
(cxx_eval_constant_expression): Added ARRAY_NOTATION_REF case.
(potential_constant_expression_1): Likewise.
* tree.c (lvalue_kind): Likewise.
* error.c (dump_decl): Likewise.
(dump_expr): Likewise.
* pt.c (ARRAY_NOTATION_REF): Likewise.
(type_unification_real): Do not unify any arguments if array notations
are found in arg.
(instantiate_decl): Added a check for array notaitons inside the
function body. If so, then expand them.
* parser.c (cp_parser_array_notation): New function.
(cp_parser_postfix_open_square_expression): Added a check for colons
inside square braces. If found, then handle the array access as an
array notation access. Also, disable auto-correction from a single
colon to scope when Cilk Plus is enabled.
(cp_parser_compound_statement): Added a check for array notations
inside the statement. If found, then expand them.
(cp_parser_ctor_initializer_opt_and_function_body): Likewise.
(cp_parser_function_definition_after_declarator): Likewise.
(cp_parser_selection_statement): Searched for array notations inside
condition. If so, then emit an error.
(cp_parser_iteration_statement): Likewise.
(cp_parser_direct_declarator): Reject array notations inside a
variable or array declaration.
* Make-lang.in (CXX_AND_OBJCXX_OBJS): Added cp/cp-array-notation.o.
gcc/testsuite/ChangeLog
2013-06-21 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-c++-common/cilk-plus/AN/array_test1.c: Make this an execution test.
Also changed the returns from error as distinct values so that debugging
can get easier.
* c-c++-common/cilk-plus/AN/if_test_errors.c (main): Made certain
errors specific to C, if necessary. Also added new error hooks for C++.
* c-c++-common/cilk-plus/AN/misc.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors2.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors3.c (main): Likewise.
* c-c++-common/cilk-plus/AN/pr57541.c (main): Likewise.
* c-c++-common/cilk-plus/AN/parser_errors4.c (main): In addition to the
same changes as parser_errors3.c, spaces were added between colons to
not confuse C++ compiler with 2 colons as scope.
* c-c++-common/cilk-plus/AN/vla.c: Make this test C specific.
* g++.dg/cilk-plus/AN/array_test1_tplt.cc: New test.
* g++.dg/cilk-plus/AN/array_test2_tplt.cc: Likewise.
* g++.dg/cilk-plus/AN/array_test_ND_tplt.cc: Likewise.
* g++.dg/cilk-plus/AN/braced_list.cc: Likewise.
* g++.dg/cilk-plus/AN/builtin_fn_custom_tplt.cc: Likewise.
* g++.dg/cilk-plus/AN/builtin_fn_mutating_tplt.cc: Likewise.
* g++.dg/cilk-plus/AN/fp_triplet_values_tplt.c: Likewise.
* g++.dg/cilk-plus/AN/preincr_test.cc: Likewise.
* g++.dg/cilk-plus/AN/postincr_test.cc: Likewise.
* g++.dg/cilk-plus/cilk-plus.exp: New script.
* gcc/testsuite/g++.dg/dg.exp: Included Cilk Plus C++ tests in the list.
From-SVN: r200319
Joseph Myers [Fri, 21 Jun 2013 19:08:01 +0000 (20:08 +0100)]
re PR other/53317 (Conversion from __int128 to __float128)
PR other/53317
gcc/testsuite:
* gcc.dg/torture/fp-int-convert-float128-timode-2.c: New test.
libgcc:
* soft-fp/adddf3.c: Update from glibc.
* soft-fp/addsf3.c: Likewise.
* soft-fp/addtf3.c: Likewise.
* soft-fp/divdf3.c: Likewise.
* soft-fp/divsf3.c: Likewise.
* soft-fp/divtf3.c: Likewise.
* soft-fp/double.h: Likewise.
* soft-fp/eqdf2.c: Likewise.
* soft-fp/eqsf2.c: Likewise.
* soft-fp/eqtf2.c: Likewise.
* soft-fp/extenddftf2.c: Likewise.
* soft-fp/extended.h: Likewise.
* soft-fp/extendsfdf2.c: Likewise.
* soft-fp/extendsftf2.c: Likewise.
* soft-fp/fixdfdi.c: Likewise.
* soft-fp/fixdfsi.c: Likewise.
* soft-fp/fixsfdi.c: Likewise.
* soft-fp/fixsfsi.c: Likewise.
* soft-fp/fixtfdi.c: Likewise.
* soft-fp/fixtfsi.c: Likewise.
* soft-fp/fixunsdfdi.c: Likewise.
* soft-fp/fixunsdfsi.c: Likewise.
* soft-fp/fixunssfdi.c: Likewise.
* soft-fp/fixunssfsi.c: Likewise.
* soft-fp/fixunstfdi.c: Likewise.
* soft-fp/fixunstfsi.c: Likewise.
* soft-fp/floatdidf.c: Likewise.
* soft-fp/floatdisf.c: Likewise.
* soft-fp/floatditf.c: Likewise.
* soft-fp/floatsidf.c: Likewise.
* soft-fp/floatsisf.c: Likewise.
* soft-fp/floatsitf.c: Likewise.
* soft-fp/floatundidf.c: Likewise.
* soft-fp/floatundisf.c: Likewise.
* soft-fp/floatunditf.c: Likewise.
* soft-fp/floatunsidf.c: Likewise.
* soft-fp/floatunsisf.c: Likewise.
* soft-fp/floatunsitf.c: Likewise.
* soft-fp/gedf2.c: Likewise.
* soft-fp/gesf2.c: Likewise.
* soft-fp/getf2.c: Likewise.
* soft-fp/ledf2.c: Likewise.
* soft-fp/lesf2.c: Likewise.
* soft-fp/letf2.c: Likewise.
* soft-fp/muldf3.c: Likewise.
* soft-fp/mulsf3.c: Likewise.
* soft-fp/multf3.c: Likewise.
* soft-fp/negdf2.c: Likewise.
* soft-fp/negsf2.c: Likewise.
* soft-fp/negtf2.c: Likewise.
* soft-fp/op-1.h: Likewise.
* soft-fp/op-2.h: Likewise.
* soft-fp/op-4.h: Likewise.
* soft-fp/op-8.h: Likewise.
* soft-fp/op-common.h: Likewise.
* soft-fp/quad.h: Likewise.
* soft-fp/single.h: Likewise.
* soft-fp/soft-fp.h: Likewise.
* soft-fp/subdf3.c: Likewise.
* soft-fp/subsf3.c: Likewise.
* soft-fp/subtf3.c: Likewise.
* soft-fp/truncdfsf2.c: Likewise.
* soft-fp/trunctfdf2.c: Likewise.
* soft-fp/trunctfsf2.c: Likewise.
* soft-fp/unorddf2.c: Likewise.
* soft-fp/unordsf2.c: Likewise.
* soft-fp/unordtf2.c: Likewise.
* config/aarch64/sfp-machine.h (_FP_QNANNEGATEDP): Define to 0.
* config/arm/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/c6x/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/i386/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/ia64/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/lm32/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/moxie/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/rs6000/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/score/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
* config/tilegx/sfp-machine32.h (_FP_QNANNEGATEDP): Likewise.
* config/tilegx/sfp-machine64.h (_FP_QNANNEGATEDP): Likewise.
* config/tilepro/sfp-machine.h (_FP_QNANNEGATEDP): Likewise.
From-SVN: r200318
Ian Lance Taylor [Fri, 21 Jun 2013 17:56:49 +0000 (17:56 +0000)]
compiler: do not skip compilation of blank-named functions.
Fixes issue 22.
From-SVN: r200316
Paolo Carlini [Fri, 21 Jun 2013 14:23:15 +0000 (14:23 +0000)]
re PR libstdc++/57666 (valarray<T>::operator= in c++11 mode does not adapt to size)
2013-06-21 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/57666
* include/std/valarray (valarray<>::operator=(const _Expr<>&)):
Implement correctly C++11 26.6.2.3/1.
* testsuite/26_numerics/valarray/dr630-3.C: New.
From-SVN: r200305
Andi Kleen [Fri, 21 Jun 2013 13:51:48 +0000 (13:51 +0000)]
Fix HLE example in manual
The HLE example in the manual only commits when using bool
for the flag, because __atomic_clear only writes bool, and
HLE requires the acquire and release to match.
So when the example is copied with e.g. an int variable it
does not commit and causes slower than expected performance.
Some people are running into problems because of this.
Switch it over to use __atomic_store.
Also fix a minor typo nearby.
gcc/:
2013-06-21 Andi Kleen <ak@linux.intel.com>
* doc/extend.texi: Dont use __atomic_clear in HLE
example. Fix typo.
From-SVN: r200304
Andi Kleen [Fri, 21 Jun 2013 13:51:37 +0000 (13:51 +0000)]
Improve __atomic_clear/test_and_set documentation
Document that __atomic_clear and __atomic_test_and_set should
only be used with bool.
gcc/:
2013-06-21 Andi Kleen <ak@linux.intel.com>
* doc/extend.texi: Document that __atomic_clear and
__atomic_test_and_set should only be used with bool.
From-SVN: r200303
Eric Botcazou [Fri, 21 Jun 2013 13:16:57 +0000 (13:16 +0000)]
* config/fpu-sysv.h (get_fpu_except_flags): Fix typo.
From-SVN: r200298
Jan Hubicka [Fri, 21 Jun 2013 06:43:39 +0000 (08:43 +0200)]
gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Use types_same_for_odr.
* gimple-fold.c (gimple_extract_devirt_binfo_from_cst): Use
types_same_for_odr.
* tree.c (decls_same_for_odr): New function.
(same_for_edr): New function.
(types_same_for_odr): New function.
(get_binfo_at_offset): Use it.
* tree.h (types_same_for_odr): Declare.
From-SVN: r200288
Ian Lance Taylor [Fri, 21 Jun 2013 00:29:54 +0000 (00:29 +0000)]
compiler: Really only make descriptors when needed.
From-SVN: r200280
Jason Merrill [Fri, 21 Jun 2013 00:28:30 +0000 (20:28 -0400)]
re PR c++/55149 (capturing VLA in lambda)
PR c++/55149
* decl.c (compute_array_index_type): Don't reject VLAs in SFINAE
context if we're in C++14 mode.
* tree.c (array_of_runtime_bound_p): Return true for a dependent
bound that is not potentually constant.
* cp-tree.h (DECL_VLA_CAPTURE_P, REFERENCE_VLA_OK): New.
* pt.c (tsubst) [REFERENCE_TYPE]: Check REFERENCE_VLA_OK.
* semantics.c (build_lambda_object): Don't rvalue a VLA capture.
(build_capture_proxy): Set REFERENCE_VLA_OK.
(vla_capture_type): Make it a proper C++ class.
(add_capture): Set DECL_VLA_CAPTURE_P. Don't pre-digest the
initializer.
From-SVN: r200279
Jason Merrill [Fri, 21 Jun 2013 00:28:23 +0000 (20:28 -0400)]
* decl.c (compute_array_index_type): Use size_one_node.
From-SVN: r200278
GCC Administrator [Fri, 21 Jun 2013 00:16:34 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200277
Ian Lance Taylor [Fri, 21 Jun 2013 00:11:53 +0000 (00:11 +0000)]
compiler: Only make function descriptors if needed.
From-SVN: r200273
Balaji V. Iyer [Thu, 20 Jun 2013 22:52:07 +0000 (22:52 +0000)]
array-notation-common.c (find_inv_trees): Removed an unwanted typecasting.
2013-06-20 Balaji V. Iyer <balaji.v.iyer@intel.com>
* array-notation-common.c (find_inv_trees): Removed an unwanted
typecasting.
* c-common.h (struct inv_list::additional_tcodes): Changed type from
enum rid to enum tree_code.
From-SVN: r200272
Oleg Endo [Thu, 20 Jun 2013 19:22:02 +0000 (19:22 +0000)]
system.h: Include <cstdlib> as well as <stdlib.h>.
* system.h: Include <cstdlib> as well as <stdlib.h>.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r200265
Jason Merrill [Thu, 20 Jun 2013 18:33:02 +0000 (14:33 -0400)]
pt.c (process_partial_specialization): Build a TEMPLATE_DECL for a partial specialization.
* pt.c (process_partial_specialization): Build a TEMPLATE_DECL for
a partial specialization.
(tsubst_decl): Don't clobber CLASSTYPE_TI_TEMPLATE of a partial
specialization.
(most_specialized_class): Adjust.
From-SVN: r200263
Jason Merrill [Thu, 20 Jun 2013 18:32:56 +0000 (14:32 -0400)]
* cp-tree.h (DECL_TEMPLATE_PARMS, DECL_TEMPLATE_RESULT)
(DECL_TEMPLATE_INSTANTIATIONS, DECL_TEMPLATE_SPECIALIZATIONS): Use
TEMPLATE_DECL_CHECK.
From-SVN: r200262
Uros Bizjak [Thu, 20 Jun 2013 18:13:31 +0000 (20:13 +0200)]
re PR target/57655 (ICE: in create_pre_exit, at mode-switching.c:418 with -mno-fp-ret-in-387 -mvzeroupper -mxop and __builtin_ilogbl())
PR target/57655
* config/i386/i386.c (construct_container): Report error if
long double is used with disabled x87 float returns.
testsuite/ChangeLog:
PR target/57655
* gcc.target/i386/pr57655.c: New test.
From-SVN: r200260
Jeff Law [Thu, 20 Jun 2013 17:16:41 +0000 (11:16 -0600)]
re PR tree-optimization/57660 (FAIL: gcc.dg/tree-ssa/forwprop-28.c scan-tree-dump-times forwprop1 "Replaced" 8)
PR tree-optimization/57660
* gcc.dg/tree-ssa/forwprop-28.c: Don't run test on various
* targets
based on their branch cost.
From-SVN: r200258
Uros Bizjak [Thu, 20 Jun 2013 17:11:51 +0000 (19:11 +0200)]
* ChangeLog: Add some missing lines.
From-SVN: r200256
Uros Bizjak [Thu, 20 Jun 2013 17:08:51 +0000 (19:08 +0200)]
fpu-387.h (_FPU_MASK_ALL): New.
* config/fpu-387.h (_FPU_MASK_ALL): New.
(_FPU_EX_ALL): Ditto.
(set_fpu): Use fstcw to store x87 FPU control word. Use fnclex to
clear stalled exception flags. Correctly clear stalled SSE
exception flags. Simplify code.
(get_fpu_except_flags): Simplify code.
From-SVN: r200255
Iain Sandoe [Thu, 20 Jun 2013 16:48:26 +0000 (16:48 +0000)]
libgomp.exp: Reorder lib loads into dependency order.
2013-06-20 Iain Sandoe <iain@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
* testsuite/lib/libgomp.exp: Reorder lib loads into dependency order.
Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
* testsuite/libgomp.c/c.exp: load_gcc_lib gcc-dg.exp.
* testsuite/libgomp.fortran/fortran.exp: Likewise.
* testsuite/libgomp.graphite/graphite.exp: Likewise.
* testsuite/libgomp.c++/c++.exp: load_gcc_lib gcc-dg.exp.
Use dg-runtest rather than gfortran-dg-runtest.
Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r200253
Iain Sandoe [Thu, 20 Jun 2013 16:44:23 +0000 (16:44 +0000)]
libitm.exp: Reorder lib loads into dependency order.
2013-06-20 Iain Sandoe <iain@codesourcery.com>
Cesar Philippidis <cesar@codesourcery.com>
* testsuite/lib/libitm.exp: Reorder lib loads into dependency order.
Do not load_gcc_lib gcc-dg.exp and add a comment as to why.
* testsuite/libitm.c/c.exp: load_gcc_lib gcc-dg.exp.
* testsuite/libitm.c++/c++.exp: load_gcc_lib gcc-dg.exp.
Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com>
From-SVN: r200252
Torvald Riegel [Thu, 20 Jun 2013 16:40:54 +0000 (16:40 +0000)]
libitm: Handle HTM fastpath in status query functions.
* query.cc (_ITM_inTransaction): Abort when using the HTM fastpath.
(_ITM_getTransactionId): Same.
* config/x86/target.h (htm_transaction_active): New.
From-SVN: r200251
Torvald Riegel [Thu, 20 Jun 2013 16:40:38 +0000 (16:40 +0000)]
libitm: Fix handling of reentrancy in the HTM fastpath.
PR libitm/57643
* beginend.cc (gtm_thread::begin_transaction): Handle reentrancy in
the HTM fastpath.
From-SVN: r200250
Eric Botcazou [Thu, 20 Jun 2013 16:31:22 +0000 (16:31 +0000)]
gcc: Delete.
* ada/acats/tests/gcc: Delete.
* gnat.dg/style: Likewise.
From-SVN: r200249
Jeff Law [Thu, 20 Jun 2013 15:52:57 +0000 (09:52 -0600)]
* gcc.dg/tree-ssa/forwprop-28.c: Add missing dg-final.
From-SVN: r200248
Jan Hubicka [Thu, 20 Jun 2013 14:23:15 +0000 (16:23 +0200)]
lto-cgraph.c (input_symtab): Do not set cgraph state.
* lto-cgraph.c (input_symtab): Do not set cgraph state.
* lto.c (read_cgraph_and_symbols): Set cgraph state.
From-SVN: r200247
Matthias Klose [Thu, 20 Jun 2013 13:16:57 +0000 (13:16 +0000)]
pkg.m4 (PKG_CHECK_MODULES): Use AC_PATH_TOOL to check for pkg-config.
2013-06-20 Matthias Klose <doko@ubuntu.com>
* pkg.m4 (PKG_CHECK_MODULES): Use AC_PATH_TOOL to check for pkg-config.
* classpath/m4/pkg.m4 (PKG_CHECK_MODULES): Likewise.
* configure: Regenerate.
* classpath/configure: Regenerate.
From-SVN: r200244
Matthias Klose [Thu, 20 Jun 2013 13:02:05 +0000 (13:02 +0000)]
libtool-version: Bump soversion.
2013-06-20 Matthias Klose <doko@ubuntu.com>
* libtool-version: Bump soversion.
From-SVN: r200242
Joern Rennecke [Thu, 20 Jun 2013 12:43:29 +0000 (12:43 +0000)]
re PR rtl-optimization/57425 (RTL alias analysis unprepared to handle stack slot sharing)
PR rtl-optimization/57425
PR rtl-optimization/57569
* alias.c (write_dependence_p): Remove parameters mem_mode and
canon_mem_addr. Add parameters x_mode, x_addr and x_canonicalized.
Changed all callers.
(canon_anti_dependence): Get comments and semantics in sync.
Add parameter mem_canonicalized. Changed all callers.
* rtl.h (canon_anti_dependence): Update prototype.
From-SVN: r200241
Richard Biener [Thu, 20 Jun 2013 11:33:43 +0000 (11:33 +0000)]
data-streamer-in.c (streamer_read_uhwi): Optimize single byte case...
2013-06-20 Richard Biener <rguenther@suse.de>
* data-streamer-in.c (streamer_read_uhwi): Optimize single
byte case, inline streamer_read_uchar and defer section
overrun check.
From-SVN: r200239
Tobias Burnus [Thu, 20 Jun 2013 10:55:03 +0000 (12:55 +0200)]
re PR fortran/57633 (I/O: Problem with formatted read: reading CR-LF files (\r\n))
2013-06-20 Tobias Burnus <burnus@net-b.de>
PR fortran/57633
* io/list_read.c (next_char, eat_separator): Don't set EOL for \r.
2013-06-20 Tobias Burnus <burnus@net-b.de>
PR fortran/57633
* gfortran.dg/list_read_11.f90: New.
From-SVN: r200238
Richard Biener [Thu, 20 Jun 2013 10:22:33 +0000 (10:22 +0000)]
re PR tree-optimization/57584 (ice: SSA corruption: Unable to coalesce ssa_names)
2013-06-20 Richard Biener <rguenther@suse.de>
PR tree-optimization/57584
* tree-ssa-loop-niter.c (expand_simple_operations): Avoid including
SSA names into the expanded expression that take part in
abnormal coalescing.
* gcc.dg/torture/pr57584.c: New testcase.
From-SVN: r200237
Tobias Burnus [Thu, 20 Jun 2013 09:37:15 +0000 (11:37 +0200)]
resolve.c (get_temp_from_expr): Don't set FL_VARIABLE twice.
2013-06-20 Tobias Burnus <burnus@net-b.de>
* resolve.c (get_temp_from_expr): Don't set FL_VARIABLE twice.
From-SVN: r200234
Jan Hubicka [Thu, 20 Jun 2013 08:57:14 +0000 (08:57 +0000)]
Fix duplicated lines.
From-SVN: r200233
Sharad Singhai [Thu, 20 Jun 2013 05:20:09 +0000 (05:20 +0000)]
gcov.c (print_usage): Handle new option.
2013-06-19 <singhai@google.com>
* gcov.c (print_usage): Handle new option.
(process_args): Ditto.
(get_gcov_intermediate_filename): New function.
(output_intermediate_file): New function.
(output_gcov_file): New function
(generate_results): Handle new option.
(release_function): Relase demangled name.
(read_graph_file): Handle demangled name.
(output_lines): Ditto.
* doc/gcov.texi: Document gcov intermediate format.
testsuite/ChangeLog:
* g++.dg/gcov/gcov-8.C: New testcase.
* lib/gcov.exp: Handle intermediate format.
From-SVN: r200232
GCC Administrator [Thu, 20 Jun 2013 00:16:33 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r200231
Vladimir Makarov [Wed, 19 Jun 2013 23:57:22 +0000 (23:57 +0000)]
re PR bootstrap/57604 (LRA related bootstrap comparison failure on s390x --with-arch=zEC12)
2013-06-19 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/57604
* lra.c (emit_add3_insn, emit_add2_insn): New functions.
(lra_emit_add): Use the functions. Add comment about Y as an
address segment.
From-SVN: r200227
David Edelsohn [Wed, 19 Jun 2013 23:51:05 +0000 (23:51 +0000)]
re PR driver/57652 (collect2 does not clean up temporary files)
PR driver/57652
* collect2.c (collect_atexit): New.
(collect_exit): Delete.
(main): Register collect_atexit with atexit.
(collect_wait): Change collect_exit to exit.
(do_wait): Same.
* collect2.h (collect_exit): Delete.
* tlink.c (do_tlink): Rename exit to ret. Change collect_exit to exit.
From-SVN: r200226
Wei Mi [Wed, 19 Jun 2013 21:57:42 +0000 (21:57 +0000)]
re PR rtl-optimization/57518 (Redundant insn generated in LRA)
2013-06-19 Wei Mi <wmi@google.com>
PR rtl-optimization/57518
* ira.c (set_paradoxical_subreg): Set pdx_subregs[regno]
if regno is used in paradoxical subreg.
(update_equiv_regs): Check pdx_subregs[regno] before
set a reg to be equivalent with a mem.
From-SVN: r200224
Ian Lance Taylor [Wed, 19 Jun 2013 21:24:58 +0000 (21:24 +0000)]
compiler: reject incorrect unsafe.Offsetof expressions.
The x.Field argument to Offsetof may not involve hidden
dereferences of embedded pointer fields.
Also correct uninitialized implicit_ field.
From-SVN: r200221
Matthias Klose [Wed, 19 Jun 2013 21:01:06 +0000 (21:01 +0000)]
re PR driver/57651 (gcc-ar and gcc-nm don't find the lto plugin)
2013-06-19 Matthias Klose <doko@ubuntu.com>
PR driver/57651
* file-find.h (find_a_file): Add a mode parameter.
* file-find.c (find_a_file): Likewise.
* gcc-ar.c (main): Call find_a_file with R_OK for the plugin,
with X_OK for the executables.
* collect2.c (main): Call find_a_file with X_OK.
From-SVN: r200219
Steve Ellcey [Wed, 19 Jun 2013 20:00:56 +0000 (20:00 +0000)]
re PR target/56942 (MIPS GCC will not build with -mips16 mode because libgcc fails to build)
2013-06-19 Steve Ellcey <sellcey@mips.com>
PR target/56942
* config/mips/mips.md (casesi_internal_mips16_<mode>):
Use NEXT_INSN instead of next_real_insn.
From-SVN: r200216
Igor Zamyatin [Wed, 19 Jun 2013 19:24:25 +0000 (19:24 +0000)]
loop-19.c: Add -fno-common.
gcc/testsuite/ChangeLog
* gcc.dg/tree-ssa/loop-19.c: Add -fno-common.
From-SVN: r200213
Jan Hubicka [Wed, 19 Jun 2013 18:06:12 +0000 (20:06 +0200)]
cgraph.h (const_value_known_p): Replace by ...
* cgraph.h (const_value_known_p): Replace by ...
(ctor_for_folding): .. this one.
* cgraphunit.c (process_function_and_variable_attributes): Use it.
* lto-cgraph.c (compute_ltrans_boundary): Use ctor_for_folding.
* expr.c (expand_expr_real_1): Likewise.
(string_constant): Likewise.
* tree-ssa-loop-ivcanon.c (constant_after_peeling): Likewise.
* ipa.c (process_references): Likewise.
(symtab_remove_unreachable_nodes): Likewise.
* ipa-inline-analysis.c (param_change_prob): Likewise.
* gimple-fold.c (canonicalize_constructor_val): Likewise.
(get_base_constructor): Likwise.
* varpool.c (varpool_remove_node): Likewise.
(varpool_remove_initializer): LIkewise.
(dump_varpool_node): LIkwise.
(const_value_known_p): Rewrite to ...
(ctor_for_folding): ... this one.
* lto-partition.c (add_references_to_partition): Use
ctor_for_folding.
* gcc.dg/tree-ssa/attr-alias-2.c: New testcase.
From-SVN: r200211
Jakub Jelinek [Wed, 19 Jun 2013 17:37:36 +0000 (19:37 +0200)]
re PR driver/57651 (gcc-ar and gcc-nm don't find the lto plugin)
PR driver/57651
* gcc-ar.c (main): If not CROSS_DIRECTORY_STRUCTURE, look for
PERSONALITY in $PATH derived prefixes.
From-SVN: r200209
Jeff Law [Wed, 19 Jun 2013 17:09:10 +0000 (11:09 -0600)]
tree-ssa-forwprop.c (simplify_bitwise_binary_boolean): Fix typo in comment.
* tree-ssa-forwprop.c (simplify_bitwise_binary_boolean): Fix typo
in comment.
From-SVN: r200208
Balaji V. Iyer [Wed, 19 Jun 2013 16:29:37 +0000 (16:29 +0000)]
Replace array size in Array Notation testcode with #define.
2013-06-19 Balaji V. Iyer <balaji.v.iyer@intel.com>
* c-c++-common/cilk-plus/AN/builtin_fn_custom.c: Replaced all the
hard-coded values of array sizes with a #define.
* c-c++-common/cilk-plus/AN/builtin_fn_mutating.c: Likewise.
* c-c++-common/cilk-plus/AN/builtin_func_double2.c: Likewise.
* c-c++-common/cilk-plus/AN/gather_scatter.c: Likewise.
* c-c++-common/cilk-plus/AN/pr57577.c: Likewise.
* c-c++-common/cilk-plus/AN/sec_implicit_ex.c: Likewise.
From-SVN: r200205
Yufeng Zhang [Wed, 19 Jun 2013 15:52:19 +0000 (15:52 +0000)]
builtin-apply-2.c: set STACK_ARGUMENTS_SIZE with 0 if __aarch64__ is defined.
gcc/testsuite/
* gcc.dg/torture/stackalign/builtin-apply-2.c: set
STACK_ARGUMENTS_SIZE with 0 if __aarch64__ is defined.
From-SVN: r200204
Jeff Law [Wed, 19 Jun 2013 14:06:53 +0000 (08:06 -0600)]
tree-ssa-forwprop.c (simplify_bitwise_binary_boolean): New function.
* tree-ssa-forwprop.c (simplify_bitwise_binary_boolean): New function.
(simplify_bitwise_binary): Use it to simpify certain binary ops on
booleans.
* gcc.dg/tree-ssa/forwprop-28.c: New test.
From-SVN: r200201
Sofiane Naci [Wed, 19 Jun 2013 13:05:14 +0000 (13:05 +0000)]
vfp.md: Move VFP instruction classification documentation to ...
* config/arm/vfp.md: Move VFP instruction classification documentation
to ...
* config/arm/arm.md: ... here. Update instruction classification
documentation.
From-SVN: r200199
Richard Earnshaw [Wed, 19 Jun 2013 12:25:26 +0000 (12:25 +0000)]
arm.md (split for eq(reg, 0)): Add variants for ARMv5 and Thumb2.
(peepholes for eq(reg, not-0)): Ensure condition register is dead after
pattern. Use more efficient sequences on ARMv5 and Thumb2.
From-SVN: r200197
Steven Bosscher [Wed, 19 Jun 2013 12:06:30 +0000 (12:06 +0000)]
re PR bootstrap/57609 (S/390 ESA mode bootstrap failure since r197266)
2013-06-19 Steven Bosscher <steven@gcc.gnu.org>
PR target/57609
* config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
with NEXT_INSN. Use tablejump_p to check for jump table data
insns.
From-SVN: r200196
Paolo Carlini [Wed, 19 Jun 2013 09:03:07 +0000 (09:03 +0000)]
re PR c++/56544 (documentation for __cplusplus is out of date)
2013-06-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56544
* doc/cpp.texi [Standard Predefined Macros, __cplusplus]: Document
that now in C++ the value is correct per the C++ standards.
From-SVN: r200193
Manuel López-Ibáñez [Wed, 19 Jun 2013 08:49:59 +0000 (08:49 +0000)]
re PR c++/57638 (warning container: 'integer_cst’ not supported by dump_type#<type error>)
/cp
2013-06-19 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/57638
* pt.c (unify, [TEMPLATE_PARM_INDEX]): Pass to unify_type_mismatch
TREE_TYPE (arg), not arg itself.
/testsuite
2013-06-19 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/57638
* g++.dg/template/error53.C: New.
From-SVN: r200192
Sebastian Huber [Wed, 19 Jun 2013 08:35:10 +0000 (08:35 +0000)]
re PR target/55033 (PowerPC section type conflict error)
gcc/testsuite
2013-06-19 Sebastian Huber <sebastian.huber@embedded-brains.de>
PR target/55033
* gcc.target/powerpc/pr55033.c: Fix options.
From-SVN: r200191
Richard Biener [Wed, 19 Jun 2013 08:15:31 +0000 (08:15 +0000)]
expr.c (expand_expr_real_1): Use SCOPE_FILE_SCOPE_P to check for global context.
2013-06-19 Richard Biener <rguenther@suse.de>
* expr.c (expand_expr_real_1): Use SCOPE_FILE_SCOPE_P to check
for global context.
From-SVN: r200190
Uros Bizjak [Wed, 19 Jun 2013 06:52:56 +0000 (08:52 +0200)]
* ChangeLog: Fix whitespace.
From-SVN: r200189
Andreas Krebbel [Wed, 19 Jun 2013 06:40:05 +0000 (06:40 +0000)]
revert: re PR bootstrap/57609 (S/390 ESA mode bootstrap failure since r197266)
2013-06-19 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Revert:
2013-06-18 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
PR target/57609
* config/s390/s390.c (s390_chunkify_start): Replace next_real_insn
with next_active_insn.
From-SVN: r200188