118963 Commits

Author SHA1 Message Date
Tulio Magno Quites Machado Filho
7b49d6db24 ppc-get-timebase.c: New file.
2012-09-19  Tulio Magno Quites Machado Filho  <tuliom@linux.vnet.ibm.com>

        * gcc.target/powerpc/ppc-get-timebase.c: New file.
        * gcc.target/powerpc/ppc-mftb.c: New file.

From-SVN: r191492
2012-09-19 15:08:00 -04:00
David Edelsohn
0efbf084f4 [multiple changes]
2012-09-19  Tulio Magno Quites Machado Filho  <tuliom@linux.vnet.ibm.com>

        * config/rs6000/rs6000-builtin.def: Add __builtin_ppc_get_timebase
        and __builtin_ppc_mftb.
        * config/rs6000/rs6000.c (rs6000_expand_zeroop_builtin): New
        function to expand an expression that calls a built-in without
        arguments.
        (rs6000_expand_builtin): Add __builtin_ppc_get_timebase and
        __builtin_ppc_mftb.
        (rs6000_init_builtins): Likewise.
        * config/rs6000/rs6000.md (rs6000_get_timebase): New pattern.
        (rs6000_get_timebase_ppc32): New pattern.
        (rs6000_mftb_<mode>): New pattern.

        * doc/extend.texi (PowerPC Built-in Functions): New section.
        (PowerPC AltiVec/VSX Built-in Functions):
        Move some built-ins unrelated to Altivec/VSX to the new section.

2012-09-19  David Edelsohn  <dje.gcc@gmail.com>

        * rs6000.md (mac*): Remove extra spaces.
        (mulhw*): Same.

From-SVN: r191491
2012-09-19 15:05:34 -04:00
Oleg Endo
4eddc42b63 re PR target/54089 ([SH] Refactor shift patterns)
PR target/54089
	* config/sh/predicates.md (arith_reg_or_t_reg_operand): New predicate.
	* config/sh/sh.md (*rotcr): Use arith_reg_or_t_reg_operand predicate.
	Handle the case where one of the operands is T_REG.
	Add new pattern to handle MSB extraction.

	PR target/54089
	* gcc.target/sh/pr54089-1.c (test_11, test_12, test_13, test_14): New
	functions.

From-SVN: r191490
2012-09-19 17:48:25 +00:00
Oleg Endo
8b75f5506f re PR target/54236 ([SH] Improve addc and subc insn utilization)
PR target/54236
	* config/sh/sh.md (*addc): Add pattern to handle one bit left shifts.

	PR target/54236
	* gcc.target/sh/pr54236-1.c (test_08): Add one bit left shift case.

From-SVN: r191489
2012-09-19 17:45:37 +00:00
Oleg Endo
689653125b sh.md (prologue, epilogue): Use braced strings.
* config/sh/sh.md (prologue, epilogue): Use braced strings.

From-SVN: r191488
2012-09-19 17:42:28 +00:00
Ian Lance Taylor
69d4d74dff compiler: Ignore byte-order-mark at start of file.
From-SVN: r191485
2012-09-19 15:51:16 +00:00
Eric Botcazou
17fff17b06 re PR rtl-optimization/54290 (wrong code at -O2 with large offset)
PR rtl-optimization/54290
	* reload1.c (choose_reload_regs): Also take into account secondary MEMs
	to remove address replacements for inherited reloads.
	(replaced_subreg): Move around.

From-SVN: r191484
2012-09-19 15:38:16 +00:00
Joseph Myers
5b156feaf8 * cpplib.pot: Regenerate.
From-SVN: r191483
2012-09-19 15:58:40 +01:00
Joseph Myers
58420e6b30 * gcc.pot: Regenerate.
From-SVN: r191482
2012-09-19 15:58:08 +01:00
David Edelsohn
d36481c6ac aix61.h (TARGET_DEFAULT): Add MASK_PPC_GPOPT, MASK_PPC_GFXOPT, and MASK_MFCRF.
* config/rs6000/aix61.h (TARGET_DEFAULT): Add MASK_PPC_GPOPT,
        MASK_PPC_GFXOPT, and MASK_MFCRF.

