Commit Graph

132002 Commits

Author SHA1 Message Date
Jason Merrill 4a53d90b5f re PR c++/62043 (GCC hangs / aborts / double free or corruption (!prev) on invalid input)
PR c++/62043
	* parser.c (c_parse_file): Change sorry to fatal_error.

From-SVN: r213732
2014-08-07 15:48:36 -04:00
Jason Merrill 2e8e74c0ad re PR c++/61959 (ICE: in tree_to_uhwi, at tree.h:3657 when building Mozilla code)
PR c++/61959
	* semantics.c (cxx_eval_bare_aggregate): Handle POINTER_PLUS_EXPR.

From-SVN: r213731
2014-08-07 15:48:30 -04:00
John David Anglin 34c1359ee1 c11-atomic-exec-4.c: Undefine _POSIX_C_SOURCE before defining in dg-options.
* gcc.dg/atomic/c11-atomic-exec-4.c: Undefine _POSIX_C_SOURCE before
	defining in dg-options.
	* gcc.dg/atomic/c11-atomic-exec-5.c: Likewise.

From-SVN: r213729
2014-08-07 19:21:50 +00:00
John David Anglin 3bce9ea72d stdatomic-flag.c: Add xfail comment.
* gcc.dg/atomic/stdatomic-flag.c: Add xfail comment.

From-SVN: r213727
2014-08-07 18:56:59 +00:00
John David Anglin 42d9533c8f memcpy-5.c: Add -fno-common option on hppa*-*-hpux*.
* gcc.dg/memcpy-5.c: Add -fno-common option on hppa*-*-hpux*.

From-SVN: r213723
2014-08-07 18:46:13 +00:00
John David Anglin 249a8c6c1f pr60655-1.c: Don't add -fdata-sections option on 32-bit hppa-hpux.
* gcc.c-torture/compile/pr60655-1.c: Don't add -fdata-sections option
	on 32-bit hppa-hpux.

From-SVN: r213720
2014-08-07 18:22:47 +00:00
Nathan Sidwell 4303c58196 Makefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ...
* Makefile.in (LIBGCOV_INTERFACE): Move _gcov_dump ...
	(LIBGCOV_DRIVER): ... to here.
	* libgcov.h (gcov_do_dump): New #define.
	(struct gcov_root): New.
	(__gcov_root): New declaration.
	(__gcov_dump_one): Declare.
	* libgcov-driver.c (gcov_list, gcov_dump_complete,
	run_accounted): Delete.
	(gcov_compute_histogram): Add LIST argument, adjust.
	(compute_summary): Adjust gcov_compute_histogram call.
	(gcov_do_dump): Not hidden, static in libgcov.
	(gcov_clear): Move  to interface.c.
	(__gcov_dump_one): New, broken out of ...
	(gcov_exit): ... here.  Make static.
	(__gcov_root): New.
	(__gcov_init): Adjust.
	* libgcov-interface.c (gcov_clear, gcov_exit): Remove
	declarations.
	(__gcov_flush): Use __gcov_dump_one and __gcov_reset.
	(gcov_clear): Moved from driver.c.   Add LIST argument.
	(__gcov_reset): Adjust for changed interfaces.
	(__gcov_fork): Remove local declaration of __gcov_flush_mx.

From-SVN: r213719
2014-08-07 18:02:06 +00:00
John David Anglin 8bd8ef50e4 pr57233.c: Add -fno-common option on hppa*-*-hpux*.
* gcc.dg/pr57233.c: Add -fno-common option on hppa*-*-hpux*.
	* c-c++-common/pr50459.c: Likewise.

From-SVN: r213717
2014-08-07 17:49:08 +00:00
Jonathan Wakely d0ef19a0b2 stl_list.h (_List_base::_List_base(_List_base&&)): Optimize.
* include/bits/stl_list.h (_List_base::_List_base(_List_base&&)):
	Optimize.
	* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
	Adjust dg-error line number.
	* testsuite/23_containers/list/requirements/dr438/constructor_1_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/constructor_2_neg.cc:
	Likewise.
	* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
	Likewise.

From-SVN: r213716
2014-08-07 18:25:13 +01:00
Kyrylo Tkachov 16918afd48 [ARM] Delete f_sels, f_seld types, use fcsel instead.
* config/arm/arm.md (*cmov<mode>): Set type attribute to fcsel.
	* config/arm/types.md (f_sels, f_seld): Delete.

