Commit Graph

134843 Commits

Author SHA1 Message Date
Ilya Enkovich
d3fb44cbf6 tree-chkp.c (chkp_build_returned_bound): Don't predict return bounds for strchr calls.
* tree-chkp.c (chkp_build_returned_bound): Don't predict
	return bounds for strchr calls.

From-SVN: r218479
2014-12-08 10:10:00 +00:00
Ilya Enkovich
985f48f7b5 tree-chkp.c (chkp_call_returns_bounds_p): New.
gcc/

	* tree-chkp.c (chkp_call_returns_bounds_p): New.
	(chkp_build_returned_bound): Use zero bounds as
	returned by calls not returning bounds.

gcc/testsuite/

	* gcc.target/i386/chkp-bndret.c: New.
	* gcc.target/i386/chkp-strchr.c: New.

From-SVN: r218478
2014-12-08 10:01:19 +00:00
Richard Biener
2625bb5df5 builtins.c (fold_builtin_0): Remove unused ignore parameter.
2014-12-08  Richard Biener  <rguenther@suse.de>

	* builtins.c (fold_builtin_0): Remove unused ignore parameter.
	(fold_builtin_1): Likewise.
	(fold_builtin_3): Likewise.
	(fold_builtin_varargs): Likewise.
	(fold_builtin_2): Likewise.  Do not fold stpcpy here.
	(fold_builtin_n): Adjust.
	(fold_builtin_stpcpy): Move to gimple-fold.c.
	(gimple_fold_builtin_stpcpy): Moved and gimplified from builtins.c.
	(gimple_fold_builtin): Fold stpcpy here.

From-SVN: r218477
2014-12-08 09:20:35 +00:00
Trevor Saunders
b0122457bc don't ICE when section attribute is used on things in comdats
gcc/

	PR ipa/63621
	* symtab.c (symtab_node::verify): Check for section attribute before
	asserting something isn't in a section and a comdat group.

From-SVN: r218476
2014-12-08 00:35:33 +00:00
GCC Administrator
35efb9ac39 Daily bump.
From-SVN: r218475
2014-12-08 00:16:30 +00:00
Oleg Endo
10d1762223 re PR target/53513 ([SH] Add support for fpchg insn and improve fenv support)
gcc/testsuite/
	PR target/53513
	* gcc.target/sh/pr54602-4.c: Fix matching of rte-nop sequence.

From-SVN: r218472
2014-12-07 23:19:59 +00:00
Oleg Endo
b63e26d5ef re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)
gcc/
	PR target/50751
	* config/sh/sh.md (extendqihi2): Allow only for TARGET_SH1.

From-SVN: r218469
2014-12-07 22:57:11 +00:00
Eric Botcazou
6c6a593dc0 compare-elim.c: Fix head comment.
* compare-elim.c: Fix head comment.
	(conforming_compare): Remove redundant test.
	(can_eliminate_compare): New function extracted from...
	(before_dom_children): ...here.  Use it, replace direct uses of
	flag_non_call_exceptions and tidy up.
	(maybe_select_cc_mode): Tidy up.

From-SVN: r218468
2014-12-07 21:55:47 +00:00
John David Anglin
bbea402544 re PR testsuite/64038 (FAIL: gcc.dg/ipa/ipa-icf-5.c (test for excess errors))
PR testsuite/64038
	* gcc.dg/ipa/ipa-icf-5.c: Require c99_runtime.  Add c99_runtime options.
	* gcc.dg/ipa/ipa-icf-7.c: Likewise.

From-SVN: r218467
2014-12-07 17:48:56 +00:00
Oleg Endo
965a46d51a h8300.exp: Fix duplicated text.
gcc/testsuite/
	* gcc.target/h8300/h8300.exp: Fix duplicated text.
	* gcc.target/h8300/pragma-isr.c: Likewise.
	* gcc.target/h8300/pragma-isr2.c: Likewise.