From-SVN: r191480
2012-09-19 10:21:52 -04:00
Richard Guenther
471dc06d27 c-torture.exp (TORTURE_OPTIONS): Add -Og -g.
2012-09-19  Richard Guenther  <rguenther@suse.de>

	* lib/c-torture.exp (TORTURE_OPTIONS): Add -Og -g.

From-SVN: r191478
2012-09-19 14:05:26 +00:00
Richard Guenther
2d5fec4e65 passes.c (init_optimization_passes): For -Og move pass_object_sizes inbetween CCP and copyprop.
2012-09-19  Richard Guenther  <rguenther@suse.de>

	* passes.c (init_optimization_passes): For -Og move
	pass_object_sizes inbetween CCP and copyprop.

From-SVN: r191476
2012-09-19 13:46:34 +00:00
Rainer Orth
768505569c configure.ac (GCC_HEADER_STDINT): Invoke.
* configure.ac (GCC_HEADER_STDINT): Invoke.
        * backtrace.h: If we can't find <stdint.h>, use "gstdint.h".
        * btest.c: Don't include <stdint.h>.
        * dwarf.c: Likewise.
        * configure, aclocal.m4, Makefile.in, config.h.in: Rebuild.

Co-Authored-By: Ian Lance Taylor <iant@google.com>

From-SVN: r191474
2012-09-19 13:41:33 +00:00
Richard Guenther
fb522d96cc builtin-unreachable-6.c: Adjust.
2012-09-19  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/builtin-unreachable-6.c: Adjust.

From-SVN: r191472
2012-09-19 13:29:08 +00:00
Richard Guenther
56f9667fa6 builtin-object-size-10.c: Adjust.
2012-09-19  Richard Guenther  <rguenther@suse.de>

	* gcc.dg/builtin-object-size-10.c: Adjust.
	* gcc.dg/builtin-unreachable-5.c: Adjust.
	* gcc.dg/tree-ssa/builtin-fprintf-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-fprintf-chk-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-printf-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-printf-chk-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-vfprintf-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-vfprintf-chk-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-vprintf-1.c: Adjust.
	* gcc.dg/tree-ssa/builtin-vprintf-chk-1.c: Adjust.
	* gcc.dg/tree-ssa/ssa-ccp-10.c: Adjust.
	* gcc.dg/vect/vec-scal-opt.c: Adjust.
	* gcc.dg/vect/vec-scal-opt1.c: Adjust.
	* gcc.dg/vect/vec-scal-opt2.c: Adjust.

From-SVN: r191468
2012-09-19 11:13:09 +00:00
Richard Guenther
ef78c9c7e6 tree-ssa-forwprop.c (get_prop_source_stmt): Simplify.
2012-09-19  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-forwprop.c (get_prop_source_stmt): Simplify.

