Commit Graph

136862 Commits

Author SHA1 Message Date
Ian Lance Taylor
4729d7726b re PR go/65349 (go tool crashes, can't compile go code on 32bit linux systems)
PR go/65349
runtime: Don't call malloc from __go_file_line callback.

When crashing, we call runtime_printcreatedby which calls
__go_file_line which used to call the Go malloc.  If we are
crashing due to a signal due to heap corruption of some sort,
the GO malloc lock might already be held, leading to a crash
within a crash.  Avoid that by assuming that the libbacktrace
strings will stick around, as we already do in go-callers.c.

From-SVN: r221291
2015-03-09 23:40:58 +00:00
Alan Modra
864396ff9e re PR target/65286 (When building on powerpc64le-unknown-linux-gnu, --disable-multilib must be used)
PR target/65286
	* config.gcc (powerpc*-*-linux*): Arrange for powerpc64le-linux
	to be single-arch by default.  Set cpu_is_64bit for powerpc64
	given --with-cpu=native.
	* config/rs6000/t-fprules: Do not set default MULTILIB vars.
	* config/rs6000/t-linux (MULTIARCH_DIRNAME): Support powerpc64
	and powerpc64le.
	* config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Test
	rs6000_isa_flags rather than TARGET_64BIT.

From-SVN: r221288
2015-03-10 09:48:57 +10:30
Yoshinori Sato
711d91e13f t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.
* config/sh/t-linux (MULTILIB_EXCEPTIONS): Define for m2a cases.


Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>

From-SVN: r221287
2015-03-09 23:14:19 +00:00
Jakub Jelinek
9112885a6d re PR lto/65361 (LTO: tree check: expected tree that contains ‘decl minimal’ structure, have ‘tree_binfo’ in add_type_duplicate, at ipa-devirt.c:1509)
PR lto/65361
	* ipa-devirt.c (add_type_duplicate): Don't use DECL_CONTEXT
	on a TREE_BINFO, instead use BINFO_TYPE.

From-SVN: r221286
2015-03-09 21:19:34 +01:00
Jason Merrill
a2f259ef04 re PR c++/65339 (C++ ICE with lambda and no capture list)
PR c++/65339
	* call.c: Don't call maybe_resolve_dummy when calling a constructor.

From-SVN: r221285
2015-03-09 15:59:54 -04:00
Jakub Jelinek
01177669b2 re PR c/65120 (Wlogical-not-parentheses should not warn about double exclamation !!)
PR c/65120
	* c-typeck.c (parser_build_binary_op): Don't warn for
	!!x == y or !b == y where b is _Bool.

	* parser.c (cp_parser_binary_expression): Don't warn for
	!!x == y or !b == y where b is bool.

	* c-c++-common/pr49706.c: Adjust tests for not warning
	about !!x == y or !b == y where b is boolean, and add
	some further tests.
	* c-c++-common/pr62199-2.c: Likewise.

From-SVN: r221284
2015-03-09 19:26:52 +01:00
Jakub Jelinek
ee876e5915 re PR sanitizer/63958 (bootstrap failure in the sanitizer libs on sparc-linux-gnu)
PR sanitizer/63958
	Reapply:
	2014-10-14  David S. Miller  <davem@davemloft.net>

	* sanitizer_common/sanitizer_platform_limits_linux.cc (time_t):
	Define at __kernel_time_t, as needed for sparc.
	(struct __old_kernel_stat): Don't check if __sparc__ is defined.
	* libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
	(__sanitizer): Define struct___old_kernel_stat_sz,
	struct_kernel_stat_sz, and struct_kernel_stat64_sz for sparc.
	(__sanitizer_ipc_perm): Adjust for sparc targets.
	(__sanitizer_shmid_ds): Likewsie.
	(__sanitizer_sigaction): Likewise.
	(IOC_SIZE): Likewsie.

From-SVN: r221283
2015-03-09 19:25:28 +01:00
Ramana Radhakrishnan
578c2339f0 Fix PR number for 65121 in Changelog.
PR target/65121

The commit that fixed this was 

https://gcc.gnu.org/ml/gcc-cvs/2015-03/msg00140.html

From-SVN: r221282
2015-03-09 15:19:20 +00:00
Richard Biener
e080863881 re PR ipa/65270 (issues with merging memory accesses from different code paths)
2015-03-09  Richard Biener  <rguenther@suse.de>

	PR middle-end/65270
	* tree-core.h (enum operand_equal_flag): Add OEP_ADDRESS_OF.
	* fold-const.c (operand_equal_p): When recursing for ADDR_EXPRs
	operand set OEP_ADDRESS_OF.  Clear it when recursing to non-bases
	of that.  When comparing dereferences compare alignment.
	When comparing MEM_REFs or TARGET_MEM_REFs compare dependence info.

	* gcc.dg/torture/pr65270-1.c: New testcase.
	* gcc.dg/torture/pr65270-2.c: Likewise.

From-SVN: r221281
2015-03-09 13:54:28 +00:00
Jonathan Wakely
d2e0c00b8c re PR libstdc++/64467 (28_regex/traits/char/isctype.cc and wchar_t/isctype.cc)
PR libstdc++/64467
	* testsuite/28_regex/traits/char/isctype.cc: Don't test newline
	for newlib targets. Really fix mixed line-endings this time.

From-SVN: r221279
2015-03-09 12:47:51 +00:00
Marek Polacek
802ac282f8 c-convert.c (convert): Make use of do_ubsan_in_current_function.
* c-convert.c (convert): Make use of do_ubsan_in_current_function.
	* c-decl.c (grokdeclarator): Likewise.
	* c-typeck.c (build_binary_op): Likewise.

From-SVN: r221278
2015-03-09 11:57:33 +00:00
Jan Hubicka
e0d514da7b ipa-inline-analysis.c (check_callers): Check node->can_remove_if_no_direct_calls_and_refs_p.
* ipa-inline-analysis.c (check_callers): Check
	node->can_remove_if_no_direct_calls_and_refs_p.
	(growth_likely_positive): Reorganize to call
	can_remove_if_no_direct_calls_p later.
	* cgraph.h (will_be_removed_from_program_if_no_direct_calls_p,
	will_be_removed_from_program_if_no_direct_calls_p): Add 
	will_inline parameter.
	* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p,
	cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
	Handle inliner case correctly.

From-SVN: r221277
2015-03-09 04:53:54 +00:00
Thomas Preud'homme
68ca4ac90b re PR middle-end/63743 (Thumb1: big regression for float operators by r216728)
2015-03-09  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR tree-optimization/63743
    * cfgexpand.c (reorder_operands): Also reorder if only second operand
    had its definition forwarded by TER.

    gcc/testsuite/
    PR tree-optimization/63743
    * gcc.dg/pr63743.c: New test.

From-SVN: r221276
2015-03-09 01:31:42 +00:00
Jan Hubicka
609570b49e re PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging: in types_same_for_odr, at ipa-devirt.c:465)
PR lto/65316
	* ipa-utils.h (types_odr_comparable): Add strict argument.
	* ipa-devirt.c: Fix whitespace;
	(odr_hasher): Remove.
	(odr_name_hasher, odr_vtable_hasher): New hashers.
	(can_be_name_hashed_p): New predicate.
	(hash_type_name): remove.
	(hash_odr_name): New.
	(odr_name_hasher::hash): new.
	(can_be_vtable_hashed_p): New.
	(hash_odr_vtable): New.
	(odr_vtable_hasher::hash): New.
	(types_same_for_odr): Add strict parameter.
	(types_odr_comparable): Likewise.
	(odr_name_hasher::equal): New.
	(odr_vtable_hasher::equal): New.
	(odr_name_hasher::remove): New.
	(odr_hash_type): Change to hash_table<odr_name_hasher>.
	(odr_vtable_hash_type): New.
	(odr_vtable_hash): New.
	(odr_subtypes_equivalent_p): Do strict comparsion.
	(add_type_duplicate): Merge type names; cleanup; avoid type
	duplicates.
	(register_odr_type): Initialize vtable hash.
	(build_type_inheritance_graph): Likewise
	(get_odr_type): Reorg to use two hashes.
	(dump_possible_polymorphic_call_targets): Move sanity check after debug
	output.
	(ipa_devirt): Dump type_inheritance_graph.
	(types_same_for_odr): Add strict mode.
	* g++.dg/lto/pr65316_0.C: New testcase.
	* g++.dg/lto/pr65316_1.C: New testcase.