From-SVN: r213713
2014-08-07 14:30:01 +00:00
Kyrylo Tkachov a636bb4062 [AArch64] Restrict usage of FP/SIMD registers for TImode reload and absdi2 patterns for non-float/simd targets.
* config/aarch64/aarch64.md (absdi2): Set simd attribute.
	(aarch64_reload_mov<mode>): Predicate on TARGET_FLOAT.
	(aarch64_movdi_<mode>high): Likewise.
	(aarch64_mov<mode>high_di): Likewise.
	(aarch64_movdi_<mode>low): Likewise.
	(aarch64_mov<mode>low_di): Likewise.
	(aarch64_movtilow_tilow): Likewise.
	Add comment explaining usage of fp,simd attributes and of
	TARGET_FLOAT and TARGET_SIMD.

From-SVN: r213712
2014-08-07 14:27:59 +00:00
Ian Bolton c747993a62 [AArch64] Use MOVN to generate 64-bit negative immediates where sensible
* config/aarch64/aarch64.c (aarch64_expand_mov_immediate):
	Use MOVN when one of the half-words is 0xffff.

Co-Authored-By: Kyrylo Tkachov <kyrylo.tkachov@arm.com>

From-SVN: r213711
2014-08-07 13:42:22 +00:00
Marat Zakirov 4da2eb985b thumb1.md (*thumb1_movqi_insn): Copy of thumb1_movhi_insn.
2014-08-07  Marat Zakirov  <m.zakirov@samsung.com>

	* config/arm/thumb1.md (*thumb1_movqi_insn): Copy of thumb1_movhi_insn.

From-SVN: r213710
2014-08-07 13:29:07 +00:00
Maxim Kuvyrkov 4bd12f3d25 Add statistical printout of rank_for_schedule decisions
* haifa-sched.c (SCHED_SORT): Delete.  Macro used exactly once.
	(enum rfs_decition:RFS_*): New constants wrapped in an enum.
	(rfs_str): String corresponding to RFS_* constants.
	(rank_for_schedule_stats_t): New typedef.
	(rank_for_schedule_stats): New static variable.
	(rfs_result): New static function.
	(rank_for_schedule): Track statistics for deciding heuristics.
	(rank_for_schedule_stats_diff, print_rank_for_schedule_stats): New
	static functions.
	(ready_sort): Use them for debug printouts.
	(schedule_block): Init statistics state.  Print statistics on
	rank_for_schedule decisions.

From-SVN: r213709
2014-08-07 11:16:29 +00:00
Maxim Kuvyrkov 88366b18d6 Fix INSN_TICK heuristic for SCHED_PRESSURE
* haifa-sched.c (rank_for_schedule): Fix INSN_TICK-based heuristics.

From-SVN: r213708
2014-08-07 11:16:16 +00:00
Petr Murzin 81051ff669 avx512f-vfixupimmpd-2.c: Include float.h instead of values.h, change MAXDOUBLE for DBL_MAX.
gcc/testsuite
	* gcc.target/i386/avx512f-vfixupimmpd-2.c: Include float.h instead of
	values.h, change MAXDOUBLE for DBL_MAX.
	* gcc.target/i386/avx512f-vfixupimmsd-2.c: Ditto.
	* gcc.target/i386/avx512f-vfixupimmps-2.c: Include float.h instead of
	values.h, change MAXFLOAT for FLT_MAX.
	* gcc.target/i386/avx512f-vfixupimmss-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermi2d-2.c: Do not include values.h.
	* gcc.target/i386/avx512f-vpermi2pd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermi2ps-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermi2q-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermt2d-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermt2pd-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermt2ps-2.c: Ditto.
	* gcc.target/i386/avx512f-vpermt2q-2.c: Ditto.

From-SVN: r213706
2014-08-07 10:57:39 +00:00
Ilya Tocar 9d04ba2937 sse.md (vec_extract_lo_<mode><mask_name>): Fix constraint.
gcc/
	* config/i386/sse.md (vec_extract_lo_<mode><mask_name>): Fix
	constraint.