From-SVN: r218465
2014-12-07 16:42:45 +00:00
Felix Yang
a5e69cad62 aarch64-simd.md (clrsb<mode>2, [...]): New patterns.
* config/aarch64/aarch64-simd.md (clrsb<mode>2, popcount<mode>2): New
        patterns.
        * config/aarch64/aarch64-simd-builtins.def (clrsb, popcount): New
        builtins.
        * config/aarch64/arm_neon.h (vcls_s8, vcls_s16, vcls_s32, vclsq_s8,
        vclsq_s16, vclsq_s32, vcnt_p8, vcnt_s8, vcnt_u8, vcntq_p8, vcntq_s8,
        vcntq_u8): Rewrite using builtin functions.

Co-Authored-By: Shanyao Chen <chenshanyao@huawei.com>

From-SVN: r218464
2014-12-07 15:01:23 +00:00
Christophe Lyon
07bdf21b53 [ARM,AArch64][testsuite] Fix vaddl and vaddw tests
2014-12-07  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vaddhn.c: Actually execute
	the test.
	* gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Actually execute
	the test. Fix expected output.
	* gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Likewise.

From-SVN: r218463
2014-12-07 10:40:58 +01:00
Jan Hubicka
3cb251b779 symtab.c (symtab_node::equal_address_to): New function.
* symtab.c (symtab_node::equal_address_to): New function.
	* cgraph.h (symtab_node::equal_address_to): Declare.
	* fold-const.c (fold_comparison, fold_binary_loc): Use it.

	* c-family/c-common.c: Refuse weaks for symbols that can not change
	visibility.

	* gcc.dg/addr_equal-1.c: New testcase.

From-SVN: r218462
2014-12-07 07:35:11 +00:00
Jonathan Wakely
8c8d3b4c12 * doc/invoke.texi (Warning Options): Fix spelling and grammar.
From-SVN: r218461
2014-12-07 00:51:37 +00:00
GCC Administrator
4cbc054ed6 Daily bump.
From-SVN: r218460
2014-12-07 00:16:29 +00:00
James Greenhalgh
50e9ff8378 extend jump thread for finite state automata
PR tree-optimization/54742
	* params.def (max-fsm-thread-path-insns, max-fsm-thread-length,
	max-fsm-thread-paths): New.

	* doc/invoke.texi (max-fsm-thread-path-insns, max-fsm-thread-length,
	max-fsm-thread-paths): Documented.

	* tree-cfg.c (split_edge_bb_loc): Export.
	* tree-cfg.h (split_edge_bb_loc): Declared extern.

	* tree-ssa-threadedge.c (simplify_control_stmt_condition): Restore the
	original value of cond when simplification fails.
	(fsm_find_thread_path): New.
	(fsm_find_control_statement_thread_paths): New.
	(thread_through_normal_block): Call find_control_statement_thread_paths.

	* tree-ssa-threadupdate.c (dump_jump_thread_path): Pretty print
	EDGE_FSM_THREAD.
	(verify_seme): New.
	(duplicate_seme_region): New.
	(thread_through_all_blocks): Generate code for EDGE_FSM_THREAD edges
	calling duplicate_seme_region.

	* tree-ssa-threadupdate.h (jump_thread_edge_type): Add EDGE_FSM_THREAD.

	* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-6.c: New test.
	* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-7.c: New test.

Co-Authored-By: Brian Rzycki <b.rzycki@samsung.com>
Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r218451
2014-12-06 19:19:37 +00:00
Tobias Burnus
b5a9fd3e94 error.c (gfc_error_check): Use bool not int.
2014-12-06  Tobias Burnus  <burnus@net-b.de>

        * error.c (gfc_error_check): Use bool not int.
        * gfortran.h (gfc_error_check): Update prototype.
        * match.c (gfc_match_if): Update call.
        * parse.c (decode_statement, decode_omp_directive,
        decode_gcc_attribute): Ditto.