From-SVN: r221275
2015-03-09 00:29:14 +00:00
GCC Administrator
e1e8e374f4 Daily bump.
From-SVN: r221274
2015-03-09 00:16:14 +00:00
John David Anglin
e9d087626d re PR target/62247 (FAIL: g++.dg/abi/anon3.C -std=c++98/9 scan-assembler .weak(_definition))
PR target/62247
	* g++.dg/abi/anon3.C: Skip failing scan-assembler checks on
	hppa*-*-hpux*.
	* g++.dg/abi/rtti3.C: Likewise.

From-SVN: r221271
2015-03-08 23:46:34 +00:00
John David Anglin
a5bfe3f9a7 pr63621.C: Add dg-require-effective-target named_sections.
* g++.dg/ipa/pr63621.C: Add dg-require-effective-target named_sections.

From-SVN: r221270
2015-03-08 23:30:47 +00:00
Jan Hubicka
7185ec2cb4 varasm.c (function_section_1): Use definition_alignment.
* varasm.c (function_section_1): Use definition_alignment.
	(assemble_start_function): Likewise.
	(emit_local): likewise.
	(build_constant_desc): Likewsie.
	(output_constant_def_contents): Likewise.
	(place_block_symbol): Likewise.
	(output_object_block): Likewise.

From-SVN: r221269
2015-03-08 23:27:13 +00:00
Jan Hubicka
428f0c67ee re PR ipa/65334 (r221099 caused: FAIL: gfortran.fortran-torture/execute/in-pack.f90 execution, -O2 -ftree-vectorize -msse2)
PR ipa/65334
	* cgraph.h (symtab_node): Add definition_alignment,
	can_increase_alignment_p and increase_alignment.
	* symtab.c (symtab_node::can_increase_alignment_p,
	increase_alignment_1, symtab_node::increase_alignment,
	symtab_node::definition_alignment): New.
	* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Use
	can_increase_alignment_p.
	* tree-vectorizer.c (increase_alignment): Use increase_alignment.
	* tree-vect-stmts.c (ensure_base_align): Likewise.

