Naveen H.S [Thu, 28 Feb 2013 06:44:06 +0000 (06:44 +0000)]
slsr-1.c: Allow widening multiplications.
2013-02-28 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* gcc.dg/tree-ssa/slsr-1.c: Allow widening multiplications.
* gcc.dg/tree-ssa/slsr-2.c: Likewise.
* gcc.dg/tree-ssa/slsr-3.c: Likewise.
From-SVN: r196329
GCC Administrator [Thu, 28 Feb 2013 00:17:45 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r196328
Jakub Jelinek [Wed, 27 Feb 2013 22:06:21 +0000 (23:06 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* tree-vect-data-refs.c (vect_permute_load_chain): Avoid using copy
method on dr_chain and result_chain.
From-SVN: r196325
Jakub Jelinek [Wed, 27 Feb 2013 22:05:33 +0000 (23:05 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* tree-ssa-loop-niter.c (maybe_lower_iteration_bound): Call
pointer_set_destroy on not_executed_last_iteration.
From-SVN: r196324
Jakub Jelinek [Wed, 27 Feb 2013 21:40:53 +0000 (22:40 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* tree-vect-loop.c (vectorizable_reduction): Release vect_defs
vector.
From-SVN: r196323
Jakub Jelinek [Wed, 27 Feb 2013 21:35:53 +0000 (22:35 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* ipa-pure-const.c (propagate): Use FOR_EACH_FUNCTION instead of
FOR_EACH_DEFINED_FUNCTION when freeing state.
From-SVN: r196322
Jakub Jelinek [Wed, 27 Feb 2013 21:35:06 +0000 (22:35 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* df-scan.c (df_insn_delete): Use df_scan_free_mws_vec before
pool_free.
(df_insn_rescan_debug_internal): Use df_scan_free_mws_vec before
overwriting it.
From-SVN: r196321
Jakub Jelinek [Wed, 27 Feb 2013 21:34:27 +0000 (22:34 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* ipa-cp.c (decide_whether_version_node): Call vec_free on
known_aggs[i].items and release known_aggs vector.
From-SVN: r196320
Jakub Jelinek [Wed, 27 Feb 2013 21:33:20 +0000 (22:33 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* ipa-reference.c (propagate): Free node_info even for alias nodes.
From-SVN: r196319
Jason Merrill [Wed, 27 Feb 2013 18:13:24 +0000 (13:13 -0500)]
re PR c++/56358 ([C++11] Erroneous interaction of typedef and inherited constructor declarations)
PR c++/56358
PR c++/56323
* name-lookup.c (do_class_using_decl): Use ctor_identifier instead
of the base name for inheriting ctors.
(push_class_level_binding_1): Remove inheriting ctor handling.
* pt.c (tsubst_decl) [USING_DECL]: Likewise.
* class.c (add_implicitly_declared_members): Adjust.
From-SVN: r196316
Edgar E. Iglesias [Wed, 27 Feb 2013 17:21:40 +0000 (17:21 +0000)]
Avoid pcmpe insns when not valuable.
* gcc/config/microblaze/microblaze.c (microblaze_emit_compare):
Use xor for EQ/NE comparisions
* gcc/config/microblaze/microblaze.md (cstoresf4): Add constraints
(cbranchsf4): Adjust operator to comparison_operator
From-SVN: r196315
Jakub Jelinek [Wed, 27 Feb 2013 14:01:08 +0000 (15:01 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* tree-flow.h (edge_var_map_vector): Change into va_heap, vl_embed
vector.
* tree-ssa.c (redirect_edge_var_map_add): Use vec_safe_reserve and
vec_safe_push, always update *slot.
(redirect_edge_var_map_clear): Use vec_free.
(redirect_edge_var_map_dup): Use vec_safe_copy and vec_safe_reserve.
(free_var_map_entry): Use vec_free.
* tree-cfgcleanup.c (remove_forwarder_block_with_phi): Use
FOR_EACH_VEC_SAFE_ELT instead of FOR_EACH_VEC_ELT.
From-SVN: r196313
Rainer Orth [Wed, 27 Feb 2013 09:15:35 +0000 (09:15 +0000)]
Make make_sunver.pl robust against non-C locales
* make_sunver.pl: Enforce C locale.
From-SVN: r196309
Andrey Belevantsev [Wed, 27 Feb 2013 08:56:08 +0000 (12:56 +0400)]
re PR middle-end/45472 ([Middle-end volatile semantics] ICE: in move_op_ascend, at sel-sched.c:6124 with -fselective-scheduling2)
PR middle-end/45472
gcc/
* sel-sched-ir.c (merge_expr): Also change vinsn of merged expr
when the may_trap_p bit of the exprs being merged differs.
Reorder tests for speculativeness in the logical and operator.
testsuite/
* gcc.dg/45472.c: New test.
From-SVN: r196308
Jakub Jelinek [Wed, 27 Feb 2013 07:28:48 +0000 (08:28 +0100)]
incpath.c (add_standard_paths): Use reconcat instead of concat where appropriate and avoid leaking memory.
* incpath.c (add_standard_paths): Use reconcat instead of concat
where appropriate and avoid leaking memory.
From-SVN: r196306
Jakub Jelinek [Wed, 27 Feb 2013 07:28:09 +0000 (08:28 +0100)]
opts.h: Include obstack.h.
* opts.h: Include obstack.h.
(opts_concat): New prototype.
(opts_obstack): New declaration.
* opts.c (opts_concat): New function.
(opts_obstack): New variable.
(init_options_struct): Call gcc_init_obstack on opts_obstack.
(finish_options): Use opts_concat instead of concat
and XOBNEWVEC instead of XNEWVEC.
* opts-common.c (generate_canonical_option, decode_cmdline_option,
generate_option): Likewise.
* Makefile.in (OPTS_H): Depend on $(OBSTACK_H).
* lto-wrapper.c (main): Call gcc_init_obstack on opts_obstack.
From-SVN: r196305
Jakub Jelinek [Wed, 27 Feb 2013 07:26:53 +0000 (08:26 +0100)]
re PR target/56455 (ICE in final_scan_insn)
PR target/56455
* stmt.c (expand_switch_as_decision_tree_p): If flag_pic
and ASM_OUTPUT_ADDR_DIFF_ELT isn't defined, return true.
From-SVN: r196304
GCC Administrator [Wed, 27 Feb 2013 00:18:29 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r196300
Jonathan Wakely [Tue, 26 Feb 2013 23:46:21 +0000 (23:46 +0000)]
re PR libstdc++/56012 ([C++11] Narrowing conversion in atomic_flag)
PR libstdc++/56012
* include/bits/atomic_base.h (atomic_flag): Fix narrowing conversion.
* testsuite/29_atomics/atomic/operators/56012.cc: New.
PR libstdc++/56011
* include/std/atomic (atomic<bool>::operator=(bool) volatile): Add
missing overload.
* testsuite/29_atomics/atomic/operators/56011.cc: New.
From-SVN: r196296
Jakub Jelinek [Tue, 26 Feb 2013 21:13:27 +0000 (22:13 +0100)]
re PR middle-end/56461 (GCC is leaking lots of memory)
PR middle-end/56461
* lra-spills.c (lra_spill): Free spill_hard_reg at the end.
From-SVN: r196294
Joern Rennecke [Tue, 26 Feb 2013 17:01:52 +0000 (17:01 +0000)]
arm.c (const_ok_for_dimode_op): Back out last change.
* config/arm/arm.c (const_ok_for_dimode_op): Back out last change.
(arm_block_move_unaligned_straight): Likewise.
(arm_adjust_block_mem): Likewise.
From-SVN: r196293
Joern Rennecke [Tue, 26 Feb 2013 14:55:31 +0000 (14:55 +0000)]
re PR target/54662 (Wrong warning flags for building mep-pragma.o, fails to build)
PR target/54662
* config/mep/t-mep (mep-pragma.o): Use ALL_COMPILERFLAGS instead of
ALL_CFLAGS.
From-SVN: r196291
Joern Rennecke [Tue, 26 Feb 2013 14:51:36 +0000 (14:51 +0000)]
re PR target/54640 (arm_adjust_block_mem: signed/unsigned comparison [-Werror=sign-compare])
PR target/54640
* config/arm/arm.c (const_ok_for_dimode_op): Make code consistent
for HOST_WIDE_INT of 32 bit / same size as int.
(arm_block_move_unaligned_straight): Likewise.
(arm_adjust_block_mem): Likewise.
From-SVN: r196290
Joern Rennecke [Tue, 26 Feb 2013 14:39:15 +0000 (14:39 +0000)]
re PR target/54639 (mn10300_expand_epilogue: signed / unsigned comparison)
PR target/54639
* config/mn10300/mn10300.c (mn10300_expand_epilogue): Avoid offset
type promotion to unsigned.
From-SVN: r196289
Joern Rennecke [Tue, 26 Feb 2013 14:34:26 +0000 (14:34 +0000)]
re PR target/52550 (tile*.c: unused variable ‘cfa_offset’)
PR target/52550
* config/tilegx/tilegx.c (tilegx_expand_prologue):
Remove unused variable cfa_offset.
* config/tilepro/tilepro.c (tilepro_expand_prologue): Likewise.
From-SVN: r196288
Joern Rennecke [Tue, 26 Feb 2013 14:30:17 +0000 (14:30 +0000)]
re PR target/52501 (cr16-protos.h uses enum rtx_code outside #ifdef RTX_CODE guard)
PR target/52501
* config/cr16/cr16-protos.h: Move end of RTX_CODE guard below end
of prologue/epilogue functions.
From-SVN: r196287
Joern Rennecke [Tue, 26 Feb 2013 14:24:17 +0000 (14:24 +0000)]
re PR target/52500 (dwarf2cfi.c fails to build with -Werror for c6x)
PR target/52500
* config/c6x/c6x.c (dbx_register_map): Change to unsigned.
* config/c6x/c6x.h (dbx_register_map): Update declaration.
From-SVN: r196286
Joern Rennecke [Tue, 26 Feb 2013 14:19:24 +0000 (14:19 +0000)]
re PR target/48901 (lm32.md: ashlsi3: error: unused variable ‘one’)
PR target/48901
* config/lm32/lm32.c (gen_int_relational): Remove unused variables
temp, cond and label.
* config/lm32/lm32.md (ashlsi3): Remove unused variable one.
From-SVN: r196285
David Binderman [Tue, 26 Feb 2013 14:04:47 +0000 (14:04 +0000)]
re PR c++/55632 (trunk/gcc/cp/decl.c:10614: strange line of code)
2013-02-26 David Binderman <dcb314@hotmail.com>
PR c++/55632
* decl.c (grokdeclarator): Tidy publicp assignment.
From-SVN: r196284
Aldy Hernandez [Tue, 26 Feb 2013 12:40:27 +0000 (12:40 +0000)]
re PR c++/56419 (transactions in for-loops disappear)
PR c++/56419
* semantics.c (begin_transaction_stmt): Set TREE_SIDE_EFFECTS.
(build_transaction_expr): Same.
From-SVN: r196282
Marek Polacek [Tue, 26 Feb 2013 11:06:14 +0000 (11:06 +0000)]
re PR tree-optimization/56426 (Segmentation fault in find_var_scev_info, at tree-scalar-evolution.c:358)
2013-02-26 Marek Polacek <polacek@redhat.com>
PR tree-optimization/56426
* tree-ssa-loop.c (tree_ssa_loop_init): Always call
scev_initialize.
From-SVN: r196281
Richard Biener [Tue, 26 Feb 2013 10:49:25 +0000 (10:49 +0000)]
re PR target/56444 (mn10300.c:3228:16: error: unused variable ‘loops’)
2013-02-26 Richard Biener <rguenther@suse.de>
PR target/56444
* config/mn10300/mn10300.c (mn10300_scan_for_setlb_lcc): Remove
unused variable loops.
From-SVN: r196280
Jakub Jelinek [Tue, 26 Feb 2013 10:00:31 +0000 (11:00 +0100)]
re PR tree-optimization/56448 (cc1 hangs on volatile array with -O or above)
PR tree-optimization/56448
* fold-const.c (operand_equal_p) <case tcc_reference>: Don't look at
TREE_SIDE_EFFECTS if flags contain OEP_CONSTANT_ADDRESS_OF.
Clear OEP_CONSTANT_ADDRESS_OF from flags before recursing on second or
later operands of the references, or even first operand for
INDIRECT_REF, TARGET_MEM_REF or MEM_REF.
* gcc.c-torture/compile/pr56448.c: New test.
From-SVN: r196278
Jakub Jelinek [Tue, 26 Feb 2013 09:59:12 +0000 (10:59 +0100)]
re PR middle-end/56443 (internal compiler error: verify_gimple failed at -O[1-2] -ftree-vectorize)
PR tree-optimization/56443
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size): For
overaligned types, pass TYPE_UNSIGNED (scalar_type) as second argument
to type_for_mode langhook.
* gcc.dg/torture/pr56443.c: New test.
From-SVN: r196277
Jason Merrill [Tue, 26 Feb 2013 04:39:04 +0000 (23:39 -0500)]
configure.ac: Check for __cxa_thread_atexit_impl.
* configure.ac: Check for __cxa_thread_atexit_impl.
* libsupc++/atexit_thread.cc (__cxa_thread_atexit): Just forward
to it if available.
* config.h.in, configure: Regenerate.
From-SVN: r196276
Jason Merrill [Tue, 26 Feb 2013 04:27:51 +0000 (23:27 -0500)]
re PR c++/56377 (<missing> template args in substitution-failure diagnostics)
PR c++/56377
* pt.c (fn_type_unification): Wait to call push_tinst_level until
we know what args we're looking at.
From-SVN: r196275
Jason Merrill [Tue, 26 Feb 2013 04:27:40 +0000 (23:27 -0500)]
re PR c++/56438 (ICE in value_dependent_expression_p, at cp/pt.c:19551)
PR c++/56438
* semantics.c (potential_constant_expression_1): In C++98, a cast
to non-integral type can't be a constant expression.
From-SVN: r196274
GCC Administrator [Tue, 26 Feb 2013 00:18:49 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r196273
Matt Turner [Mon, 25 Feb 2013 21:47:09 +0000 (21:47 +0000)]
invoke.texi: Document r4700.
gcc/
2013-02-25 Matt Turner <mattst88@gmail.com>
* doc/invoke.texi: Document r4700.
From-SVN: r196270
Eric Botcazou [Mon, 25 Feb 2013 19:08:51 +0000 (19:08 +0000)]
* gcc-interface/ada-tree.h: Back out change accidentally committed.
From-SVN: r196268
H.J. Lu [Mon, 25 Feb 2013 16:18:39 +0000 (16:18 +0000)]
Add -B$$r/prev-$(TARGET_SUBDIR)/libsanitizer/asan/
* bootstrap-asan.mk (POSTSTAGE1_LDFLAGS): Add
-B$$r/prev-$(TARGET_SUBDIR)/libsanitizer/asan/.
From-SVN: r196264
Richard Biener [Mon, 25 Feb 2013 15:31:31 +0000 (15:31 +0000)]
re PR tree-optimization/56175 (Issue with combine phase on x86.)
2013-02-25 Richard Biener <rguenther@suse.de>
PR tree-optimization/56175
* tree-ssa-forwprop.c (hoist_conversion_for_bitop_p): New predicate,
split out from ...
(simplify_bitwise_binary): ... here. Also guard the conversion
of (type) X op CST to (type) (X op ((type-x) CST)) with it.
* gcc.dg/tree-ssa/forwprop-24.c: New testcase.
From-SVN: r196263
Jakub Jelinek [Mon, 25 Feb 2013 14:41:26 +0000 (15:41 +0100)]
re PR c++/56403 (internal compiler error: in build_zero_init_1, at cp/init.c:279)
PR c++/56403
* init.c (build_zero_init_1): Use RECORD_OR_UNION_CODE_P instead
of CLASS_TYPE_P.
* g++.dg/torture/pr56403.C: New test.
From-SVN: r196260
Catherine Moore [Mon, 25 Feb 2013 13:53:16 +0000 (08:53 -0500)]
2012-02-25 Catherine Moore <clm@codesourcery.com>
Revert microMIPS patch.
From-SVN: r196259
Tom de Vries [Mon, 25 Feb 2013 11:50:25 +0000 (11:50 +0000)]
re PR rtl-optimization/56131 (gcc.dg/pr56035.c ICEs gcc on sparc-linux)
2013-02-25 Tom de Vries <tom@codesourcery.com>
PR rtl-optimization/56131
* insn-notes.def (INSN_NOTE_BASIC_BLOCK): Update comment.
* cfgrtl.c (delete_insn): Don't reorder NOTE_INSN_DELETED_LABEL and
NOTE_INSN_BASIC_BLOCK if BLOCK_FOR_INSN == NULL.
From-SVN: r196255
Tobias Burnus [Mon, 25 Feb 2013 10:54:07 +0000 (11:54 +0100)]
invoke.texi (-fsanitize=): Move from optimization to debugging options.
2013-02-25 Tobias Burnus <burnus@net-b.de>
* doc/invoke.texi (-fsanitize=): Move from optimization
to debugging options.
From-SVN: r196254
Andrey Belevantsev [Mon, 25 Feb 2013 08:54:36 +0000 (12:54 +0400)]
* sched-deps.c (sched_analyze_insn): Fix typo in comment.
From-SVN: r196253
Andrey Belevantsev [Mon, 25 Feb 2013 08:48:42 +0000 (12:48 +0400)]
re PR middle-end/56077 (volatile ignored when function inlined)
2013-02-25 Andrey Belevantsev <abel@ispras.ru>
Alexander Monakov <amonakov@ispras.ru>
PR middle-end/56077
* sched-deps.c (sched_analyze_insn): When reg_pending_barrier,
flush pending lists also on non-jumps. Adjust comment.
Co-Authored-By: Alexander Monakov <amonakov@ispras.ru>
From-SVN: r196252
GCC Administrator [Mon, 25 Feb 2013 00:18:56 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r196249
Catherine Moore [Sun, 24 Feb 2013 23:46:44 +0000 (18:46 -0500)]
mips16.S: Don't build for microMIPS.
libgcc/
2013-02-24 Catherine Moore <clm@codesourcery.com>
Joseph Myers <joseph@codesourcery.com>
Chao-ying Fu <fu@mips.com>
* config/mips/mips16.S: Don't build for microMIPS.
* config/mips/linux-unwind.h: Handle microMIPS frame.
* config/mips/crtn.S (fini, init): New labels.
gcc/
2013-02-24 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
Tom de Vries <tom@codesourcery.com>
Nathan Sidwell <nathan@codesourcery.com>
Iain Sandoe <iain@codesourcery.com>
Nathan Froyd <froydnj@codesourcery.com>
Chao-ying Fu <fu@mips.com>
* doc/extend.texi: (micromips, nomicromips, nocompression):
Document new function attributes.
* doc/invoke.texi (minterlink-compressed, mmicromips,
m14k, m14ke, m14kec): Document new options.
(minterlink-mips16): Update documentation.
* doc/md.texi (ZC, ZD): Document new constraints.
* configure.ac (gcc_cv_as_micromips): Check if linker
supports the .set micromips directive.
* configure: Regenerate.
* config.in: Regenerate.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/micromips.md: New file.
* constraints.md (ZC, AD): New constraints.
* config/mips/predicates.md (movep_src_register): New predicate.
(movep_src_operand): New predicate.
(non_volatile_mem_operand): New predicate.
* config/mips/mips.md (multimem): New type.
(length): Differentiate between 17-bit and 18-bit branch offsets.
(MOVEP1, MOVEP2): New mode iterator.
(mov_<load>l): Use ZC constraint.
(mov_<load>r): Likewise.
(mov_<store>l): Likewise.
(mov_<store>r): Likewise.
(*branch_equality<mode>_inverted): Add microMIPS support.
(*branch_equality<mode>): Likewise.
(*jump_absolute): Likewise.
(indirect_jump_<mode>): Likewise.
(tablejump_<mode>): Likewise.
(<optab>_internal): Likewise.
(sibcall_internal): Likewise.
(sibcall_value_internal): Likewise.
(prefetch): Use constraint ZD.
* config/mips/mips.opt (minterlink-compressed): New option.
(minterlink-mips16): Now an alias for minterlink-compressed.
(mmicromips): New option.
* config/mips/sync.md (sync_compare_and_swap<mode>): Use ZR constraint.
(compare_and_swap_12): Likewise.
(sync_add<mode>): Likewise.
(sync_<optab>_12): Likewise.
(sync_old_<optab>_12): Likewise.
(sync_new_<optab>_12): Likewise.
(sync_nand_12): Likewise.
(sync_old_nand_12): Likewise.
(sync_new_nand_12): Likewise.
(sync_sub<mode>): Likewise.
(sync_old_add<mode>): Likewise.
(sync_old_sub<mode>): Likewise.
(sync_new_add<mode>): Likewise.
(sync_new_sub<mode>): Likewise.
(sync_<optab><mode>): Likewise.
(sync_old_<optab><mode>): Likewise.
(sync_new_<optab><mode>): Likewise.
(sync_nand<mode>): Likewise.
(sync_old_nand<mode>): Likewise.
(sync_new_nand<mode>): Likewise.
(sync_lock_test_and_set<mode>): Likewise.
(test_and_set_12): Likewise.
(atomic_compare_and_swap<mode>): Likewise.
(atomic_exchange<mode>_llsc): Likewise.
(atomic_fetch_add<mode>_llsc): Likewise.
* config/mips/mips-cpus.def (m14kc, m14k): New processors.
* config/mips/mips-protos.h (umips_output_save_restore): New prototype.
(umips_save_restore_pattern_p): Likewise.
(umips_load_store_pair_p): Likewise.
(umips_output_load_store_pair): Likewise.
(umips_movep_target_p): Likewise.
(umips_12bit_offset_address_p): Likewise.
* config/mips/mips.c (MIPS_MAX_FIRST_STEP): Update for microMIPS.
(mips_base_mips16): Rename this...
(mips_base_compression_flags): ...to this. Update all uses.
(mips_attribute_table): Add micromips, nomicromips and nocompression.
(mips_mips16_decl_p): Delete.
(mips_nomips16_decl_p): Delete.
(mips_get_compress_on_flags): New function.
(mips_get_compress_off_flags): New function.
(mips_get_compress_mode): New function.
(mips_get_compress_on_name): New function.
(mips_get_compress_off_name): New function.
(mips_insert_attributes): Support multiple compression types.
(mips_merge_decl_attributes): Likewise.
(umips_12bit_offset_address_p): New function.
(mips_start_function_definition): Emit .set micromips directive.
(mips_call_may_need_jalx_p): New function.
(mips_function_ok_for_sibcall): Add microMIPS support.
(mips_print_operand_punctuation): Support short delay slots and
compact jumps.
(umips_swm_mask, umips_swm_encoding): New.
(umips_build_save_restore): New function.
(mips_for_each_saved_gpr_and_fpr): Add microMIPS support.
(was_mips16_p): Remove.
(old_compression_mode): New.
(mips_set_compression_mode): New function.
(mips_set_current_function): Add microMIPS support.
(mips_option_override): Likewise.
(umips_save_restore_pattern_p): New function.
(umips_output_save_restore): New function.
(umips_load_store_pair_p_1): New function.
(umips_load_store_pair_p): New function.
(umips_output_load_store_pair_1): New function.
(umips_output_load_store_pair): New function.
(umips_movep_target_p) New function.
(mips_prepare_pch_save): Add microMIPS support.
* config/mips/mips.h (TARGET_COMPRESSION): New.
(TARGET_CPU_CPP_BUILTINS): Update macro
to use new compression flags and to support microMIPS.
(MIPS_ISA_LEVEL_SPEC): Add m14k processors.
(MIPS_ARCH_FLOAT_SPEC): Likewise.
(ISA_HAS_LWXS): Include TARGET_MICROMIPS.
(ISA_HAS_LOAD_DELAY): Exclude TARGET_MICROMIPS.
(ASM_SPEC): Support mmicromips and mno-micromips.
(M16STORE_REG_P): New macro.
(MIPS_CALL): Support TARGET_MICROMIPS.
(MICROMIPS_J): New macro.
(mips_base_mips16): Rename this...
(mips_base_compression_flags): ...to this.
(UMIPS_12BIT_OFFSET_P): New macro.
* config/mips/t-sde: (MULTILIB_OPTIONS): Add microMIPS.
(MULTILIB_DIRNAMES): Likewise.
gcc/testsuite/
2013-02-24 Catherine Moore <clm@codesourcery.com>
Richard Sandiford <rdsandiford@googlemail.com>
* gcc.target/mips/mips.exp: Add microMIPS support.
* gcc.target/mips/umips-movep-2.c: New test.
* gcc.target/mips/umips-lwp-2.c: New test.
* gcc.target/mips/umips-swp-5.c: New test.
* gcc.target/mips/umips-constraints-1.c: New test.
* gcc.target/mips/umips-lwp-3.c: New test.
* gcc.target/mips/umips-swp-6.c: New test.
* gcc.target/mips/umips-constraints-2.c: New test.
* gcc.target/mips/umips-save-restore-1.c: New test.
* gcc.target/mips/umips-lwp-4.c: New test.
* gcc.target/mips/umips-swp-7.c: New test.
* gcc.target/mips/umips-save-restore-2.c: New test.
* gcc.target/mips/umips-lwp-swp-volatile.c: New test.
* gcc.target/mips/umips-lwp-5.c: New test.
* gcc.target/mips/umips-save-restore-3.c: New test.
* gcc.target/mips/umips-lwp-6.c: New test.
* gcc.target/mips/umips-swp-1.c: New test.
* gcc.target/mips/umips-lwp-7.c: New test.
* gcc.target/mips/umips-swp-2.c: New test.
* gcc.target/mips/umips-lwp-8.c: New test.
* gcc.target/mips/umips-swp-3.c: New test.
* gcc.target/mips/umips-movep-1.c: New test.
* gcc.target/mips/umips-lwp-1.c: New test.
* gcc.target/mips/umips-swp-4.c: New test.
Co-Authored-By: Chao-ying Fu <fu@mips.com>
Co-Authored-By: Iain Sandoe <iain@codesourcery.com>
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
Co-Authored-By: Maciej W. Rozycki <macro@codesourcery.com>
Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com>
Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r196246
Jakub Jelinek [Sun, 24 Feb 2013 18:54:37 +0000 (19:54 +0100)]
re PR target/52555 (ICE unrecognizable insn with -ffast-math and __attribute__((optimize(xx))))
PR target/52555
* target-globals.c (save_target_globals): For init_reg_sets and
target_reinit remporarily set this_fn_optabs to this_target_optabs.
From-SVN: r196245
Joseph Myers [Sun, 24 Feb 2013 01:11:33 +0000 (01:11 +0000)]
* cpplib.pot: Regenerate.
From-SVN: r196244
Joseph Myers [Sun, 24 Feb 2013 01:11:11 +0000 (01:11 +0000)]
* gcc.pot: Regenerate.
From-SVN: r196243
Joseph Myers [Sun, 24 Feb 2013 01:07:35 +0000 (01:07 +0000)]
resolve.c (generate_component_assignments): Don't use UTF-8 ligature in diagnostic.
* resolve.c (generate_component_assignments): Don't use UTF-8
ligature in diagnostic.
From-SVN: r196242
GCC Administrator [Sun, 24 Feb 2013 00:19:22 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r196241
GCC Administrator [Sat, 23 Feb 2013 00:18:54 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r196236
Jason Merrill [Fri, 22 Feb 2013 22:24:40 +0000 (17:24 -0500)]
re PR c++/40405 (ICE with invalid initialization of template member)
PR c++/40405
* pt.c (push_template_decl_real): Set DECL_INTERFACE_KNOWN
if we got the wrong number of template parms.
From-SVN: r196231
Jason Merrill [Fri, 22 Feb 2013 22:24:27 +0000 (17:24 -0500)]
re PR c++/56377 (<missing> template args in substitution-failure diagnostics)
PR c++/56377
* pt.c (fn_type_unification): Use explicit args in template
instantiation context.
From-SVN: r196230
Jason Merrill [Fri, 22 Feb 2013 22:24:10 +0000 (17:24 -0500)]
re PR c++/56359 (Bogus "error: no matching function for call to ...")
PR c++/56359
* call.c (can_convert_arg): Discard access checks.
From-SVN: r196229
Jason Merrill [Fri, 22 Feb 2013 22:23:56 +0000 (17:23 -0500)]
re PR c++/56395 (ICE, Segmentation fault in tsubst)
PR c++/56395
* tree.c (strip_typedefs): Strip typedefs from TYPENAME_TYPE template
args.
From-SVN: r196228
James Greenhalgh [Fri, 22 Feb 2013 16:39:45 +0000 (16:39 +0000)]
[AArch64] Add missing copyright and build dependency for aarch64-simd-builtins.def
gcc/
* config/aarch64/aarch64-simd-builtins.def: Add copyright header.
* config/aarch64/t-aarch64
(aarch64-builtins.o): Depend on aarch64-simd-builtins.def.
From-SVN: r196224
Vladimir Makarov [Fri, 22 Feb 2013 16:30:22 +0000 (16:30 +0000)]
re PR inline-asm/56148 (inline asm matching constraint with different mode)
2013-02-22 Vladimir Makarov <vmakarov@redhat.com>
PR inline-asm/56148
* lra-constraints.c (process_alt_operands): Reload operand
conflicting with earlier clobber only if no more other conflicting
operands.
From-SVN: r196223
Jakub Jelinek [Fri, 22 Feb 2013 16:07:36 +0000 (17:07 +0100)]
re PR sanitizer/56393 (SIGSEGV when -fsanitize=address and dynamic lib with global objects)
PR sanitizer/56393
* config/gnu-user.h (LIBASAN_EARLY_SPEC): Link in libasan_preinit.o
if not linking a shared library.
* lib/asan-dg.exp (asan_link_flags): Add
-B${gccpath}/libsanitizer/asan/ to flags.
* asan/Makefile.am (nodist_toolexeclib_HEADERS): Set to
libasan_preinit.o.
(libasan_preinit.o): Depend on asan_preinit.o.
* asan/Makefile.in: Regenerated.
* asan/asan_preinit.cc: New file, synced from upstream.
* asan/asan_rtl.cc: Remove preinit stuff, synced from upstream.
From-SVN: r196222
Seth LaForge [Fri, 22 Feb 2013 15:57:17 +0000 (15:57 +0000)]
config.gcc (arm*-*-eabi*): Treat arm*eb as big-endian.
2013-02-22 Seth LaForge <sethml@google.com>
* config.gcc (arm*-*-eabi*): Treat arm*eb as big-endian.
From-SVN: r196221
Greta Yorsh [Fri, 22 Feb 2013 14:23:12 +0000 (14:23 +0000)]
arm.md (split for extendsidi): Update condition.
2013-02-22 Greta Yorsh <Greta.Yorsh@arm.com>
* config/arm/arm.md (split for extendsidi): Update condition.
(zero_extend<mode>di2,extend<mode>di2): Add an alternative.
* config/arm/iterators.md (qhs_extenddi_cstr): Likewise.
(qhs_zextenddi_cstr): Likewise.
From-SVN: r196220
GCC Administrator [Fri, 22 Feb 2013 00:19:06 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r196218
Jakub Jelinek [Thu, 21 Feb 2013 21:29:29 +0000 (22:29 +0100)]
re PR middle-end/56420 (Arithmetic error in computation with compile time unsigned __int128 constant)
PR middle-end/56420
* expmed.c (EXACT_POWER_OF_2_OR_ZERO_P): Do subtraction in uhwi, to
avoid signed wrapping.
(expand_mult): Handle properly multiplication by
((dword_type) -1) << (BITS_PER_WORD - 1). Improve multiplication by
((dword_type) 1) << (BITS_PER_WORD - 1). Avoid undefined behavior
in the compiler if coeff is HOST_WIDE_INT_MIN.
(expand_divmod): Don't make ext_op1 static, change it's type to
uhwi. Avoid undefined behavior in -INTVAL (op1).
* gcc.dg/torture/pr56420.c: New test.
From-SVN: r196215
Jakub Jelinek [Thu, 21 Feb 2013 21:28:03 +0000 (22:28 +0100)]
re PR rtl-optimization/50339 (suboptimal register allocation for abs(__int128_t))
PR rtl-optimization/50339
* lower-subreg.h (struct lower_subreg_choices): Add splitting_ashiftrt
field.
* lower-subreg.c (compute_splitting_shift): Handle ASHIFTRT.
(compute_costs): Call compute_splitting_shift also for ASHIFTRT
into splitting_ashiftrt field.
(find_decomposable_shift_zext, resolve_shift_zext): Handle also
ASHIFTRT.
(dump_choices): Fix up printing LSHIFTRT choices, print ASHIFTRT
choices.
From-SVN: r196214
Aldy Hernandez [Thu, 21 Feb 2013 20:16:26 +0000 (20:16 +0000)]
re PR middle-end/56108 (Asm statement in transaction_relaxed crashes compiler.)
PR middle-end/56108
* trans-mem.c (execute_tm_mark): Do not expand transactions that
are sure to go irrevocable.
testsuite/
* gcc.dg/tm/memopt-1.c: Declare functions transaction_safe.
From-SVN: r196213
Jack Howarth [Thu, 21 Feb 2013 19:12:43 +0000 (19:12 +0000)]
Makefile.am (libasan_la_SOURCES): Remove deprecated dynamic/asan_interceptors_dynamic.cc.
* asan/Makefile.am (libasan_la_SOURCES): Remove deprecated
dynamic/asan_interceptors_dynamic.cc.
* asan/Makefile.in: Regenerated.
* merge.sh: Remove merge of deprecated lib/asan/dynamic.
From-SVN: r196211
Janne Blomqvist [Thu, 21 Feb 2013 19:03:10 +0000 (21:03 +0200)]
Fix regression when writing formatted sequential to a pipe.
2013-02-21 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/30162
* io/open.c (test_endfile): Call stell only if size != 0.
* io/unix.c (raw_tell): Revert r194679.
(raw_size): Return size field only for regular files, otherwise 0.
From-SVN: r196210
Andrew Sutton [Thu, 21 Feb 2013 18:24:18 +0000 (18:24 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2013-02-20 Andrew Sutton <andrew.n.sutton@gmail.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r196209
Hans-Peter Nilsson [Thu, 21 Feb 2013 16:41:25 +0000 (16:41 +0000)]
rtl.texi (vec_concat, [...]): Mention that scalars are valid operands.
* doc/rtl.texi (vec_concat, vec_duplicate): Mention that
scalars are valid operands.
From-SVN: r196208
Martin Jambor [Thu, 21 Feb 2013 16:08:51 +0000 (17:08 +0100)]
re PR tree-optimization/56310 (ICE: in decide_about_value, at ipa-cp.c:3310 with -fipa-cp -fno-early-inlining -fipa-cp-clone --param=ipa-cp-eval-threshold=1)
2013-02-21 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/56310
* ipa-cp.c (agg_replacements_to_vector): New parameter index, copy
only matching indices and non-negative final offsets.
(intersect_aggregates_with_edge): Pass src_idx to
agg_replacements_to_vector. Pass src_idx insstead of index to
intersect_with_agg_replacements.
testsuite/
* g++.dg/ipa/pr56310.C: New test.
From-SVN: r196207
Martin Jambor [Thu, 21 Feb 2013 16:05:27 +0000 (17:05 +0100)]
ipa-cp.c (good_cloning_opportunity_p): Dump the real threshold instead of hard-wired defaults.
2013-02-21 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (good_cloning_opportunity_p): Dump the real threshold
instead of hard-wired defaults.
From-SVN: r196206
Jakub Jelinek [Thu, 21 Feb 2013 14:25:32 +0000 (15:25 +0100)]
asan_rtl.cc (__asan_preinit): Don't add if PIC macro is defined.
* asan/asan_rtl.cc (__asan_preinit): Don't add if PIC macro is
defined. Add used attribute.
From-SVN: r196205
Maciej W. Rozycki [Thu, 21 Feb 2013 14:06:52 +0000 (14:06 +0000)]
invoke.texi (MIPS Options): Update documentation of the floating-point multiply-accumulate instruction...
* doc/invoke.texi (MIPS Options): Update documentation of the
floating-point multiply-accumulate instruction restrictions.
From-SVN: r196204
Maciej W. Rozycki [Thu, 21 Feb 2013 14:05:35 +0000 (14:05 +0000)]
Fix ChangeLog typo.
From-SVN: r196203
Janus Weil [Thu, 21 Feb 2013 12:26:44 +0000 (13:26 +0100)]
re PR fortran/56385 ([OOP] ICE with allocatable function result in a procedure-pointer component)
2013-02-21 Janus Weil <janus@gcc.gnu.org>
PR fortran/56385
* trans-array.c (structure_alloc_comps): Handle procedure-pointer
components with allocatable result.
2013-02-21 Janus Weil <janus@gcc.gnu.org>
PR fortran/56385
* gfortran.dg/proc_ptr_comp_37.f90: New.
From-SVN: r196202
Kostya Serebryany [Thu, 21 Feb 2013 10:57:10 +0000 (10:57 +0000)]
libsanitizer merge from upstream r175733
From-SVN: r196201
Richard Biener [Thu, 21 Feb 2013 10:52:39 +0000 (10:52 +0000)]
re PR tree-optimization/56415 (Performance regression after fix for 56273)
2013-02-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/56415
Revert
2013-02-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/56273
* tree-vrp.c (simplify_cond_using_ranges): Disable for the
first VRP run.
* g++.dg/warn/Warray-bounds-6.C: New testcase.
* gcc.dg/tree-ssa/pr21559.c: Adjust.
* gcc.dg/tree-ssa/vrp17.c: Likewise.
* gcc.dg/tree-ssa/vrp18.c: Likewise.
* gcc.dg/tree-ssa/vrp23.c: Likewise.
* gcc.dg/tree-ssa/vrp24.c: Likewise.
From-SVN: r196200
Marek Polacek [Thu, 21 Feb 2013 10:21:19 +0000 (10:21 +0000)]
New test for PR56398.
From-SVN: r196199
Jakub Jelinek [Thu, 21 Feb 2013 09:40:44 +0000 (10:40 +0100)]
re PR bootstrap/56258 (Please upgrade doc/*.texi to the latest texinfo package(s))
PR bootstrap/56258
* doc/invoke.texi (-fdump-rtl-pro_and_epilogue): Use @item
instead of @itemx.
* gnat-style.texi (@title): Remove @hfill.
* projects.texi: Avoid line wrapping inside of @pxref or
@xref.
* doc/cp-tools.texinfo (Virtual Machine Options): Use just
one @gccoptlist instead of 3 separate ones.
From-SVN: r196196
Jakub Jelinek [Thu, 21 Feb 2013 09:33:49 +0000 (10:33 +0100)]
re PR inline-asm/56405 (ICE on questionable "m" argument)
PR inline-asm/56405
* expr.c (expand_expr_real_1) <case TARGET_MEM_REF, MEM_REF>: Don't
use movmisalign or extract_bit_field for EXPAND_MEMORY modifier.
* gcc.c-torture/compile/pr56405.c: New test.
From-SVN: r196195
Tobias Burnus [Thu, 21 Feb 2013 09:23:31 +0000 (10:23 +0100)]
re PR fortran/56416 (texinfo 5: Many warnings for gfortran's *.texi)
2012-02-21 Tobias Burnus <burnus@net-b.de>
PR fortran/56416
* gfortran.texi (Part II: Language Reference, Extensions,
Non-Fortran Main Program): Sort @menu to match actual section order.
* intrinsic.texi (Intrinsic Procedures): Ditto.
(C_F_POINTER, PRECISION): Move to the alphabetically correct place.
From-SVN: r196194
GCC Administrator [Thu, 21 Feb 2013 00:19:11 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r196191
Jonathan Wakely [Wed, 20 Feb 2013 22:41:58 +0000 (22:41 +0000)]
streambuf (basic_streambuf): Use injected class name instead of non-standard __streambuf_type typedef.
* include/std/streambuf (basic_streambuf): Use injected class name
instead of non-standard __streambuf_type typedef. Fix unclosed Doxygen
group.
From-SVN: r196185
Jonathan Wakely [Wed, 20 Feb 2013 22:41:51 +0000 (22:41 +0000)]
faq.html: Fix spelling.
* doc/html/faq.html: Fix spelling.
* doc/xml/faq.xml: Likewise.
* include/bits/basic_ios.h: Likewise.
* include/bits/regex.h: Likewise.
* include/std/istream: Likewise.
* include/std/streambuf: Likewise.
From-SVN: r196184
Jonathan Wakely [Wed, 20 Feb 2013 21:23:44 +0000 (21:23 +0000)]
55043.cc: Add missing namespace qualification.
* testsuite/23_containers/unordered_set/55043.cc: Add missing
namespace qualification.
* testsuite/23_containers/unordered_multiset/55043.cc: Likewise.
From-SVN: r196183
Ian Lance Taylor [Wed, 20 Feb 2013 20:04:36 +0000 (20:04 +0000)]
re PR go/56171 (syscall FAILs on Solaris)
PR go/56171
syscall: Solaris fixes for passing file descriptor.
From Rainer Orth.
From-SVN: r196180
Ian Lance Taylor [Wed, 20 Feb 2013 19:45:10 +0000 (19:45 +0000)]
re PR go/56320 (Several libgo tests FAIL on 64-bit Solaris/x86)
PR go/56320
runtime: Support Solaris AMD64 in lfstack.
The address space layout is similar on SPARC64 and AMD64 when
running Solaris.
From-SVN: r196179
Jan Hubicka [Wed, 20 Feb 2013 15:47:21 +0000 (16:47 +0100)]
re PR tree-optimization/56265 (ICE in ipa_make_edge_direct_to_target)
PR tree-optimization/56265
* ipa-prop.c (ipa_make_edge_direct_to_target): Fixup callgraph when target is
referenced for firs ttime.
* testsuite/g++.dg/ipa/devirt-11.C: New testcase.
From-SVN: r196177
Richard Biener [Wed, 20 Feb 2013 15:19:13 +0000 (15:19 +0000)]
tree-call-cdce.c (tree_call_cdce): Do not remove unused locals.
2013-02-20 Richard Biener <rguenther@suse.de>
* tree-call-cdce.c (tree_call_cdce): Do not remove unused locals.
* tree-ssa-forwprop.c (ssa_forward_propagate_and_combine): Likewise.
* tree-ssa-dce.c (perform_tree_ssa_dce): Likewise.
* tree-ssa-copyrename.c (copy_rename_partition_coalesce): Do
not return anything.
(rename_ssa_copies): Do not remove unused locals.
* tree-ssa-ccp.c (do_ssa_ccp): Likewise.
* tree-ssanames.c (pass_release_ssa_names): Remove unused
locals first.
* passes.c (execute_function_todo): Do not schedule unused locals
removal if cleanup_tree_cfg did something.
* tree-ssa-live.c (remove_unused_locals): Dump statistics
about the number of removed locals.
* gcc.dg/tree-ssa/forwprop-8.c: Adjust.
From-SVN: r196174
Richard Biener [Wed, 20 Feb 2013 13:38:13 +0000 (13:38 +0000)]
re PR tree-optimization/56398 (ICE (Segmentation fault) in dominated_by_p)
2013-02-20 Richard Biener <rguenther@suse.de>
PR tree-optimization/56398
* tree-vect-loop-manip.c (adjust_debug_stmts): Skip
SSA default defs.
From-SVN: r196172
Martin Jambor [Wed, 20 Feb 2013 12:56:30 +0000 (13:56 +0100)]
re PR tree-optimization/55334 (mgrid regression (ipa-cp disables vectorization))
2013-02-20 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/55334
* ipa-cp.c (initialize_node_lattices): Disable IPA-CP through and to
restricted pointers to arrays.
From-SVN: r196171
Richard Biener [Wed, 20 Feb 2013 11:39:39 +0000 (11:39 +0000)]
re PR tree-optimization/56396 (memory corruption in cc1)
2013-02-20 Richard Biener <rguenther@suse.de>
Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/56396
* tree-ssa-ccp.c (n_const_val): New static variable.
(get_value): Return NULL for SSA names we don't have a lattice
entry for.
(ccp_initialize): Initialize n_const_val.
* tree-ssa-copy.c (n_copy_of): New static variable.
(init_copy_prop): Initialize n_copy_of.
(get_value): Return NULL_TREE for SSA names we don't have a
lattice entry for.
* gcc.dg/pr56396.c: New testcase.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r196170
Martin Jambor [Wed, 20 Feb 2013 10:33:47 +0000 (11:33 +0100)]
ipa-cp.c (initialize_node_lattices): Fix dumping condition.
2013-02-20 Martin Jambor <mjambor@suse.cz>
* ipa-cp.c (initialize_node_lattices): Fix dumping condition.
From-SVN: r196169
Richard Biener [Wed, 20 Feb 2013 09:04:29 +0000 (09:04 +0000)]
genpreds.c (write_lookup_constraint): Do not compare first letter of the constraint again.
2013-02-20 Richard Biener <rguenther@suse.de>
* genpreds.c (write_lookup_constraint): Do not compare first
letter of the constraint again.
From-SVN: r196167
Richard Biener [Wed, 20 Feb 2013 09:03:18 +0000 (09:03 +0000)]
tree-ssa-loop-ivopts.c (alloc_use_cost_map): Use bitmap_count_bits and ceil_log2.
2013-02-20 Richard Biener <rguenther@suse.de>
* tree-ssa-loop-ivopts.c (alloc_use_cost_map): Use bitmap_count_bits
and ceil_log2.
(get_use_iv_cost): Terminate hashtable walk when coming across
an empty entry.
From-SVN: r196166
Paolo Carlini [Wed, 20 Feb 2013 09:02:35 +0000 (09:02 +0000)]
re PR c++/56373 (-Wzero-as-null-pointer-constant: does not catch issues with smart pointers)
/cp
2013-02-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56373
* tree.c (maybe_warn_zero_as_null_pointer_constant): Add.
* cvt.c (ocp_convert): Use the latter.
(cp_convert_to_pointer): Likewise.
* decl.c (check_default_argument): Likewise.
* typeck.c (cp_build_binary_op): Likewise.
* cp-tree.h (maybe_warn_zero_as_null_pointer_constant): Declare.
/testsuite
2013-02-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56373
* g++.dg/cpp0x/Wzero-as-null-pointer-constant-2.C: New.
From-SVN: r196165