Jonathan Wakely [Sat, 18 May 2013 20:18:55 +0000 (20:18 +0000)]
unique_ptr.h (make_unique): Declare inline.
* include/bits/unique_ptr.h (make_unique): Declare inline.
(unique_ptr<T[],D>::reset()): Combine two overloads into one.
(default_delete, unique_ptr): Add doxygen comments.
* include/bits/shared_ptr_base.h: Improve doxygen comments.
* include/bits/shared_ptr.h: Likewise.
* testsuite/20_util/default_delete/48631_neg.cc: Adjust dg-error line
number.
* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
From-SVN: r199069
Jonathan Wakely [Sat, 18 May 2013 18:10:01 +0000 (18:10 +0000)]
* doc/xml/manual/status_cxx2011.xml: Fix markup error.
From-SVN: r199066
Jonathan Wakely [Sat, 18 May 2013 16:18:35 +0000 (16:18 +0000)]
utility (exchange): Define.
* include/std/utility (exchange): Define.
* testsuite/20_util/exchange/1.cc: New.
From-SVN: r199061
Jonathan Wakely [Sat, 18 May 2013 15:07:02 +0000 (15:07 +0000)]
unique_ptr.h (make_unique): Define.
* include/bits/unique_ptr.h (make_unique): Define.
* testsuite/20_util/unique_ptr/creation/single.cc: New.
* testsuite/20_util/unique_ptr/creation/array.cc: New.
* testsuite/20_util/unique_ptr/creation/array_neg.cc: New.
From-SVN: r199057
Richard Sandiford [Sat, 18 May 2013 07:58:55 +0000 (07:58 +0000)]
recog.h (Recog_data): Rename to...
gcc/
* recog.h (Recog_data): Rename to...
(recog_data_d): ...this.
(recog_data): Update accordingly.
* recog.c (recog_data): Likewise.
* reload.c (save_recog_data): Likewise.
* config/picochip/picochip.c (picochip_saved_recog_data): Likewise.
(picochip_save_recog_data, picochip_restore_recog_data): Likewise.
From-SVN: r199050
Julian Brown [Sat, 18 May 2013 03:48:18 +0000 (03:48 +0000)]
gcse.c (compute_ld_motion_mems): If a non-simple MEM is found in a REG_EQUAL note, invalidate it.
* gcse.c (compute_ld_motion_mems): If a non-simple MEM is
found in a REG_EQUAL note, invalidate it.
From-SVN: r199049
Easwaran Raman [Sat, 18 May 2013 01:35:04 +0000 (01:35 +0000)]
tree-ssa-reassoc.c (find_insert_point): New function.
2013-05-17 Easwaran Raman <eraman@google.com>
* tree-ssa-reassoc.c (find_insert_point): New function.
(insert_stmt_after): Likewise.
(get_def_stmt): Likewise.
(ensure_ops_are_available): Likewise.
(not_dominated_by): Likewise.
(rewrite_expr_tree): Do not move statements beyond what is
necessary. Remove call to swap_ops_for_binary_stmt...
(reassociate_bb): ... and move it here.
(build_and_add_sum): Assign UIDs for new statements.
(linearize_expr): Likewise.
(do_reassoc): Renumber gimple statement UIDs.
testsuite/ChangeLog:
2013-05-17 Easwaran Raman <eraman@google.com>
* gcc.dg/tree-ssa/reassoc-28.c: New testcase.
From-SVN: r199048
GCC Administrator [Sat, 18 May 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r199047
Jan Hubicka [Fri, 17 May 2013 22:20:58 +0000 (00:20 +0200)]
lto-symtab.c (lto_symtab_merge_cgraph_nodes): Resolve cross module weakrefs.
* lto-symtab.c (lto_symtab_merge_cgraph_nodes): Resolve cross module
weakrefs.
* cgraph.c (dump_cgraph_node): Do not ice on unresolved alias.
* cgraphunit.c (handle_alias_pairs): Store target of unresolved weakrefs.
(output_weakrefs): Update.
From-SVN: r199041
Jan Hubicka [Fri, 17 May 2013 22:15:47 +0000 (00:15 +0200)]
lto-partition.c (privatize_symbol_name): Return true when privatizing happened.
* lto-partition.c (privatize_symbol_name): Return true when
privatizing happened.
(rename_statics): Do not go into infinite loop when privatizing
is not needed.
From-SVN: r199040
Po-Chun Chang [Fri, 17 May 2013 21:12:34 +0000 (21:12 +0000)]
re PR middle-end/57276 (Waste work in cgraph_edge_brings_all_agg_vals_for_node())
2013-05-17 Po-Chun Chang <pchang9@cs.wisc.edu>
Martin Jambor <mjambor@suse.cz>
PR middle-end/57276
* ipa-cp.c (cgraph_edge_brings_all_agg_vals_for_node): Break when a
value that corresponds to the given aggval is found in values vector.
Co-Authored-By: Martin Jambor <mjambor@suse.cz>
From-SVN: r199035
Uros Bizjak [Fri, 17 May 2013 20:09:01 +0000 (22:09 +0200)]
driver-i386.c (host_detect_local_cpu): Pass mmx, 3dnow, sse, sse2, sse3, ssse3 and sse4a flags to options.
* config/i386/driver-i386.c (host_detect_local_cpu): Pass mmx, 3dnow,
sse, sse2, sse3, ssse3 and sse4a flags to options.
From-SVN: r199034
David Malcolm [Fri, 17 May 2013 19:23:35 +0000 (19:23 +0000)]
gengtype-state.c: (s_expr_writer): New class, to handle prettifying of output layout of s-expressions.
2013-05-17 David Malcolm <dmalcolm@redhat.com>
* gengtype-state.c: (s_expr_writer): New class, to handle
prettifying of output layout of s-expressions.
(state_writer): New class, to write out gtype.state.
(state_written_type_count): Move this variable into member data of
state_writer.
(s_expr_writer::s_expr_writer): New code: constructor for new class
(state_writer::state_writer(): ditto
(s_expr_writer::write_new_line): New function
(s_expr_writer::write_any_indent): ditto
(s_expr_writer::begin_s_expr): ditto
(s_expr_writer::end_s_expr): ditto
(write_state_fileloc): convert to method of state_writer...
(state_writer:: write_state_fileloc): ...and use methods of
s_expr_writer to write indentation into the gtype.state output file
to visually represent the hierarchical structure of the list
structures
(write_state_fields): ditto, renaming to...
(state_writer::write_state_fields)
(write_state_a_string): ditto, renaming to...
(state_writer::write_state_a_string)
(write_state_string_option): ditto, renaming to...
(state_writer::write_state_string_option)
(write_state_type_option): ditto, renaming to...
(state_writer::write_state_type_option)
(write_state_nested_option): ditto, renaming to...
(state_writer::write_state_nested_option)
(write_state_option): ditto, renaming to...
(state_writer::write_state_option)
(write_state_options): ditto, renaming to...
(state_writer::write_state_options)
(write_state_lang_bitmap): ditto, renaming to...
(state_writer::write_state_lang_bitmap)
(write_state_version): ditto, renaming to...
(state_writer::write_state_version)
(write_state_scalar_type): ditto, renaming to...
(state_writer::write_state_scalar_type)
(write_state_string_type): ditto, renaming to...
(state_writer::write_state_string_type)
(write_state_undefined_type): ditto, renaming to...
(state_writer::write_state_undefined_type)
(write_state_struct_union_type): ditto, renaming to...
(state_writer::write_state_struct_union_type)
(write_state_struct_type): ditto, renaming to...
(state_writer::write_state_struct_type)
(write_state_user_struct_type): ditto, renaming to...
(state_writer::write_state_user_struct_type)
(write_state_lang_struct_type): ditto, renaming to...
(state_writer::write_state_lang_struct_type)
(write_state_param_struct_type): ditto, renaming to...
(state_writer::write_state_param_struct_type)
(write_state_pointer_type): ditto, renaming to...
(state_writer::write_state_pointer_type)
(write_state_array_type): ditto, renaming to...
(state_writer::write_state_array_type)
(write_state_gc_used): ditto, renaming to...
(state_writer::write_state_gc_used)
(write_state_common_type_content): ditto, renaming to...
(state_writer::write_state_common_type_content)
(write_state_type): ditto, renaming to...
(state_writer::write_state_type)
(write_state_pair_list): ditto, renaming to...
(state_writer::write_state_pair_list)
(write_state_pair): ditto, renaming to...
(state_writer::write_state_pair)
(write_state_typedefs): ditto, renaming to...
(state_writer::write_state_typedefs)
(write_state_structures): ditto, renaming to...
(state_writer::write_state_structures)
(write_state_param_structs): ditto, renaming to...
(state_writer::write_state_param_structs)
(write_state_variables): ditto, renaming to...
(state_writer::write_state_variables)
(write_state_srcdir): ditto, renaming to...
(state_writer::write_state_srcdir)
(write_state_files_list): ditto, renaming to...
(state_writer::write_state_files_list)
(write_state_languages): ditto, renaming to...
(state_writer::write_state_languages)
(write_state): create a state_writer instance and use it when
writing out the state file
From-SVN: r199032
Mike Stump [Fri, 17 May 2013 19:12:14 +0000 (19:12 +0000)]
re PR rtl-optimization/57304 (Revision 198896 segfaults building cpu2000 benchmark 176.gcc)
PR rtl-optimization/57304
* web.c (union_match_dups): Ensure that DF_REF_LOC exists before
accessing DF_REF_REAL_LOC.
From-SVN: r199030
Mike Stump [Fri, 17 May 2013 19:09:56 +0000 (19:09 +0000)]
web.c (union_match_dups): Ensure that DF_REF_LOC exists before accessing DF_REF_REAL_LOC.
* web.c (union_match_dups): Ensure that DF_REF_LOC exists before
accessing DF_REF_REAL_LOC.
From-SVN: r199029
David Malcolm [Fri, 17 May 2013 15:53:09 +0000 (15:53 +0000)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r199022
Marc Glisse [Fri, 17 May 2013 15:31:02 +0000 (17:31 +0200)]
re PR testsuite/57313 (gcc.dg/binop-xor3.c scan-tree-dump-times)
2013-05-17 Marc Glisse <marc.glisse@inria.fr>
PR testsuite/57313
* gcc.dg/binop-xor3.c: Restrict to platforms known to work (x86).
From-SVN: r199020
Richard Henderson [Fri, 17 May 2013 15:27:37 +0000 (08:27 -0700)]
re PR target/49146 (segv from libgcc_s when raising an exception, or unwinding stack with backtrace with ms_abi)
PR target/49146
* unwind-dw2.c (UNWIND_COLUMN_IN_RANGE): New macro.
(execute_cfa_program): Use it when storing to fs->regs.
From-SVN: r199019
Jakub Jelinek [Fri, 17 May 2013 15:22:24 +0000 (17:22 +0200)]
re PR rtl-optimization/57281 (x86_64-linux loop fails to terminate at -O3 -m32)
PR rtl-optimization/57281
PR rtl-optimization/57300
* config/i386/i386.md (extendsidi2_1 dead reg splitter): Remove.
(extendsidi2_1 peephole2s): Add instead 2 new peephole2s, that undo
what the other splitter did if the registers are dead.
* gcc.dg/pr57300.c: New test.
* gcc.c-torture/execute/pr57281.c: New test.
From-SVN: r199018
Richard Biener [Fri, 17 May 2013 12:47:45 +0000 (12:47 +0000)]
tree-ssa-alias.c (stmt_kills_ref_p_1): Properly compare MEM_REF offsets.
2013-05-17 Richard Biener <rguenther@suse.de>
* tree-ssa-alias.c (stmt_kills_ref_p_1): Properly compare
MEM_REF offsets.
From-SVN: r199014
Paolo Carlini [Fri, 17 May 2013 12:35:44 +0000 (12:35 +0000)]
re PR c++/18126 (sizeof compound-literal not parsed correctly)
/cp
2013-05-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/18126
* parser.c (cp_parser_sizeof_operand): As a GNU Extension, parse
correctly sizeof compound-literal; update comments.
/testsuite
2013-05-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/18126
* g++.dg/ext/sizeof-complit.C: New.
From-SVN: r199012
Jakub Jelinek [Fri, 17 May 2013 12:17:14 +0000 (14:17 +0200)]
gcc.c (SANITIZER_SPEC): Reject -fsanitize=address -fsanitize=thread linking.
* gcc.c (SANITIZER_SPEC): Reject -fsanitize=address -fsanitize=thread
linking.
From-SVN: r199009
Marek Polacek [Fri, 17 May 2013 09:32:01 +0000 (09:32 +0000)]
Add tree-ssa-strlen optimization.
From-SVN: r199006
Jakub Jelinek [Fri, 17 May 2013 09:13:33 +0000 (11:13 +0200)]
tree-vect-patterns.c (vect_recog_rotate_pattern): For vect_external_def oprnd1 with loop_vinfo...
* tree-vect-patterns.c (vect_recog_rotate_pattern): For
vect_external_def oprnd1 with loop_vinfo, try to emit
optional cast, negation and and stmts on the loop preheader
edge instead of into the pattern def seq.
* gcc.target/i386/rotate-4.c: Compile only with -mavx
instead of -mavx2, require only avx instead of avx2.
* gcc.target/i386/rotate-4a.c: Include avx-check.h instead
of avx2-check.h and turn into an avx runtime test instead of
avx2 runtime test.
From-SVN: r199005
Rainer Orth [Fri, 17 May 2013 08:39:37 +0000 (08:39 +0000)]
solaris_pow_int_overload should use __cplusplus
* inclhack.def (solaris_pow_int_overload): Update comment.
Change guard to match <cmath>.
* fixincl.x: Regenerate.
* tests/base/iso/math_iso.h [SOLARIS_POW_INT_OVERLOAD_CHECK]:
Matching change.
From-SVN: r199003
Jakub Jelinek [Fri, 17 May 2013 08:31:32 +0000 (10:31 +0200)]
re PR tree-optimization/57051 (Optimization regression in 4.8.0 from 4.7.2)
PR tree-optimization/57051
* fold-const.c (const_binop) <case VEC_LSHIFT_EXPR,
case VEC_RSHIFT_EXPR>: Fix BYTES_BIG_ENDIAN handling.
From-SVN: r199002
Nick Clifton [Fri, 17 May 2013 07:51:53 +0000 (07:51 +0000)]
rl78.c (rl78_attribute_table): Add naked.
* config/rl78/rl78.c (rl78_attribute_table): Add naked.
(rl78_is_naked_func): New function.
(rl78_expand_prologue): Skip prologue generation for naked
functions.
(rl78_expand_epilogue): Skip epilogue generation for naked
functions.
* doc/extend.texi (naked): Add RL78 to the list of processors
that supports this attribute.
From-SVN: r199001
Jeff Law [Fri, 17 May 2013 03:32:23 +0000 (21:32 -0600)]
* Makefile.in (tree-switch-conversion.o): Depend on $(OPTABS_H).
From-SVN: r198999
GCC Administrator [Fri, 17 May 2013 00:16:26 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r198997
Uros Bizjak [Thu, 16 May 2013 22:41:55 +0000 (00:41 +0200)]
i386.c (ix86_option_override_internal): Add missing PTA_FXSR flag to Athlon-4.
* config/i386/i386.c (ix86_option_override_internal):
Add missing PTA_FXSR flag to Athlon-4.
From-SVN: r198993
Uros Bizjak [Thu, 16 May 2013 22:37:13 +0000 (00:37 +0200)]
i386.c (ix86_option_override_internal): Revert removal of Athlon-4 PTA_SSE flag.
* config/i386/i386.c (ix86_option_override_internal):
Revert removal of Athlon-4 PTA_SSE flag.
From-SVN: r198992
Uros Bizjak [Thu, 16 May 2013 21:41:26 +0000 (23:41 +0200)]
driver-i386.c (host_detect_local_cpu): Determine cache parameters using detect_caches_amd also for CYRIX...
* config/i386/driver-i386.c (host_detect_local_cpu): Determine
cache parameters using detect_caches_amd also for CYRIX,
NSC and TM2 signatures.
From-SVN: r198989
Marc Glisse [Thu, 16 May 2013 20:32:42 +0000 (22:32 +0200)]
call.c (build_conditional_expr_1): Use cp_build_binary_op instead of directly calling fold_build2.
2013-05-16 Marc Glisse <marc.glisse@inria.fr>
gcc/cp/
* call.c (build_conditional_expr_1): Use cp_build_binary_op
instead of directly calling fold_build2.
gcc/testsuite/
* g++.dg/ext/vector22.C: Uncomment working test.
From-SVN: r198988
Uros Bizjak [Thu, 16 May 2013 19:53:36 +0000 (21:53 +0200)]
re PR target/45359 (poor -march=native choices for VIA C7 Esther processors)
PR target/45359
PR target/46396
* config/i386/driver-i386.c (host_detect_local_cpu): Detect
VIA/Centaur processors and determine their cache parameters
using detect_caches_amd.
Co-Authored-By: Dzianis Kahanovich <mahatma@eu.by>
From-SVN: r198987
Teresa Johnson [Thu, 16 May 2013 17:45:35 +0000 (17:45 +0000)]
cfgrtl.c (verify_hot_cold_block_grouping): Return err.
2013-05-16 Teresa Johnson <tejohnson@google.com>
* cfgrtl.c (verify_hot_cold_block_grouping): Return err.
(rtl_verify_edges): New function.
(rtl_verify_bb_insns): Ditto.
(rtl_verify_bb_pointers): Ditto.
(rtl_verify_bb_insn_chain): Ditto.
(rtl_verify_fallthru): Ditto.
(rtl_verify_bb_layout): Ditto.
(rtl_verify_flow_info_1): Outline checks into new functions.
(rtl_verify_flow_info): Ditto.
From-SVN: r198982
Jason Merrill [Thu, 16 May 2013 17:41:13 +0000 (13:41 -0400)]
add quotes
From-SVN: r198981
Steve Ellcey [Thu, 16 May 2013 17:09:40 +0000 (17:09 +0000)]
cfghooks.c (copy_bbs): Add update_dominance argument.
2013-05-16 Steve Ellcey <sellcey@imgtec.com>
* cfghooks.c (copy_bbs): Add update_dominance argument.
* cfghooks.h (copy_bbs): Update prototype.
* tree-cfg.c (gimple_duplicate_sese_region):
Add update_dominance argument.
* tree-flow.h (gimple_duplicate_sese_region): Update prototype.
* tree-ssa-loop-ch.c (copy_loop_headers): Update
gimple_duplicate_sese_region call.
* tree-vect-loop-manip.c (slpeel_tree_duplicate_loop_to_edge_cfg):
Update copy_bbs call.
* cfgloopmanip.c (duplicate_loop_to_header_edge): Ditto.
* trans-mem.c (ipa_uninstrument_transaction): Ditto.
From-SVN: r198980
Paolo Carlini [Thu, 16 May 2013 16:56:08 +0000 (16:56 +0000)]
re PR c++/17410 (Specialization of nested template rejected because of unrelated declaration)
2013-05-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/17410
* g++.dg/template/pr17410.C: New.
From-SVN: r198979
Jakub Jelinek [Thu, 16 May 2013 16:24:19 +0000 (18:24 +0200)]
tree-vectorizer.h (NUM_PATTERNS): Increment.
* tree-vectorizer.h (NUM_PATTERNS): Increment.
* tree-vect-patterns.c (vect_vect_recog_func_ptrs): Add
vect_recog_rotate_pattern.
(vect_recog_rotate_pattern): New function.
* gcc.target/i386/rotate-3.c: New test.
* gcc.target/i386/rotate-3a.c: New test.
* gcc.target/i386/rotate-4.c: New test.
* gcc.target/i386/rotate-4a.c: New test.
* gcc.target/i386/rotate-5.c: New test.
* gcc.target/i386/rotate-5a.c: New test.
From-SVN: r198978
Jason Merrill [Thu, 16 May 2013 15:09:31 +0000 (11:09 -0400)]
Makefile.in (LLINKER): New variable.
* Makefile.in (LLINKER): New variable.
(mostlyclean): Remove link mutex.
* configure.ac: Handle --enable-link-mutex.
* lock-and-run.sh: New script.
From-SVN: r198977
Jason Merrill [Thu, 16 May 2013 15:03:25 +0000 (11:03 -0400)]
re PR c++/57279 ([C++11] alias declaration fails to declare function types with cv-qualifiers)
PR c++/57279
* decl.c (grokdeclarator): Allow member function qualifiers in
TYPENAME context.
From-SVN: r198975
Rainer Orth [Thu, 16 May 2013 14:39:21 +0000 (14:39 +0000)]
Require section_anchors in gcc.dg/visibility-21.c
* gcc.dg/visibility-21.c: Require section_anchors.
From-SVN: r198974
Ramana Radhakrishnan [Thu, 16 May 2013 14:31:24 +0000 (14:31 +0000)]
Fix breakage with missing decl check for arm-none-eabi builds.
2013-05-16 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
* config/arm/arm.c (arm_function_ok_for_sibcall): Add check
for NULL decl.
From-SVN: r198973
Rainer Orth [Thu, 16 May 2013 12:52:18 +0000 (12:52 +0000)]
Restore bootstrap on non-cc0 targets
* reorg.c (link_cc0_insns): Wrap in #ifdef HAVE_cc0.
From-SVN: r198971
Greta Yorsh [Thu, 16 May 2013 12:02:06 +0000 (13:02 +0100)]
Internal memcpy using LDRD/STRD
2013-05-16 Greta Yorsh <Greta.Yorsh@arm.com>
gcc/
* config/arm/arm-protos.h (gen_movmem_ldrd_strd): New declaration.
* config/arm/arm.c (next_consecutive_mem): New function.
(gen_movmem_ldrd_strd): Likewise.
* config/arm/arm.md (movmemqi): Update condition and code.
(unaligned_loaddi, unaligned_storedi): New patterns.
gcc/testsuite
* gcc.target/arm/unaligned-memcpy-2.c: Adjust expected output.
* gcc.target/arm/unaligned-memcpy-3.c: Likewise.
* gcc.target/arm/unaligned-memcpy-4.c: Likewise.
From-SVN: r198970
Rainer Orth [Thu, 16 May 2013 11:36:39 +0000 (11:36 +0000)]
Obsolete Solaris 9 support
gcc:
* config.gcc: Obsolete *-*-solaris2.9*.
* doc/install.texi (Specific, *-*-solaris2*): Document it.
contrib:
* config-list.mk (LIST): Add -enable-obsolete for
sparc-sun-solaris2.9, i686-solaris2.9.
From-SVN: r198969
Richard Biener [Thu, 16 May 2013 11:19:40 +0000 (11:19 +0000)]
passes.c (init_optimization_passes): Move pass_parallelize_loops earlier...
2013-05-16 Richard Biener <rguenther@suse.de>
* passes.c (init_optimization_passes): Move pass_parallelize_loops
earlier, after GRAPHITE transforms and IV canonicalization.
From-SVN: r198968
Jakub Jelinek [Thu, 16 May 2013 10:43:33 +0000 (12:43 +0200)]
omp-low.c (extract_omp_for_data): For collapsed loops...
* omp-low.c (extract_omp_for_data): For collapsed loops,
if at least one of the loops is known at compile time to
iterate zero times, set count to 0.
(expand_omp_regimplify_p): New function.
(expand_omp_for_generic): For collapsed loops, if at least
one of the loops isn't known to iterate at least once,
add runtime check with setting count to 0.
(expand_omp_for_static_nochunk, expand_omp_for_static_chunk):
For unsigned types if it isn't known at compile time that
the loop will iterate at least once, add runtime check to bypass
the whole loop if initial condition isn't true.
* testsuite/libgomp.c/loop-13.c: New test.
* testsuite/libgomp.c/loop-14.c: New test.
* testsuite/libgomp.c/loop-15.c: New test.
* testsuite/libgomp.c++/loop-13.C: New test.
* testsuite/libgomp.c++/loop-14.C: New test.
* testsuite/libgomp.c++/loop-15.C: New test.
From-SVN: r198966
Nathan Sidwell [Thu, 16 May 2013 10:29:42 +0000 (10:29 +0000)]
varasm.c (default_use_anchors_for_symbol_p): Use decl_replaceable_p.
gcc/
* varasm.c (default_use_anchors_for_symbol_p): Use decl_replaceable_p.
gcc/testsuite/
* gcc.dg/visibility-21.c: New.
From-SVN: r198965
Marc Glisse [Thu, 16 May 2013 10:26:51 +0000 (12:26 +0200)]
re PR middle-end/57286 (infinite recursion in fold-const.c:10037)
2013-05-16 Marc Glisse <marc.glisse@inria.fr>
PR middle-end/57286
gcc/
* fold-const.c (fold_ternary_loc) <VEC_COND_EXPR>: Disable some
transformations to avoid an infinite loop.
gcc/testsuite/
* gcc.dg/pr57286.c: New testcase.
* gcc.dg/vector-shift-2.c: Don't assume int has size 4.
* g++.dg/ext/vector22.C: Comment out transformations not
performed anymore.
From-SVN: r198964
Marek Polacek [Thu, 16 May 2013 09:23:47 +0000 (09:23 +0000)]
Add SCEV cprop dumping.
From-SVN: r198963
Dodji Seketeli [Thu, 16 May 2013 06:14:49 +0000 (06:14 +0000)]
PR c++/56782 - Regression with empty pack expansions
In the example of the patch below, during the instantiation of
is_convertible at #1, we see at some point Tuple<>. (Let's note '{}'
an empty argument pack.) In that context, during the partial
specialization the member template
template<class... U>
Tuple<>::Tuple<U,
typename enable_if<and_<is_convertible<U, {}>...
>::value,
int
>::type
>
Let's look at what happens to the expansion "is_convertible<U, {}>...."
To express the result of that expansion tsubst_pack_expansion receives
the expansion is_convertible<U, T>, with the argument list [{}]. This
function should detect that we have an empty argument pack for the
parameter pack T and no argument pack for the parameter pack U. It
should thus return a pack expansion "is_convertible<U,T>..." that has this
information: "I have gotten an argument list, that is not complete
because U doesn't have any argument pack; the argument pack for T is
'{}', so I'll wait for the next time I am passed to
tsubst_pack_expansion with enough additional argument packs, to really
perform the substitution". That information is conveyed by attaching
the the '{}' to the PACK_EXPANSION_EXTRA property of the pack expansion
returned by tsubst_pack_expansion.
The problem in this report is that we are not setting
PACK_EXPANSION_EXTRA when the non-complete argument pack list is made
of an empty argument pack, because use_pack_expansion_extra_args_p
doesn't detect this case.
Fixed thus.
gcc/cp/
* pt.c (use_pack_expansion_extra_args_p): When at least a
parameter pack has an empty argument pack, and another parameter
pack has no argument pack at all, use the PACK_EXPANSION_EXTRA
mechanism.
From-SVN: r198956
GCC Administrator [Thu, 16 May 2013 00:16:28 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r198955
Leif Ekblad [Wed, 15 May 2013 20:35:29 +0000 (20:35 +0000)]
i386.c (ix86_decompose_address): Use DEFAULT_TLS_SEG_REG to access TLS segment register.
* config/i386/i386.c (ix86_decompose_address): Use
DEFAULT_TLS_SEG_REG to access TLS segment register.
* config/i386/i386.h (DEFAULT_TLS_SEG_REG): New define.
* config/i386/rdos.h (DEFAULT_TLS_SEG_REG): Ditto.
(TARGET_TLS_DIRECT_SEG_REFS_DEFAULT): Ditto.
From-SVN: r198948
François Dumont [Wed, 15 May 2013 19:39:18 +0000 (19:39 +0000)]
printers.py (Tr1HashtableIterator): Fix rendering of std::tr1 unordered containers iterator.
2013-05-15 François Dumont <fdumont@gcc.gnu.org>
* python/libstdcxx/v6/printers.py (Tr1HashtableIterator): Fix
rendering of std::tr1 unordered containers iterator.
(StdHashtableIterator): New, render std unordered containers iterator.
* testsuite/libstdc++-prettyprinters/tr1.cc: New.
From-SVN: r198947
Richard Sandiford [Wed, 15 May 2013 19:16:34 +0000 (19:16 +0000)]
re PR target/57260 (Generated R_MIPS_GOT_MIPS relocation for direct function call while compiling with -O2 on MIPS N64)
gcc/
PR target/57260
* config/mips/mips.c (mips_function_ok_for_sibcall): Don't allow
sibling calls to functions that would normally be lazily bound,
unless $gp is call-clobbered.
gcc/testsuite/
PR target/57260
* gcc.target/mips/call-1.c: Restrict to o32.
* gcc.target/mips/call-5.c, gcc.target/mips/call-6.c: New test.
From-SVN: r198945
Paolo Carlini [Wed, 15 May 2013 18:24:31 +0000 (18:24 +0000)]
name-lookup.c (pushdecl_maybe_friend_1): Replace pairs of warning_at and permerror with warning_at/inform and permerror/...
/cp
2013-05-15 Paolo Carlini <paolo.carlini@oracle.com>
* name-lookup.c (pushdecl_maybe_friend_1): Replace pairs of
warning_at and permerror with warning_at/inform and permerror/
inform, respectively.
/testsuite
2013-05-15 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/cpp0x/lambda/lambda-shadow1.C: Replace dg-warnings with
dg-messages.
* g++.dg/warn/Wshadow-1.C: Likewise.
* g++.dg/warn/Wshadow-6.C: Likewise.
* g++.dg/warn/Wshadow-7.C: Likewise.
From-SVN: r198943
Uros Bizjak [Wed, 15 May 2013 17:48:26 +0000 (19:48 +0200)]
i386.c (iy86_option_override_internal): Update processor_alias_table for missing PTA_PRFCHW and PTA_FXSR flags.
* config/i386/i386.c (iy86_option_override_internal): Update
processor_alias_table for missing PTA_PRFCHW and PTA_FXSR flags. Add
PTA_POPCNT to corei7 entry and remove PTA_SSE from athlon-4 entry.
Do not enable SSE prefetch on non-SSE 3dNow! targets. Enable
TARGET_PRFCHW for TARGET_3DNOW targets.
* config/i386/i386.md (prefetch): Enable for TARGET_PRFCHW instead
of TARGET_3DNOW.
(*prefetch_3dnow): Enable for TARGET_PRFCHW only.
From-SVN: r198942
Andreas Schwab [Wed, 15 May 2013 16:10:59 +0000 (16:10 +0000)]
m68k.md (*rotlhi3_lowpart, [...]): Name for rotlhi3+1 and rotlqi3+1, resp.
* config/m68k/m68k.md (*rotlhi3_lowpart, *rotlqi3_lowpart): Name
for rotlhi3+1 and rotlqi3+1, resp. Fix reference to non-existing
third operand.
From-SVN: r198940
Paolo Carlini [Wed, 15 May 2013 16:10:22 +0000 (16:10 +0000)]
re PR c++/31952 (parameters may be redeclared in a function try-block)
/cp
2013-05-15 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/31952
* name-lookup.c (pushdecl_maybe_friend_1): Diagnose illegal
redeclarations.
/testsuite
2013-05-15 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/31952
* g++.dg/parse/pr31952-1.C: New.
* g++.dg/parse/pr31952-2.C: Likewise.
* g++.dg/parse/pr31952-3.C: Likewise.
* g++.dg/parse/pr18770.C: Adjust dg-errors to dg-messages.
* g++.old-deja/g++.jason/cond.C: Likewise.
* g++.dg/cpp0x/range-for5.C: Likewise.
From-SVN: r198939
Teresa Johnson [Wed, 15 May 2013 15:26:38 +0000 (15:26 +0000)]
loop-unroll.c (report_unroll_peel): Check decision before emitting unroll/peel message.
2013-05-15 Teresa Johnson <tejohnson@google.com>
* loop-unroll.c (report_unroll_peel): Check decision before
emitting unroll/peel message.
From-SVN: r198936
Teresa Johnson [Wed, 15 May 2013 14:14:15 +0000 (14:14 +0000)]
function.h (has_bb_partition): New rtl_data flag.
2013-05-15 Teresa Johnson <tejohnson@google.com>
* function.h (has_bb_partition): New rtl_data flag.
(bb_reorder_complete): Ditto.
* cfgcleanup.c (try_crossjump_to_edge): Check for has_bb_partition
instead of flag_reorder_blocks_and_partition.
* cfgrtl.c (verify_hot_cold_block_grouping): Moved from bb-reorder.c,
with some enhancements.
(rtl_verify_flow_info_1): Call verify_hot_cold_block_grouping.
* bb-reorder.c (connect_traces): Check for has_bb_partition
instead of flag_reorder_blocks_and_partition.
(verify_hot_cold_block_grouping): Moved to cfgrtl.c.
(reorder_basic_blocks): Set bb_reorder_complete flag, remove call to
verify_hot_cold_block_grouping.
(partition_hot_cold_basic_blocks): Set has_bb_partition.
From-SVN: r198934
Ramana Radhakrishnan [Wed, 15 May 2013 11:49:06 +0000 (11:49 +0000)]
Fix PR target/19599 - tailcall function pointers.
2013-05-15 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
* config/arm/predicates.md (call_insn_operand): New predicate.
* config/arm/constraints.md ("Cs", "Ss"): New constraints.
* config/arm/arm.md (*call_insn, *call_value_insn): Match only
if insn is not a tail call.
(*sibcall_insn, *sibcall_value_insn): Adjust for tailcalling through
registers.
* config/arm/arm.h (enum reg_class): New caller save register class.
(REG_CLASS_NAMES): Likewise.
(REG_CLASS_CONTENTS): Likewise.
* config/arm/arm.c (arm_function_ok_for_sibcall): Allow tailcalling
without decls.
2013-05-15 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
PR target/19599
* gcc.target/arm/pr40887.c: Adjust testcase.
* gcc.target/arm/pr19599.c: New test.
From-SVN: r198928
Richard Biener [Wed, 15 May 2013 11:13:46 +0000 (11:13 +0000)]
tree-vect-loop.c (vect_transform_loop): Use MSG_NOTE instead of MSG_OPTIMIZED_LOCATIONS.
2013-05-15 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (vect_transform_loop): Use MSG_NOTE instead
of MSG_OPTIMIZED_LOCATIONS.
* tree-vect-slp.c (vect_make_slp_decision): Likewise.
(vect_slp_transform_bb): Indicate location in MSG_OPTIMIZED_LOCATIONS
message.
* tree-vectorizer.c (vectorize_loops): Use MSG_NOTE instead
of MSG_OPTIMIZED_LOCATIONS.
(execute_vect_slp): Likewise.
* tree-vect-loop-manip.c (vect_do_peeling_for_loop_bound): Likewise.
(vect_create_cond_for_alias_checks): Likewise.
* tree-vect-patterns.c (vect_recog_dot_prod_pattern): Likewise.
(vect_recog_widen_mult_pattern): Likewise.
(vect_recog_widen_sum_pattern): Likewise.
(vect_recog_over_widening_pattern): Likewise.
(vect_recog_widen_shift_pattern): Likewise.
(vect_recog_vector_vector_shift_pattern): Likewise.
(vect_recog_divmod_pattern): Likewise.
(vect_recog_mixed_size_cond_pattern): Likewise.
(vect_recog_bool_pattern): Likewise.
(vect_pattern_recog_1): Likewise.
From-SVN: r198927
Martin Jambor [Wed, 15 May 2013 10:39:28 +0000 (12:39 +0200)]
ipa-prop.c (ipa_make_edge_direct_to_target): Redirect calls to non-functions to builtin_unreachable.
2013-05-15 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (ipa_make_edge_direct_to_target): Redirect calls to
non-functions to builtin_unreachable.
* ipa-inline-transform.c (inline_call): Do not assert estimates were
correct when new direct edges were discovered.
From-SVN: r198926
Martin Jambor [Wed, 15 May 2013 10:35:59 +0000 (12:35 +0200)]
ipa-prop.c (ipa_print_node_jump_functions): Print symbol order in header...
2013-05-15 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (ipa_print_node_jump_functions): Print symbol order in
header, print symbol order instead of node uid, print more information
about indirect edge targets.
(ipa_make_edge_direct_to_target): Print symbol order instead of node
uids.
(ipa_make_edge_direct_to_target): Likewise.
(remove_described_reference): Likewise.
(propagate_controlled_uses): Likewise.
(ipa_print_node_params): Also print symbol order.
(ipcp_transform_function): Print symbol order instead of node uids.
* cgraph.c (cgraph_redirect_edge_call_stmt_to_callee): Likewise.
(cgraph_get_create_real_symbol_node): Likewise.
* ipa-cp.c (print_lattice): Likewise.
(print_all_lattices): Likewise.
(determine_versionability): Likewise.
(initialize_node_lattices): Likewise.
(estimate_local_effects): Likewise.
(update_profiling_info): Likewise.
(create_specialized_node): Likewise.
(perhaps_add_new_callers): Likewise.
(decide_about_value): Likewise.
(decide_whether_version_node): Likewise.
(identify_dead_nodes): Likewise.
* ipa-inline-analysis.c (dump_inline_edge_summary): Likewise.
(dump_inline_summary): Likewise.
(estimate_node_size_and_time): Likewise.
(inline_analyze_function): Likewise.
* ipa-inline.c (report_inline_failed_reason): Likewise.
(want_early_inline_function_p): Likewise.
(edge_badness): Likewise.
(update_edge_key): Likewise.
(inline_small_functions): Likewise. Add dumping of order to two other
dumps.
* ipa-pure-const.c (pure_const_read_summary): Print symbol order
instead of node uids.
(propagate_pure_const): Likewise.
(propagate_pure_const): Likewise.
* ipa-utils.c (dump_cgraph_node_set): Likewise.
* lto-cgraph.c (input_node): Explicitly specify we dump uid.
* lto-symtab.c (lto_cgraph_replace_node): Print symbol order instead
of node uids.
* tree-pretty-print.c (dump_function_header): Likewise.
* tree-sra.c (convert_callers_for_node): Dump in traditional format.
Print symbol order instead of node uids.
lto/
* lto-partition.c (lto_balanced_map): Print symbol order instead
of node uids.
From-SVN: r198925
Andreas Krebbel [Wed, 15 May 2013 08:57:19 +0000 (08:57 +0000)]
s390.c (s390_register_move_cost): Don't impose the FPR<->GPR move cost penalty if ldgr/lgdr can be used.
2013-05-15 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.c (s390_register_move_cost): Don't impose the
FPR<->GPR move cost penalty if ldgr/lgdr can be used.
From-SVN: r198923
Jonathan Wakely [Wed, 15 May 2013 08:22:25 +0000 (08:22 +0000)]
* include/bits/basic_string.h (getline): Fix doxygen comments.
From-SVN: r198920
Richard Biener [Wed, 15 May 2013 08:12:49 +0000 (08:12 +0000)]
re PR tree-optimization/57275 (Error in data dependence analysis during gather vectorization)
2013-05-15 Richard Biener <rguenther@suse.de>
PR tree-optimization/57275
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Fix
return value for fail to do runtime alias checks for gather loads.
* gcc.target/i386/pr57275.c: New testcase.
From-SVN: r198918
Jan Hubicka [Wed, 15 May 2013 08:09:26 +0000 (10:09 +0200)]
re PR c++/57038 (Latest libreoffice compilation fails with enabled LTO)
PR lto/57038
PR lto/47375
* lto-symtab.c (lto_symtab_symbol_p): Add external symbol; weakrefs are
not external.
(lto_symtab_merge_decls): Fix thinko when dealing with non-lto_symtab decls.
(lto_symtab_merge_cgraph_nodes): Use lto_symtab_symbol_p.
(lto_symtab_prevailing_decl): Get int sync with lto_symtab_symbol_p.
* varpool.c (dump_varpool_node): Dump more flags.
* lto-partition.c (get_symbol_class): Fix weakrefs.
(lto_balanced_map): Fix weakrefs.
(privatize_symbol_name): Remove unnecesary label.
(rename_statics): Handle weakrefs as statics.
* gcc.dg/lto/attr-weakref-1_0.c: New testcase.
* gcc.dg/lto/attr-weakref-1_1.c: New testcase.
* gcc.dg/lto/attr-weakref-1_2.c: New testcase.
From-SVN: r198917
Ganesh Gopalasubramanian [Wed, 15 May 2013 07:02:43 +0000 (07:02 +0000)]
New instruction (FSGSBASE) for AMD bdver3 architecture
From-SVN: r198916
GCC Administrator [Wed, 15 May 2013 00:16:28 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r198912
Senthil Kumar Selvaraj [Tue, 14 May 2013 23:13:20 +0000 (23:13 +0000)]
alias-1.c: Add dg-require-effective-target scheduling.
2013-05-14 Senthil Kumar Selvaraj <senthil_kumar.selvaraj@atmel.com>
* gcc.dg/torture/alias-1.c: Add dg-require-effective-target
scheduling.
From-SVN: r198909
Jakub Jelinek [Tue, 14 May 2013 20:50:43 +0000 (22:50 +0200)]
re PR c++/57274 (Bogus sequence-point warning in C++)
PR c++/57274
* c-common.c (verify_tree): Don't recurse into SIZEOF_EXPR.
* c-c++-common/Wsequence-point-1.c: New test.
From-SVN: r198903
Jason Merrill [Tue, 14 May 2013 20:36:32 +0000 (16:36 -0400)]
re PR c++/57243 (Using auto in range based for with templated container in templated function requires extraneous template qualifier)
PR c++/57243
* parser.c (cp_parser_range_for): Call complete_type.
From-SVN: r198901
Jakub Jelinek [Tue, 14 May 2013 19:41:13 +0000 (21:41 +0200)]
tree.c (warn_deprecated_use): Print file:line using locus color.
* tree.c (warn_deprecated_use): Print file:line using locus color.
* diagnostic.c (diagnostic_report_current_module): Print file:line
and file:line:column using locus color.
From-SVN: r198900
Mike Stump [Tue, 14 May 2013 19:18:00 +0000 (19:18 +0000)]
* gdbinit.in: Add __null.
From-SVN: r198899
Mike Stump [Tue, 14 May 2013 19:09:29 +0000 (19:09 +0000)]
recog.h: Rename struct recog_data to Recog_data.
* recog.h: Rename struct recog_data to Recog_data.
* recog.c: Likewise.
* reload.c (can_reload_into): Likewise.
* config/picochip/picochip.c: Likewise.
From-SVN: r198898
Mike Stump [Tue, 14 May 2013 17:43:57 +0000 (17:43 +0000)]
* web.c (union_match_dups): Also check DF_REF_REAL_LOC.
From-SVN: r198896
Steven Bosscher [Tue, 14 May 2013 17:21:43 +0000 (17:21 +0000)]
resource.h (struct resources): Remove unch_memory member.
* resource.h (struct resources): Remove unch_memory member.
(CLEAR_RESOURCE): Don't clear unch_memory.
* resource.c (mark_referenced_resources): Don't set it.
(mark_set_resources): Likewise.
(mark_target_live_regs): Don't clear it.
(init_resource_info): Likewise.
* reorg.c (resource_conflicts_p): Don't compare it.
(redundant_insn): Don't set it.
From-SVN: r198895
Steven Bosscher [Tue, 14 May 2013 17:20:08 +0000 (17:20 +0000)]
rtl.h (next_label, [...]): Remove prototypes.
* rtl.h (next_label, skip_consecutive_labels, link_cc0_insns):
Remove prototypes.
* emit-rtl.c (next_label): Remove unused function.
(skip_consecutive_labels, link_cc0_insns): Move to ...
* reorg.c (skip_consecutive_labels, link_cc0_insns): ... here, the
only place where these functions are used, and make them static.
From-SVN: r198894
Marc Glisse [Tue, 14 May 2013 17:06:46 +0000 (19:06 +0200)]
fold-const.c (fold_negate_expr): Handle vectors.
2013-05-14 Marc Glisse <marc.glisse@inria.fr>
gcc/
* fold-const.c (fold_negate_expr): Handle vectors.
(fold_truth_not_expr): Make it static.
(fold_invert_truthvalue): New static function.
(invert_truthvalue_loc): Handle vectors. Do not call
fold_truth_not_expr directly.
(fold_unary_loc) <BIT_NOT_EXPR>: Handle comparisons.
<TRUTH_NOT_EXPR>: Do not cast to boolean.
(fold_comparison): Handle vector constants.
(fold_binary_loc) <TRUTH_XOR_EXPR>: Remove redundant code.
(fold_ternary_loc) <VEC_COND_EXPR>: Adapt more COND_EXPR optimizations.
* tree.h (fold_truth_not_expr): Remove declaration.
gcc/testsuite/
* g++.dg/ext/vector22.C: New testcase.
* gcc.dg/binop-xor3.c: Remove xfail.
From-SVN: r198893
Paolo Carlini [Tue, 14 May 2013 15:17:18 +0000 (15:17 +0000)]
stl_iterator.h (__normal_iterator<>::_M_const_cast): Use std::pointer_traits.
2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/stl_iterator.h (__normal_iterator<>::_M_const_cast):
Use std::pointer_traits.
From-SVN: r198891
James Greenhalgh [Tue, 14 May 2013 14:56:13 +0000 (14:56 +0000)]
[AArch64] Fix vcond where comparison and result have different types.
gcc/
* config/aarch64/aarch64-simd.md
(aarch64_vcond_internal<mode>): Rename to...
(aarch64_vcond_internal<mode><mode>): ...This, for integer modes.
(aarch64_vcond_internal<VDQF_COND:mode><VDQF:mode>): ...This for
float modes. Clarify all iterator modes.
(vcond<mode><mode>): Use new name for vcond expanders.
(vcond<v_cmp_result><mode>): Likewise.
(vcondu<mode><mode>: Likewise.
* config/aarch64/iterators.md (VDQF_COND): New.
gcc/testsuite/
* gcc.target/aarch64/vect-fcm.x: Add cases testing
FLOAT cmp FLOAT ? INT : INT.
* gcc.target/aarch64/vect-fcm-eq-d.c: Define IMODE.
* gcc.target/aarch64/vect-fcm-eq-f.c: Likewise.
* gcc.target/aarch64/vect-fcm-ge-d.c: Likewise.
* gcc.target/aarch64/vect-fcm-ge-f.c: Likewise.
* gcc.target/aarch64/vect-fcm-gt-d.c: Likewise.
* gcc.target/aarch64/vect-fcm-gt-f.c: Likewise.
From-SVN: r198890
Jason Merrill [Tue, 14 May 2013 14:19:15 +0000 (10:19 -0400)]
re PR c++/57041 (ICE in lookup_field_1, at cp/search.c:376 (with dot-prefixed structure initialisation))
PR c++/57041
* pt.c (tsubst_copy_and_build): Don't recur into a designator.
From-SVN: r198887
Paolo Carlini [Tue, 14 May 2013 13:54:49 +0000 (13:54 +0000)]
re PR c++/53903 ([C++11] Incompatible exception-specification allowed if member explicitly-defaulted after first declaration)
/cp
2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53903
* method.c (defaulted_late_check): Check for compatible exception
specification out of class explicitly defaulted functions too.
/testsuite
2013-05-14 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53903
* g++.dg/cpp0x/defaulted43.C: New.
From-SVN: r198886
Rainer Orth [Tue, 14 May 2013 13:11:25 +0000 (13:11 +0000)]
Use __builtin_alloca in gcc.dg/fstack-protector-strong.c
* gcc.dg/fstack-protector-strong.c: Don't include <stdlib.h>.
(alloca): Remove declaration.
(foo9): Replace alloca by __builtin_alloca.
From-SVN: r198883
Jason Merrill [Tue, 14 May 2013 12:49:08 +0000 (08:49 -0400)]
re PR c++/56998 (ICE in value_dependent_expression_p, at cp/pt.c:19598)
PR c++/56998
* semantics.c (potential_constant_expression_1): Make sure the
called function is potentially constant.
* call.c (null_ptr_cst_p): Revert earlier change.
From-SVN: r198881
Marc Glisse [Tue, 14 May 2013 12:06:27 +0000 (14:06 +0200)]
re PR bootstrap/57266 (comparison between signed and unsigned integer expressions in fold_binary_loc breaks m68k bootstrap)
2013-05-14 Marc Glisse <marc.glisse@inria.fr>
PR bootstrap/57266
* fold-const.c (fold_binary_loc) <shift>: Use an unsigned
variable for the shift amount. Check that we shift by non-negative
amounts.
From-SVN: r198880
Chung-Lin Tang [Tue, 14 May 2013 12:02:52 +0000 (12:02 +0000)]
re PR target/42017 (gcc compiling C for ARM has stopped using r14 in leaf functions?)
2013-05-14 Chung-Lin Tang <cltang@codesourcery.com>
PR target/42017
* config/arm/arm.h (EPILOGUE_USES): Only return true
for LR_REGNUM after epilogue_completed.
From-SVN: r198879
Joern Rennecke [Tue, 14 May 2013 11:15:08 +0000 (11:15 +0000)]
avr.c (avr_encode_section_info): Bail out if the type is error_mark_node.
gcc:
* config/avr/avr.c (avr_encode_section_info): Bail out if the type
is error_mark_node.
gcc/testsuite:
* testsuite/gcc.c-torture/compile/limits-externdecl.c [target avr-*-*]:
Expect "size of array is too large" error.
From-SVN: r198876
Rainer Orth [Tue, 14 May 2013 10:24:03 +0000 (10:24 +0000)]
Fix gcc.dg/fstack-protector-strong.c on Solaris/x86
* gcc.dg/fstack-protector-strong.c (alloca): Declare.
From-SVN: r198872
Rainer Orth [Tue, 14 May 2013 09:28:17 +0000 (09:28 +0000)]
Fix Solaris --as-needed/-z ignore detection (PR target/57261)
PR target/57261
* configure.ac (gcc_cv_ld_as_needed): Disable before Solaris 11
and Solaris 11+/x86 with gld.
* configure: Regenerate.
From-SVN: r198867
Jakub Jelinek [Tue, 14 May 2013 08:55:34 +0000 (10:55 +0200)]
expmed.c (expand_shift_1): Canonicalize rotates by constant bitsize / 2 to bitsize - 1.
* expmed.c (expand_shift_1): Canonicalize rotates by
constant bitsize / 2 to bitsize - 1.
* simplify-rt.x (simplify_binary_operation_1) <case ROTATE,
case ROTATERT>: Likewise.
Revert:
2013-05-10 Jakub Jelinek <jakub@redhat.com>
* config/i386/i386.md (rotateinv): New code attr.
(*<rotate_insn><mode>3_1, *<rotate_insn>si3_1_zext,
*<rotate_insn>qi3_1_slp): Emit rorl %eax instead of
roll $31, %eax, etc.
From-SVN: r198864
Richard Biener [Tue, 14 May 2013 08:41:14 +0000 (08:41 +0000)]
re PR middle-end/57235 (ICE verify_ssa failied)
2013-05-14 Richard Biener <rguenther@suse.de>
PR middle-end/57235
* tree-eh.c (sink_clobbers): Give up for successors with
multiple predecessors and no virtual uses.
* g++.dg/torture/pr57235.C: New testcase.
From-SVN: r198863
Eric Botcazou [Tue, 14 May 2013 08:03:22 +0000 (08:03 +0000)]
sp64-elf.h (CPP_SUBTARGET_SPEC): Delete.
* config/sparc/sp64-elf.h (CPP_SUBTARGET_SPEC): Delete.
* config/sparc/openbsd64.h (CPP_SUBTARGET_SPEC): Likewise.
From-SVN: r198862
Jakub Jelinek [Tue, 14 May 2013 06:26:23 +0000 (08:26 +0200)]
re PR tree-optimization/57251 (ICE in optab_handler, at optabs.h:258)
PR middle-end/57251
* expr.c (expand_expr_real_2) <case WIDEN_MULT_EXPR>: Handle
the case when both op0 and op1 have VOIDmode.
* gcc.dg/torture/pr57251.c: New test.
From-SVN: r198860
Kaushik Phatak [Tue, 14 May 2013 05:14:19 +0000 (05:14 +0000)]
rl78.md (mulsi3_g13): Add additional 'nop' required in multiply-accumulate mode.
* config/rl78/rl78.md(mulsi3_g13): Add additional 'nop' required
in multiply-accumulate mode.
--This llne, and those below, will be ignored--
M ChangeLog
M config/rl78/rl78.md
From-SVN: r198859
GCC Administrator [Tue, 14 May 2013 00:16:18 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r198858
Guozhi Wei [Mon, 13 May 2013 23:04:10 +0000 (23:04 +0000)]
dwarf2asm.c (dw2_output_indirect_constant_1): Mark new decl STATIC.
* dwarf2asm.c (dw2_output_indirect_constant_1): Mark new decl STATIC.
From-SVN: r198855