From-SVN: r221268
2015-03-08 23:12:25 +00:00
John David Anglin
fb460c3da0 re PR target/62251 (FAIL: gfortran.dg/quad_2.f90 execution test)
PR target/62251
	* gfortran.dg/quad_2.f90: xfail hppa*-*-hpux*.

From-SVN: r221267
2015-03-08 22:58:52 +00:00
John David Anglin
11403457ec signbit-sa.c: Add dg-require-effective-target c99_runtime
* gcc.dg/signbit-sa.c: Add dg-require-effective-target c99_runtime

From-SVN: r221266
2015-03-08 22:45:32 +00:00
John David Anglin
cd6e6ce573 pr64307.c: Add target c99_runtime.
* gcc.dg/ipa/pr64307.c: Add target c99_runtime.

From-SVN: r221265
2015-03-08 22:32:57 +00:00
John David Anglin
26fb6f1f58 ipa-icf-34.c: Add dg-require-alias.
* gcc.dg/ipa/ipa-icf-34.c: Add dg-require-alias.

From-SVN: r221264
2015-03-08 22:21:16 +00:00
David Edelsohn
34e72ece07 Add missing PR target/59828 to ChangeLog entry.
From-SVN: r221263
2015-03-08 09:40:42 -04:00
Mikael Morin
511820a8dc re PR fortran/60898 (model compile error with gfortran 4.7 and gcc 4.9)
PR fortran/60898
fortran/
        * resolve.c (resolve_symbol): Check that the symbol found by
        name lookup really is the current symbol being resolved.
testsuite/
        * gfortran.dg/entry_20.f90: New.

From-SVN: r221262
2015-03-08 11:52:51 +00:00
GCC Administrator
9e09e4ac1c Daily bump.
From-SVN: r221261
2015-03-08 00:16:18 +00:00
Jan Hubicka
a7384b1b02 re PR lto/65316 (LTO: Uninitialized memory / ICE with -g -fno-lto-odr-type-merging: in types_same_for_odr, at ipa-devirt.c:465)
PR ipa/65316
	* tree.c (free_lang_data_in_type): Be sure to keep BINFO_VTABLE
	when outputting debug.