From-SVN: r191467
2012-09-19 11:03:51 +00:00
Jan Hubicka
b5493fb2fa symtab.c (insert_to_assembler_name_hash): Do not insert register vars.
* symtab.c (insert_to_assembler_name_hash): Do not insert
	register vars.
	(unlink_from_assembler_name_hash): NULL out pointers of unlinked
	var.
	(symtab_prevail_in_asm_name_hash): New.
	(symtab_initialize_asm_name_hash): Break out from ...
	(symtab_node_for_asm): ... here.
	(dump_symtab_base): Dump LTO file data.
	(verify_symtab_base): Register vars are not in symtab.
	* cgraph.h (symtab_initialize_asm_name_hash,
	symtab_prevail_in_asm_name_hash): New functions.
	(symtab_real_symbol_p): New inline.
	* lto-symtab.c: Do not include gt-lto-symtab.h.
	(lto_symtab_entry_def): Remove.
	(lto_symtab_entry_t): Remove.
	(lto_symtab_identifiers): Remove.
	(lto_symtab_free): Remove.
	(lto_symtab_entry_hash): Remove.
	(lto_symtab_entry_eq): Remove.
	(lto_symtab_entry_marked_p): Remove.
	(lto_symtab_maybe_init_hash_table): Remove.
	(resolution_guessed_p, set_resolution_guessed): New functions.
	(lto_symtab_register_decl): Only set resolution info.
	(lto_symtab_get, lto_symtab_get_resolution): Remove.
	(lto_symtab_merge): Reorg to work across symtab; do nothing if decls
	are same.
	(lto_symtab_resolve_replaceable_p): Reorg to work on symtab.
	(lto_symtab_resolve_can_prevail_p): Likewise; only real symbols can
	prevail.
	(lto_symtab_resolve_symbols): Reorg to work on symtab.
	(lto_symtab_merge_decls_2): Likewise.
	(lto_symtab_merge_decls_1): Likewise; add debug dumps.
	(lto_symtab_merge_decls): Likewise; do not merge at ltrans stage.
	(lto_symtab_merge_cgraph_nodes_1): Reorg to work on symtab.
	(lto_symtab_merge_cgraph_nodes): Likewise; do not merge at ltrans stage.
	(lto_symtab_prevailing_decl): Rewrite to lookup into symtab.
	* lto-streaer.h (lto_symtab_free): Remove.
	* lto-cgraph.c (add_references): Cleanup.
	* varpool.c (varpool_assemble_decl): Skip hard regs.

	* lto.c (lto_materialize_function): Update confused comment.
	(read_cgraph_and_symbols): Do not free symtab.

From-SVN: r191466
2012-09-19 10:01:56 +00:00
Richard Guenther
9745abfd1c re PR other/53316 (Introduce -Og)
2012-09-19  Richard Guenther  <rguenther@suse.de>

	PR other/53316
	* common/common-target.h (OPT_LEVELS_1_PLUS_NOT_DEBUG): Add.

From-SVN: r191465
2012-09-19 09:31:49 +00:00
Richard Guenther
bf7a718571 re PR other/53316 (Introduce -Og)
2012-09-19  Richard Guenther  <rguenther@suse.de>

	PR other/53316
	* common.opt (optimize_debug): New variable.
	(Og): New optimization level.
	* doc/invoke.texi (Og): Document.
	* opts.c (maybe_default_option): Add debug parameter.
	(maybe_default_options): Likewise.
	(default_options_optimization): Handle -Og.
	(common_handle_option): Likewise.
	* passes.c (gate_all_optimizations): Do not run with -Og.
	(gate_all_optimizations_g): New gate, run with -Og.
	(pass_all_optimizations_g): New container pass, run with -Og.
	(init_optimization_passes): Schedule pass_all_optimizations_g
	alongside pass_all_optimizations.

From-SVN: r191464
2012-09-19 09:29:57 +00:00
Richard Guenther
f20132e7ae re PR tree-optimization/54132 (Incorrect loop transformation with -ftree-loop-distribute-patterns)
2012-09-19  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/54132
	* tree-loop-distribution.c (classify_partition): Properly
	check dependences for memmove.
	* tree-data-ref.h (compute_affine_dependence): Declare.
	* tree-data-ref.c (compute_affine_dependence): Export.

	* gcc.dg/tree-ssa/ldist-21.c: New testcase.
	* gcc.dg/torture/pr54132.c: Likewise.