From-SVN: r218450
2014-12-06 17:53:40 +01:00
Tobias Burnus
0f447a6e33 error.c (gfc_buffer_error, [...]): Use bool not
2014-12-06  Tobias Burnus  <burnus@net-b.de>
            Manuel López-Ibáñez  <manu@gcc.gnu.org>

        * error.c (gfc_buffer_error, gfc_error_flag_test): Use bool not
        * int.
        (buffer_flag): Remove static variable.
        (buffered_p): Add static variable.
        (gfc_error_init_1): Call gfc_buffer_error.
        (gfc_warning_1, gfc_warning, gfc_warning_now_1, gfc_error,
        gfc_error_now_1): Update for static variable change.
        * gfortran.h (gfc_buffer_error, gfc_error_flag_test): Update
        prototype.
        * parse.c (use_modules, decode_specification_statement,
        next_fixed, next_statement, match_deferred_characteristics):
        Update calls.
        * decl.c (gfc_match_data_decl): Ditto.
        * match.c (gfc_match_name): Ditto.


Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>

From-SVN: r218449
2014-12-06 17:33:11 +01:00
Bruce Korb
b8a82c9dc6 clarification
From-SVN: r218448
2014-12-06 15:08:55 +00:00
Marek Polacek
7fb66c1527 re PR tree-optimization/64183 (Complete unroll doesn't happen for a while-loop)
PR tree-optimization/64183
	* c-gimplify.c (c_gimplify_expr): Don't convert the RHS of a
	shift-expression if it is integer_type_node.  Use types_compatible_p.

	* gcc.dg/tree-ssa/pr64183.c: New test.

From-SVN: r218447
2014-12-06 13:10:31 +00:00
H.J. Lu
c7c8164083 Don't assert "alg != libcall" for -minline-stringops-dynamically
gcc/

	PR target/64200
	* config/i386/i386.c (decide_alg): Don't assert "alg != libcall"
	for TARGET_INLINE_STRINGOPS_DYNAMICALLY.

gcc/testsuite/

	PR target/64200
	* gcc.target/i386/memcpy-strategy-4.c: New test.

From-SVN: r218446
2014-12-06 03:32:46 -08:00
Tim Shen
00d6d5b1e7 Fix ChangeLog format.
From-SVN: r218444
2014-12-06 11:31:12 +00:00
GCC Administrator
909c02814b Daily bump.
From-SVN: r218443
2014-12-06 00:16:31 +00:00
Jakub Jelinek
06dd2aceb1 re PR sanitizer/64170 (ICE compiling Linux Kernel drivers/media/rc/imon.c in imon_incoming_packet)
PR sanitizer/64170
	* sanopt.c (maybe_optimize_asan_check_ifn): If base_checks is
	non-NULL, call maybe_get_dominating_check on it even if g is
	non-NULL.

	* gcc.dg/asan/pr64170.c: New test.

From-SVN: r218440
2014-12-06 00:00:09 +01:00
Jeff Law
40da08e0dd md.texi: Note problems using function calls to determine insn lengths and point readers...
* doc/md.texi: Note problems using function calls to determine
        insn lengths and point readers to a potential workaround.

From-SVN: r218439
2014-12-05 15:19:26 -07:00
Andreas Schwab
4b97b9f771 * combine.c (is_parallel_of_n_reg_sets)
(can_split_parallel_of_n_reg_sets): Only define if !HAVE_cc0.

From-SVN: r218436
2014-12-05 20:25:19 +00:00
Andrew Pinski
7eb2bd5718 aarch64-simd-builtins.def (bswap): Use CF2 rather than CF10 so 2 is appended on the code.
2014-12-05  Andrew Pinski  <apinski@cavium.com>

        * config/aarch64/aarch64-simd-builtins.def (bswap): Use CF2 rather
        than CF10 so 2 is appended on the code.
        * config/aarch64/aarch64-simd.md (bswap<mode>): Rename to ...
        (bswap<mode>2): This so it matches for the optabs.

From-SVN: r218435
2014-12-05 11:44:47 -08:00
Thomas Preud'homme
63edbb04b2 regrename.c (find_best_rename_reg): Rename to ...
2014-12-05  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * regrename.c (find_best_rename_reg): Rename to ...
    (find_rename_reg): This. Also add a parameter to skip tick check.
    * regrename.h: Likewise.
    * config/c6x/c6x.c (try_rename_operands): Adapt to above renaming.

From-SVN: r218434
2014-12-05 18:36:57 +00:00
Martin Jambor
fda3e2851e re PR ipa/64192 (r218369 causes some regressions with -m32.)
2014-12-05  Martin Jambor  <mjambor@suse.cz>

	PR ipa/64192
	* ipa-prop.c (ipa_compute_jump_functions_for_edge): Convert alignment
	from bits to bytes after checking they are byte-aligned.

From-SVN: r218433
2014-12-05 19:14:37 +01:00
Renlin Li
d86cb6d5c7 [AArch64]Clarify the usage of SCHED in AARCH64_CORE macro
gcc/

2014-12-05  Renlin Li  <renlin.li@arm.com>

	* config/aarch64/aarch64-opts.h (AARCH64_CORE): Rename IDENT to SCHED.
	* config/aarch64/aarch64.h (AARCH64_CORE): Likewise.
	* config/aarch64/aarch64.c (AARCH64_CORE): Rename X to IDENT,
	IDENT to SCHED.

From-SVN: r218432
2014-12-05 18:00:55 +00:00
Michael Meissner
663dfcf34e re PR target/53199 (__builtin_bswap64 and __builtin_bswap32 generate errors if -mcpu=power6)
2014-12-05  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/53199
	* gcc.target/powerpc/pr53199.c: Limit tests to 64-bit.

From-SVN: r218431
2014-12-05 17:50:40 +00:00
Bin Cheng
350013bc49 [AArch64]load store pair optimization using sched_fusion pass.
From-SVN: r218430
2014-12-05 17:06:33 +00:00
Olivier Hainque
a66272f6d2 defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
2014-12-05  Olivier Hainque  <hainque@adacore.com>

        gcc/
        * defaults.h: (DWARF_REG_TO_UNWIND_COLUMN): Define default.
        * dwarf2cfi.c (init_one_dwarf_reg_size): Honor
        DWARF_REG_TO_UNWIND_COLUMN.

        libgcc/
        * unwind-dw2.c (DWARF_REG_TO_UNWIND_COLUMN): Remove default def,
        now provided by defaults.h.

From-SVN: r218429
2014-12-05 17:01:42 +00:00
Olivier Hainque
edbbaf3b1b dwarf2cfi.c (init_one_dwarf_reg_size): New helper, processing one particular reg for expand_builtin_init_dwarf_reg_sizes.
2014-12-05  Olivier Hainque  <hainque@adacore.com>

        * dwarf2cfi.c (init_one_dwarf_reg_size): New helper, processing
        one particular reg for expand_builtin_init_dwarf_reg_sizes.
        (expand_builtin_init_dwarf_reg_sizes): Rework to use helper and
        account for dwarf register spans.

From-SVN: r218428
2014-12-05 16:53:22 +00:00
Sandra Loosemore
e425f87428 pr63341-1.c: Remove explicit "dg-do run".
2014-12-05  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/testsuite/
	* gcc.dg/vect/pr63341-1.c: Remove explicit "dg-do run".
	* gcc.dg/vect/pr63341-2.c: Likewise.
	* gcc.dg/vect/pr63379.c: Likewise.
	* gcc.dg/vect/pr63605.c: Likewise.

From-SVN: r218427
2014-12-05 11:18:30 -05:00
Ilya Enkovich
65fdb418d1 re PR target/64003 (valgrind complains about get_attr_length_nobnd in insn-attrtab.c from i386.md)
PR target/64003
	* config/i386/i386.md (*jcc_1_bnd): New.
	(*jcc_2_bnd): New.
	(jump_bnd): New.
	(*jcc_1): Remove bnd prefix.
	(*jcc_2): Likewise.
	(jump): Likewise.

From-SVN: r218426
2014-12-05 16:00:52 +00:00
Renlin Li
3edaf26de0 [AArch64] Use selected cpu's tuning when no tuning parameter is specified
gcc/

2014-12-05  Renlin Li  <renlin.li@arm.com>

	* config/aarch64/aarch64.c (aarch64_parse_cpu): Don't define
	selected_tune.
	(aarch64_override_options): Use selected_cpu's tuning.

From-SVN: r218425
2014-12-05 15:54:57 +00:00
David Edelsohn
0b78b90e51 xcoff.h (ASM_OUTPUT_ALIGNED_LOCAL): Append alignment to section name.
* config/rs6000/xcoff.h (ASM_OUTPUT_ALIGNED_LOCAL): Append
alignment to section name. Increase default alignment to word.

From-SVN: r218424
2014-12-05 10:04:55 -05:00
Andre Vehreschild
201678234c re PR fortran/60414 (internal compiler error: tree check)
2014-12-05  Andre Vehreschild  <vehre@gmx.de>

	PR fortran/60414
	* interface.c (compare_parameter): Remove class argument rank
	check short circuit.

2014-12-05  Andre Vehreschild  <vehre@gmx.de>

	PR fortran/60414
	* gfortran.dg/unlimited_polymorphism_18.f90: New test.

From-SVN: r218422
2014-12-05 15:15:27 +01:00
Martin Jambor
6a4bad955f cgraph.h (cgraph_node): New method expand_all_artificial_thunks.
2014-12-05  Martin Jambor  <mjambor@suse.cz>

	* cgraph.h (cgraph_node): New method expand_all_artificial_thunks.
	(cgraph_edge): New method redirect_callee_duplicating_thunks.
	* cgraphclones.c (duplicate_thunk_for_node): Donot expand newly
	created thunks.
	(redirect_edge_duplicating_thunks): Turned into edge method
	redirect_callee_duplicating_thunks.
	(cgraph_node::expand_all_artificial_thunks): New method.
	(create_clone): Call expand_all_artificial_thunks.
	* ipa-cp.c (perhaps_add_new_callers): Call
	redirect_callee_duplicating_thunks instead of redirect_callee.
	Also call expand_all_artificial_thunks.

From-SVN: r218417
2014-12-05 12:06:26 +01:00
Jonathan Wakely
612b47110a hashtable_policy.h (_Map_base::operator[], [...]): Simplify definitions with trailing return types.
* include/bits/hashtable_policy.h (_Map_base::operator[],
	_Map_base::at): Simplify definitions with trailing return types.

From-SVN: r218416
2014-12-05 10:35:51 +00:00
Ilya Enkovich
37b12f5804 re PR target/64056 (gcc.target/i386/chkp-strlen-4.c etc. FAIL)
gcc/

	PR target/64056
	* doc/sourcebuild.texi: Add mempcpy and stpcpy for Effective-Target Keywords.

gcc/testsuite/

	PR target/64056
	* lib/target-supports.exp (check_effective_target_stpcpy): New.
	* gcc.target/i386/chkp-strlen-2.c: Add stpcpy target check.

From-SVN: r218415
2014-12-05 10:01:33 +00:00
GCC Administrator
0e0aa6c671 Daily bump.
From-SVN: r218413
2014-12-05 00:16:33 +00:00
Manuel López-Ibáñez
ec0fa4f64d This test should have been added in revision 218407.
gcc/testsuite/

2014-12-05  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* gfortran.dg/line_length_5.f90: New test.

From-SVN: r218410
2014-12-05 00:01:35 +00:00
Manuel López-Ibáñez
99abe958d8 error.c (gfc_diagnostic_build_locus_prefix): Use diagnostic_expand_location.
gcc/fortran/ChangeLog:

2014-12-05  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* error.c (gfc_diagnostic_build_locus_prefix): Use
	diagnostic_expand_location.

gcc/ChangeLog:

2014-12-05  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* diagnostic.h (diagnostic_expand_location): New inline function.
	* diagnostic.c (diagnostic_build_prefix): Use it.
	(diagnostic_show_locus): Likewise.

From-SVN: r218409
2014-12-04 23:59:35 +00:00
H.J. Lu
1be7144689 Always define HAVE_LD_PIE_COPYRELOC
PR bootstrap/64189
	* configure.ac (HAVE_LD_PIE_COPYRELOC): Always define.
	* configure: Regenerated.

From-SVN: r218408
2014-12-04 15:53:24 -08:00
Manuel López-Ibáñez
b93c07227e line-map.c (linemap_position_for_loc_and_offset): Add new linemap_assert_fails.
libcpp/ChangeLog:

2014-12-05  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* line-map.c (linemap_position_for_loc_and_offset): Add new
	linemap_assert_fails.

gcc/fortran/ChangeLog:

2014-12-05  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* scanner.c (gfc_next_char_literal): Use gfc_warning_now.
	(load_file): Use the line length as the column hint for
	linemap_line_start. Reserve a location for the highest column of
	the line.

From-SVN: r218407
2014-12-04 23:35:29 +00:00
Manuel López-Ibáñez
97aa8bb6e2 diagnostic.c (diagnostic_color_init): New.
gcc/ChangeLog:

2014-12-04  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* diagnostic.c (diagnostic_color_init): New.
	* diagnostic.h: Declare.
	* gcc.c (driver::global_initializations): Use it.
	(driver_handle_option): Handle -fdiagnostics-color_.
	* toplev.c: Do not include diagnostic-color.h.
	(process_options): Do not initialize color diagnostics here.
	* common.opt (fdiagnostics-color=): Add Driver.
	* opts-global.c (init_options_once): Initialize color here.
	* opts.c (common_handle_option): Use diagnostics_color_init.
	* diagnostic-color.h: Fix comment.

From-SVN: r218406
2014-12-04 23:09:41 +00:00
David Malcolm
87aca3a6ae Avoid overuse of name "buffer" in tree-pretty-print.c
gcc/ChangeLog:
	* tree-pretty-print.c (INDENT): Rename "buffer" to "pp".
	(NIY): Likewise.
	(buffer): Rename this variable to...
	(tree_pp): ...this.

	(do_niy): Rename param from "buffer" to "pp".
	(dump_decl_name): Likewise.
	(dump_function_name): Likewise.
	(dump_function_declaration): Likewise.
	(dump_array_domain): Likewise.
	(dump_omp_clause): Likewise.
	(dump_omp_clauses): Likewise.
	(dump_location): Likewise.
	(dump_block_node): Likewise.
	(dump_generic_node): Likewise.
	(print_declaration): Likewise.
	(print_struct_decl): Likewise.
	(print_call_name): Likewise.
	(pretty_print_string): Likewise.
	(newline_and_indent): Likewise.

	(print_generic_decl): Update for renaming of "buffer" to
	"tree_pp".
	(print_generic_stmt): Likewise.
	(print_generic_stmt_indented): Likewise.
	(print_generic_expr): Likewise.
	(maybe_init_pretty_print): Likewise.

From-SVN: r218405
2014-12-04 21:33:22 +00:00
David Malcolm
c8a15f362a PR jit/63854: Fix double-initialization within tree-pretty-print.c
gcc/ChangeLog:
	PR jit/63854
	* tree-pretty-print.c: Eliminate include of <new>.
	(buffer): Convert this variable from a pretty_printer to a
	pretty_printer *.
	(initialized): Eliminate this variable in favor of the NULL-ness
	of "buffer".
	(print_generic_decl): Update for "buffer" becoming a pointer.
	(print_generic_stmt): Likewise.
	(print_generic_stmt_indented): Likewise.
	(print_generic_expr): Likewise.
	(maybe_init_pretty_print): Likewise, allocating "buffer" on the
	heap and using its non-NULL-ness to ensure idempotency.

From-SVN: r218404
2014-12-04 21:23:57 +00:00