From-SVN: r221258
2015-03-07 20:33:58 +00:00
Oleg Endo
e291927919 re PR target/65153 ([SH][4.9 Regression] "insn does not satisfy its constraints" when compiling libmcrypt)
gcc/testsuite/
	PR target/65153
	* gcc.c-torture/compile/pr65153.c: New.

From-SVN: r221257
2015-03-07 19:35:22 +00:00
Oleg Endo
af68c1b73c re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compiling protobuf on sh4)
gcc/testsuite/
	PR target/65249
	* g++.dg/torture/pr65249.C: New.

From-SVN: r221256
2015-03-07 16:12:41 +00:00
H.J. Lu
0d797e0f6f Use long long for uint64_t/int64_t
* gcc.target/i386/pr45685.c (uint64_t): Replace long with long
	long.
	(int64_t): Likewise.

From-SVN: r221255
2015-03-07 05:31:00 -08:00
Joseph Myers
2e58ed3087 * de.po: Update.
From-SVN: r221254
2015-03-07 01:14:18 +00:00
GCC Administrator
5f34c28658 Daily bump.
From-SVN: r221253
2015-03-07 00:16:12 +00:00
Marek Polacek
04fd785e38 re PR sanitizer/65280 (-fsanitize=bounds does not detect out-of-bounds access)
PR sanitizer/65280
	* doc/invoke.texi: Update description of -fsanitize=bounds.

	* c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
	before trying to figure out whether we have a flexible array member.

	* c-c++-common/ubsan/bounds-1.c: Add testing of flexible array
	member-like arrays.
	* c-c++-common/ubsan/bounds-8.c: New test.
	* c-c++-common/ubsan/bounds-9.c: New test.
	* gcc.dg/ubsan/bounds-2.c: New test.

Co-Authored-By: Martin Uecker <uecker@eecs.berkeley.edu>

From-SVN: r221250
2015-03-06 23:44:56 +00:00
Aldy Hernandez
a78cbe2976 ptree.c (cxx_print_lambda_node): New.
* ptree.c (cxx_print_lambda_node): New.
	(cxx_print_xnode): Handle LAMBDA_EXPR.

From-SVN: r221249
2015-03-06 21:58:31 +00:00
Martin Sebor
3ffa78014e re PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan-tree-dump-times slp2" basic block vectorized using SLP" 1)
2015-03-05  Martin Sebor  <msebor@redhat.com>

	* PR testsuite/63175
	* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c (main1): Move
	checking of results into main to prevent it from getting optimized
	away.
	* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: New test.

From-SVN: r221248
2015-03-06 11:43:24 -07:00
Bernd Edlinger
74d3531523 dg-extract-results.sh: Check that the necessary python modules exist.
2015-03-06  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * dg-extract-results.sh: Check that the necessary python modules exist.

From-SVN: r221247
2015-03-06 18:35:15 +00:00
Wilco Dijkstra
268cb4b373 Remove inefficient branchless conditional negate optimization
2015-03-06  Wilco Dijkstra  <wdijkstr@arm.com>

  gcc/
    * tree-ssa-phiopt.c (neg_replacement): Remove.
    (tree_ssa_phiopt_worker): Remove negate optimization.

  gcc/testsuite/
    * gcc.dg/tree-ssa/pr45685.c: Move to gcc.target/i386.
    * gcc.target/aarch64/csneg-1.c (test_csneg_cmp): New test.
    * gcc.target/i386/pr45685.c: Moved test, check for conditional move on x64.

From-SVN: r221246
2015-03-06 16:35:30 +00:00
Ian Lance Taylor
c271e224c2 libgo: Upgrade to Go 1.4.2 release.
From-SVN: r221245
2015-03-06 16:19:05 +00:00
Jan Hubicka
81b0d9065c re PR lto/65302 (LTO: ICE internal compiler error: verify_flow_info failed)
PR ipa/65302
	* value-prof.c (gimple_ic): Pure dead eh edges when needed.
	* g++.dg/lto/pr65302_1.C: New testcase.
	* g++.dg/lto/pr65302_0.C: New testcase.