From-SVN: r191463
2012-09-19 08:59:06 +00:00
Zhenqiang Chen
f7d0c571f7 re PR middle-end/54364 (Tail call jumps not threaded)
PR middle-end/54364
	* bb-reorder.c (connect_better_edge_p): New added.
	(find_traces_1_round): When optimizing for size, ignore edge frequency
	and probability, and handle all in one round.
	(bb_to_key): Use bb->index as key when optimizing for size.
	(better_edge_p): The bb with smaller index is better when optimizing
	for size.
	(connect_traces): When optimizing for size, connect block n with
	block n + 1; connect trace m with trace m + 1 if falling through.
	(gate_handle_reorder_blocks): Enable bbro when optimizing for -Os.

From-SVN: r191462
2012-09-19 07:40:15 +00:00
Ian Lance Taylor
878b569c6a compiler: Fix multiple types with same name in function.
From-SVN: r191461
2012-09-19 05:27:19 +00:00
Terry Guo
06e28db05e gcc-dg.exp (dg_runtest_extra_prunes): New variable to define extra prune rules that will be applied to all tests in a...
2012-09-19  Terry Guo  <terry.guo@arm.com>

        * lib/gcc-dg.exp (dg_runtest_extra_prunes): New variable to define
        extra prune rules that will be applied to all tests in a .exp file.
        (gcc-dg-prune): Use rules defined by the above variable.
        * gcc.target/arm/arm.exp (dg_runtest_extra_prunes): Skip all the
        harmless warnings on architecture switch conflict.

From-SVN: r191460
2012-09-19 05:17:22 +00:00
Ian Lance Taylor
9425c00b8e re PR bootstrap/54623 (install fails with libbacktrace/backtrace.c:35:20: error: unwind.h: No such file or directory)
PR bootstrap/54623
	* Makefile.am (AM_CPPFLAGS): Define.
	(AM_CFLAGS): Remove -I options.
	* Makefile.in: Rebuild.

From-SVN: r191459
2012-09-19 04:37:40 +00:00
Bin Cheng
467d90329d Fix ChangeLog entry for r191457.
From-SVN: r191458
2012-09-19 01:53:23 +00:00
Bin Cheng
afb0c9cda9 * fold-const.c (fold_truth_andor) Remove duplicated check on
BRANCH_COST.

From-SVN: r191457
2012-09-19 01:49:09 +00:00
Hans-Peter Nilsson
7a99a2514e nested-3.C: Match a sequence of asm-comment characters instead of a single one.
* g++.dg/debug/dwarf2/nested-3.C: Match a sequence
	of asm-comment characters instead of a single one.
	* g++.dg/debug/dwarf2/nested-2.C: Similar.

From-SVN: r191456
2012-09-19 01:36:31 +00:00
GCC Administrator
92058131cf Daily bump.
From-SVN: r191455
2012-09-19 00:17:30 +00:00
Eric Botcazou
63d94e58b1 re PR middle-end/54617 (ICE on gcc.c-torture/compile/pr42025-2.c with -m64 and -O1)
PR middle-end/54617
	* expr.c (store_field): Handle a PARALLEL in more cases.

From-SVN: r191451
2012-09-18 22:42:18 +00:00
Segher Boessenkool
4f60e9d38f rs6000.md (sminsi3, [...]): Delete.
2012-09-18  Segher Boessenkool  <segher@kernel.crashing.org>

gcc/
	* config/rs6000/rs6000.md (sminsi3, smaxsi3, uminsi3, umaxsi3):
	Delete.
	(abssi2, abs<mode>2_isel, nabs<mode>2_isel, abssi2_nopower,
	nabs_nopower): Delete.
	(absdi2, absdi2_internal, nabsdi2): Delete.
	(smindi3, smaxdi3, umindi3, umaxdi3): Delete.