From-SVN: r213704
2014-08-07 10:52:13 +00:00
Trevor Saunders 39c8aaa4bf convert the rest of the users of pointer_map to hash_map
gcc/

	* hash-map.h (default_hashmap_traits): Adjust overloads of hash
	function to not conflict.
	* alias.c, cfgexpand.c, dse.c, except.h, gimple-expr.c,
	gimple-ssa-strength-reduction.c, gimple-ssa.h, ifcvt.c,
	lto-streamer-out.c, lto-streamer.h, tree-affine.c, tree-affine.h,
	tree-predcom.c, tree-scalar-evolution.c, tree-ssa-loop-im.c,
	tree-ssa-loop-niter.c, tree-ssa.c, value-prof.c: Use hash_map instead
	of pointer_map.

gcc/cp/

	* cp-tree.h, pt.c: Use hash_map instead of pointer_map.

gcc/lto/

	* lto-partition.c, lto.c: Use hash_map instead of pointer_map.

From-SVN: r213703
2014-08-07 10:44:14 +00:00
Kirill Yukhin 66b5e890ec gcc/testsuite
* Add forgotten file.

From-SVN: r213702
2014-08-07 09:59:34 +00:00
Kyrylo Tkachov 60c2020d0d Remove arm-specific -march in test.
* gcc.dg/pr61756.c: Remove arm-specific dg-options.