From-SVN: r221244
2015-03-06 16:12:43 +00:00
James Greenhalgh
2c7f8ba555 [ARM testsuite obvious] Fixup atomic-comp-swap-release-acquire.c to not use ICF
gcc/

	* gcc.target/arm/atomic-comp-swap-release-acquire.c: Add
	-fno-ipa-icf to dg-options.

From-SVN: r221243
2015-03-06 16:03:38 +00:00
Kirill Yukhin
a6e8abb9d5 MAINTAINERS (CPU Port Maintainers): Add myself i386 vector ISA extns mantainer.
/
	* MAINTAINERS (CPU Port Maintainers): Add myself
	i386 vector ISA extns mantainer.

From-SVN: r221238
2015-03-06 14:49:03 +00:00
Richard Biener
87d0d6c40a re PR middle-end/64928 (Inordinate cpu time and memory usage in "phase opt and generate" with -ftest-coverage -fprofile-arcs)
2015-03-06  Richard Biener  <rguenther@suse.de>

	PR middle-end/64928
	* tree-ssa-live.h (struct tree_live_info_d): Add livein_obstack
	and liveout_obstack members.
	(calculate_live_on_exit): Remove.
	(calculate_live_ranges): Change declaration.
	* tree-ssa-live.c (liveness_bitmap_obstack): Remove global var.
	(new_tree_live_info): Adjust.
	(calculate_live_ranges): Delete livein when not wanted.
	(calculate_live_ranges): Do not initialize liveness_bitmap_obstack.
	Deal with partly deleted live info.
	(loe_visit_block): Remove temporary bitmap by using
	bitmap_ior_and_compl_into.
	(live_worklist): Adjust accordingly.
	(calculate_live_on_exit): Make static.
	* tree-ssa-coalesce.c (coalesce_ssa_name): Tell calculate_live_ranges
	we do not need livein.

From-SVN: r221237
2015-03-06 12:34:28 +00:00
Jonathan Wakely
664e99eac4 future (future_error(error_code)): Construct base class with error_code's message.
* include/std/future (future_error(error_code)): Construct base
	class with error_code's message.
	* src/c++11/future.cc (future_error::what()): Do not call c_str() on
	temporary string.

From-SVN: r221236
2015-03-06 12:31:43 +00:00
Jonathan Wakely
7bfa4bc51e * real.c (real_from_string): Fix typo in assertion.
From-SVN: r221235
2015-03-06 12:05:38 +00:00
Alex Velenko
1dfc8b24aa ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of the patch.
2015-03-06  Alex Velenko  <alex.velenko@arm.com>

	* ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of
	the patch.

From-SVN: r221234
2015-03-06 11:10:45 +00:00
James Greenhalgh
4b1076d685 [AArch64 testsuite obvious] XFAIL c-c++-common/torture/aarch64-vect-lane-2.c
for -flto -fuse-linker-plugin


gcc/testsuite/

	* c-c++-common/torture/aarch64-vect-lane-2.c: Skip for LTO
	compiles.

From-SVN: r221233
2015-03-06 10:47:20 +00:00
Eric Botcazou
a4e2620666 c-ada-spec.c (dump_ada_double_name): Fix pasto.
* c-ada-spec.c (dump_ada_double_name): Fix pasto.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r221231
2015-03-06 10:15:03 +00:00
Ian Lance Taylor
aeb41dc5b6 compiler: Do not declare type switch variable outside case statements.
For expressions containing a TypeSwitchGuard with a short variable
declaration e.g. var := x.(type), the spec says that var is declared
at the beginning of the implicit block for each in each clause.
Previously, var was declared in the block for the switch statement
and each implicit block, which led to errors if the type case clause
referenced a type with a similar name as the declared variable.

Fixes golang/go#10047.

From-SVN: r221230
2015-03-06 00:27:32 +00:00
GCC Administrator
c4571e0e36 Daily bump.
From-SVN: r221229
2015-03-06 00:16:11 +00:00
Jan Hubicka
ab038a807d * ipa-icf.c (sem_variable::equals_wpa): Check FINAL flags.
From-SVN: r221226
2015-03-05 21:26:44 +00:00