From-SVN: r191450
2012-09-18 23:13:45 +02:00
Janis Johnson
65c247eefc * gcc.dg/vect/fast-math-pr35982.c: Skip check instead of xfail.
From-SVN: r191448
2012-09-18 19:47:39 +00:00
Janis Johnson
672df68093 no-vfa-vect-101.c: Skip a check for an irrelevant target instead of xfailing it.
* gcc.dg/vect/no-vfa-vect-101.c: Skip a check for an irrelevant
	target instead of xfailing it.
	* gcc.dg/vect/no-vfa-vect-102.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-102a.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-37.c: Likewise.
	* gcc.dg/vect/no-vfa-vect-79.c: Likewise.
	* gcc.dg/vect/vect-104.c: Likewise.
	* gcc.dg/vect/vect-outer-1-big-array.c: Likewise.
	* gcc.dg/vect/vect-outer-1.c: Likewise.
	* gcc.dg/vect/vect-outer-1a-big-array.c: Likewise.
	* gcc.dg/vect/vect-outer-1a.c: Likewise.
	* gcc.dg/vect/vect-outer-1b-big-array.c: Likewise.
	* gcc.dg/vect/vect-outer-1b.c: Likewise.
	* gcc.dg/vect/vect-outer-2b.c: Likewise.
	* gcc.dg/vect/vect-outer-3a-big-array.c: Likewise.
	* gcc.dg/vect/vect-outer-3a.c: Likewise.
	* gcc.dg/vect/vect-outer-3b.c: Likewise.
	* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.

From-SVN: r191447
2012-09-18 19:46:52 +00:00
Janis Johnson
1401c91389 target-supports.exp (check_effective_target_vect_widen_mult_qi_to_hi, [...]): Check arm_neon_ok instead of arm_none.
* lib/target-supports.exp
	(check_effective_target_vect_widen_mult_qi_to_hi,
	check_effective_target_vect_widen_mult_hi_to_si,
	check_effective_target_vect_widen_mult_qi_to_hi_pattern,
	check_effective_target_vect_widen_mult_hi_to_si_pattern,
	check_effective_target_vect_pack_trunc,
	check_effective_target_vect_unpack,
	check_effective_target_vect_multiple_sizes): Check arm_neon_ok
	instead of arm_none.

From-SVN: r191446
2012-09-18 19:46:01 +00:00
Janis Johnson
67fae09fb0 * gcc.dg/vect/pr52298.c: Remove "dg-do run".
From-SVN: r191445
2012-09-18 19:45:11 +00:00
Senthil Kumar Selvaraj
3d3bdc6767 target-supports-dg.exp (check-flags): Add cflags from board config to compiler_flags.
2012-09-18  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

	* lib/target-supports-dg.exp (check-flags): Add cflags from board
	config to compiler_flags.

From-SVN: r191444
2012-09-18 19:42:13 +00:00
Ian Lance Taylor
3319ef17d2 posix.c (O_BINARY): Define if not defined.
* posix.c (O_BINARY): Define if not defined.
	(backtrace_open): Pass O_BINARY to open.  Only call fcntl if
	HAVE_FCNTL is defined.
	* configure.ac: Test for the fcntl function.
	* configure, config.h.in: Rebuild.

From-SVN: r191443
2012-09-18 18:06:28 +00:00
Ian Lance Taylor
bd3e497d0b * btest.c (test1, test2, test3, test4): Add the unused attribute.
From-SVN: r191440
2012-09-18 17:10:01 +00:00
Ian Lance Taylor
30e15876ff * dwarf.c: Correct test of HAVE_DECL_STRNLEN.
From-SVN: r191437
2012-09-18 16:50:29 +00:00
Georg-Johann Lay
487e359c28 avr.md: Tidy up empty "".
* config/avr/avr.md: Tidy up empty "".  Fix C code indentation.
	* config/avr/avr-fixed.md: Ditto.

From-SVN: r191436
2012-09-18 16:43:27 +00:00
Ian Lance Taylor
d4c059d582 configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
* configure.ac: Add AC_USE_SYSTEM_EXTENSIONS.
	* mmapio.c: Don't define _GNU_SOURCE.
	* configure, config.h.in: Rebuild.