From-SVN: r213701
2014-08-07 08:31:07 +00:00
Marek Polacek 044331a86c fold-const.c (fold_binary_loc): Add folding of (PTR0 - (PTR1 p+ A) -> (PTR0 - PTR1) - A.
* fold-const.c (fold_binary_loc): Add folding of 
	(PTR0 - (PTR1 p+ A) -> (PTR0 - PTR1) - A.
c/
	* c-typeck.c (pointer_diff): Remove P - (P + CST) optimization.
testsuite/
	* gcc.dg/fold-reassoc-3.c: New test.

From-SVN: r213700
2014-08-07 08:12:04 +00:00
Ilya Enkovich ce597aedd7 elfos.h (ASM_DECLARE_OBJECT_NAME): Use decl size instead of type size.
gcc/
	* config/elfos.h (ASM_DECLARE_OBJECT_NAME): Use decl size
	instead of type size.
	(ASM_FINISH_DECLARE_OBJECT): Likewise.

gcc/testsuite/
	* gcc.target/i386/struct-size.c: New.

From-SVN: r213699
2014-08-07 08:04:55 +00:00
Tom de Vries ddccb16a72 Remove duplicate ChangeLog entries
From-SVN: r213697
2014-08-07 07:41:33 +00:00
Marat Zakirov 0a2938aee4 thumb1.md (*thumb1_movhi_insn): Handle stack pointer.
2014-08-07  Marat Zakirov  <m.zakirov@samsung.com>

	* config/arm/thumb1.md (*thumb1_movhi_insn): Handle stack pointer.
	(*thumb1_movqi_insn): Likewise.
	* config/arm/thumb2.md (*thumb2_movhi_insn): Likewise.

From-SVN: r213695
2014-08-07 07:34:33 +00:00
Tom de Vries 87db77bb25 Remove cproj-fails-with-broken-glibc.c
2014-08-07  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/cproj-fails-with-broken-glibc.c: Remove test.
	* lib/target-supports.exp (check_effective_target_glibc)
	(check_effective_target_glibc_2_12_or_later)
	(check_effective_target_glibc_2_11_or_earlier): Remove proc.

	* doc/sourcebuild.texi (glibc, glibc_2_12_or_later)
	(glibc_2_11_or_earlier): Remove effective-target keywords.

From-SVN: r213694
2014-08-07 07:22:35 +00:00
Tom de Vries b85e2cb05e For cproj test-case, use glibc version xfail
2014-08-04  Tom de Vries  <tom@codesourcery.com>

	* gcc.dg/cproj-fails-with-broken-glibc.c: Use xfail for broken glibc
	version instead of required-target.
	* lib/target-supports.exp
	(check_effective_target_not_glibc_2_11_or_earlier): Replace by ...
	(check_effective_target_glibc_2_11_or_earlier): ... this.

	* doc/sourcebuild.texi (glibc, glibc_2_12_or_later)
	(glibc_2_11_or_earlier): Document effective-target keywords.

From-SVN: r213693
2014-08-07 07:22:24 +00:00
Kugan Vivekanandarajah 8a17543b56 arm.c (bdesc_2arg): Fix typo.
gcc/
2014-08-07  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* config/arm/arm.c (bdesc_2arg): Fix typo.
	(arm_atomic_assign_expand_fenv): Remove The default implementation.

From-SVN: r213692
2014-08-07 06:22:05 +00:00
Zhenqiang Chen b88fe5e918 tree-ssa-loop-ivopts.c (get_address_cost): Try aligned offset.
ChangeLog
2014-08-07  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* tree-ssa-loop-ivopts.c (get_address_cost): Try aligned offset.

testsuite/ChangeLog
2014-08-07  Zhenqiang Chen  <zhenqiang.chen@arm.com>

	* gcc.target/arm/get_address_cost_aligned_max_offset.c: New test.

From-SVN: r213691
2014-08-07 04:54:06 +00:00
Jason Merrill c0014b079f init.c (build_vec_init): Fix constant initialization of trailing elements.
* init.c (build_vec_init): Fix constant initialization of
	trailing elements.
	(build_value_init_noctor): Call maybe_constant_init.
	* semantics.c (maybe_constant_init): See through EXPR_STMT and
	conversion to void.

From-SVN: r213690
2014-08-06 21:44:40 -04:00
Jason Merrill ced2fb085c re PR c++/60417 ([DR 1518] Bogus error on C++03 aggregate initialization)
PR c++/60417
	* init.c (build_vec_init): Reorganize earlier change a bit.

From-SVN: r213689
2014-08-06 21:44:11 -04:00
Jason Merrill 5fb4d142f0 re PR c++/61994 (constexpr vector array ICE)
PR c++/61994
	* init.c (build_vec_init): Leave atype an ARRAY_TYPE
	if we're just returning an INIT_EXPR.

From-SVN: r213688
2014-08-06 21:44:06 -04:00
Jason Merrill d06a312a4f pt.c (check_explicit_specialization): Don't test DECL_DECLARED_INLINE_P for a variable template.
* pt.c (check_explicit_specialization): Don't test
	DECL_DECLARED_INLINE_P for a variable template.

Co-Authored-By: Braden Obrzut <admin@maniacsvault.net>

From-SVN: r213687
2014-08-06 21:43:58 -04:00
GCC Administrator 3b024f233d Daily bump.
From-SVN: r213686
2014-08-07 00:16:29 +00:00
Paolo Carlini 81caef48c8 re PR c++/43906 (missing warnings the comparison between an address with a null pointer constant)
/cp
2014-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43906
	* typeck.c (cp_build_binary_op): Extend to more cases the
	-Waddress warning.

/testsuite
2014-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/43906
	* g++.dg/warn/Waddress-1.C: New.

From-SVN: r213682
2014-08-06 19:09:08 +00:00
Maciej W. Rozycki c5ff29dae8 * gcc.dg/pr44194-1.c: Remove an extraneous brace.
From-SVN: r213677
2014-08-06 16:11:21 +00:00
Vladimir Makarov f50d71ec0f re PR debug/61923 (-fcompare-debug errors while building Linux kernel.)
2014-08-06  Vladimir Makarov  <vmakarov@redhat.com>

	PR debug/61923
	* haifa-sched.c (advance_one_cycle): Fix dump.
	(schedule_block): Don't advance cycle if we are already at the
	beginning of the cycle.

2014-08-06  Vladimir Makarov  <vmakarov@redhat.com>

	PR debug/61923
	* gcc.target/i386/pr61923.c: New test.

From-SVN: r213675
2014-08-06 15:40:26 +00:00
Martin Jambor 9d6171dce1 re PR ipa/61393 ([trans-mem] O3 optimization level constant propagation problem)
2014-08-06  Martin Jambor  <mjambor@suse.cz>

	PR ipa/61393
	* cgraphclones.c (cgraph_node::create_clone): Also copy tm_clone.

From-SVN: r213666
2014-08-06 15:59:18 +02:00
Richard Biener b12c44e901 re PR lto/62034 (ICE for big statically initialized arrays compiled with LTO)
2014-08-06  Richard Biener  <rguenther@suse.de>

	PR lto/62034
	* lto-streamer-in.c (lto_input_tree_1): Assert we do not read
	SCCs here.
	(lto_input_tree): Pop SCCs here.

From-SVN: r213664
2014-08-06 13:53:09 +00:00
Richard Biener abf3045448 re PR bootstrap/61320 (ICE in jcf-parse.c:1622 (parse_class_file)
2014-08-06  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/61320
	* tree-ssa-loop-ivopts.c (may_be_unaligned_p): Properly
	handle misaligned loads.

From-SVN: r213661
2014-08-06 11:41:13 +00:00
Alan Lawrence f901401e53 [PATCH AArch64] Prefer dup to zip for vec_perm_const; enable dup for bigendian; add testcase.
gcc/:
	* config/aarch64/aarch64.c (aarch64_evpc_dup): Enable for bigendian.
	(aarch64_expand_vec_perm_const): Check for dup before zip.

gcc/testsuite:

	* gcc.target/aarch64/vdup_n_2.c: New test.

From-SVN: r213659
2014-08-06 10:17:05 +00:00
Maciej W. Rozycki 06e105fc9b pr44194-1.c: Also exclude powerpc*-*-linux*, except if powerpc_elfv2.
* gcc.dg/pr44194-1.c: Also exclude powerpc*-*-linux*, except if
	powerpc_elfv2.

From-SVN: r213657
2014-08-06 10:02:37 +00:00
Jakub Jelinek 67fb7be7b8 re PR rtl-optimization/61801 (sched2 miscompiles syscall sequence with -g)
PR rtl-optimization/61801
	* gcc.target/i386/pr61801.c: Rewritten.

From-SVN: r213652
2014-08-06 10:40:19 +02:00
Kyrylo Tkachov 4aa81c2e6a [AArch64] Use REG_P and CONST_INT_P instead of GET_CODE + comparison.
* config/aarch64/aarch64.c (aarch64_classify_address): Use REG_P and
	CONST_INT_P instead of GET_CODE and compare.
	(aarch64_select_cc_mode): Likewise.
	(aarch64_print_operand): Likewise.
	(aarch64_rtx_costs): Likewise.
	(aarch64_simd_valid_immediate): Likewise.
	(aarch64_simd_check_vect_par_cnst_half): Likewise.
	(aarch64_simd_emit_pair_result_insn): Likewise.

From-SVN: r213651
2014-08-06 08:32:07 +00:00
GCC Administrator 0483b3636d Daily bump.
From-SVN: r213649
2014-08-06 00:16:32 +00:00
David Malcolm 17ef89b220 gdbhooks.py: add "break-on-pass" command
gcc/
2014-08-05  David Malcolm  <dmalcolm@redhat.com>

        * gdbhooks.py (find_gcc_source_dir): New helper function.
        (class PassNames): New class, locating and parsing passes.def.
        (class BreakOnPass): New command "break-on-pass".

From-SVN: r213646
2014-08-05 21:01:47 +00:00
Trevor Saunders 6ef6945c9c fix pr62009 use after free in redirect_edge_var_map_dup
The change to get the entry for the old edge before inserting the new
one was incorrect because if inserting the new one resized the table
then the pointer to the entry for the old one would become invalid.

gcc/

	* tree-ssa.c (redirect_edge_var_map_dup): insert newe before
	getting olde.

From-SVN: r213644
2014-08-05 19:52:08 +00:00
Eric Botcazou fa12e57e0c Fix more typos.
From-SVN: r213643
2014-08-05 18:35:50 +00:00
Eric Botcazou 7bd4381cd0 Fix typos.
From-SVN: r213642
2014-08-05 18:29:21 +00:00
Braden Obrzut 4a4f287dc1 Implement constexpr variable templates
Implement constexpr variable templates
	* decl.c (grokvardecl): Handle specializations of variable templates.
	(grokdeclarator): Handle variable template id expressions and NULL_TREE
	return from grokvardecl.
	* decl2.c (check_member_template): Allow declaration of template member
	variables.
	* parser.c (cp_parser_template_id): Build a TEMPLATE_ID_EXPR for
	variable templates.
	* pt.c (check_template_variable): Accept variable temploids at
	non-class scope.
	(push_template_decl_real): The current instantiation of a template
	can be a VAR_DECL.
	(determine_specialization): Accept variable templates.
	(check_explicit_specialization): Handle and check for malformed
	variable template specializations.
	(lookup_template_variable): New.
	(tsubst_decl): Handle variable template specializations.
	(do_decl_instantiation): Handle template variables.
	(instantiate_decl): Handle template variables.
	* semantics.c (finish_template_variable): New.
	(finish_id_expression): Instantiate variable templates.
	* cp-tree.h (variable_template_p): New.

From-SVN: r213641
2014-08-05 14:24:06 -04:00
Edmar Wienskoski d406ae470c Fixed text formatting
From-SVN: r213640
2014-08-05 14:44:36 +00:00