From-SVN: r191435
2012-09-18 16:36:48 +00:00
Edward Smith-Rowland
19ece7ec02 Implement the Nakagami statistical distribution as an extension.
From-SVN: r191434
2012-09-18 16:14:09 +00:00
Ian Lance Taylor
772a71a959 configure.ac: Check whether strnlen is declared.
* configure.ac: Check whether strnlen is declared.
	* dwarf.c: Declare strnlen if not declared.
	* configure, config.h.in: Rebuild.

From-SVN: r191433
2012-09-18 16:06:53 +00:00
Ian Lance Taylor
9a9baa5254 strnlen.c: New file.
* strnlen.c: New file.
	* configure.ac: Check for strnlen, add it to AC_LIBOBJ if it's not
	present.
	* Makefile.in: Rebuild dependencies.
	(CFILES): Add strnlen.c.
	(CONFIGURED_OFILES): Add ./strnlen.$(objext).
	* configure, config.in, functions.texi: Rebuild.

	* maint-tool: Accept .def files in the include directory.

From-SVN: r191432
2012-09-18 16:03:01 +00:00
Maciej W. Rozycki
fb5e0707d1 rs6000.c (print_operand): Remove.
* config/rs6000/rs6000.c (print_operand) <'c'>: Remove.
	* config/rs6000/spe.md: Remove a leftover comment.

From-SVN: r191431
2012-09-18 15:57:53 +00:00
Jakub Jelinek
68e28cfd16 re PR rtl-optimization/54592 (Cannot fuse SSE move and add together)
PR target/54592
	* config/i386/i386.c (ix86_rtx_costs): Limit > UNITS_PER_WORD
	AND/IOR/XOR cost calculation to MODE_INT class modes.

	* gcc.target/i386/pr54592.c: New test.

From-SVN: r191430
2012-09-18 17:14:15 +02:00
Arnaud Charlet
0b07a57e8c * c-ada-spec.c: Style fixes.
From-SVN: r191428
2012-09-18 16:31:38 +02:00
Thomas Quinot
da5182be67 invoke.texi: Document -fada-spec-parent.
* doc/invoke.texi: Document -fada-spec-parent.
c-family/
	* c.opt (-fada-spec-parent): Define new command line switch.
	* c-ada-spec.c (get_ada_package): When -fada-spec-parent
	is specified, generate binding spec as a child of the specified unit.

From-SVN: r191427
2012-09-18 16:26:06 +02:00
Paolo Carlini
ecfce0b850 re PR libstdc++/54612 (Many failures in ext/random testsuite)
2012-09-18  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/54612
	* include/ext/random.tcc (operator==
	(const __gnu_cxx::simd_fast_mersenne_twister_engine<>&,
	const __gnu_cxx::simd_fast_mersenne_twister_engine<>&)): Fix
	state_size use.
	* config/cpu/i486/opt/ext/opt_random.h: Guard with __SSE2__.

From-SVN: r191424
2012-09-18 14:02:20 +00:00
Jakub Jelinek
1d61ee4252 re PR tree-optimization/54610 (FAIL: gcc.dg/tree-ssa/forwprop-22.c (internal compiler error) on x86 AVX targets)
PR tree-optimization/54610
	* tree-ssa-forwprop.c: Include optabs.h.  Don't include
	tree-vectorizer.h.
	(simplify_vector_constructor): Don't use vect_gen_perm_mask,
	instead create the mask constant here.
	* Makefile.in (tree-ssa-forwprop.o): Depend on $(OPTABS_H).
	Don't depend on $(TREE_VECTORIZER_H).

	* gcc.target/i386/pr54610.c: New test.

From-SVN: r191421
2012-09-18 15:03:09 +02:00
Florian Weimer
6889a65081 Makefile.in (BASIC_BLOCK_H): Add cfg-flags.def.
2012-09-18  Florian Weimer  <fweimer@redhat.com>

	* Makefile.in (BASIC_BLOCK_H): Add cfg-flags.def.

From-SVN: r191420
2012-09-18 14:55:06 +02:00