1. 24 Nov, 2015 32 commits
    • fix PR67984: check for constants in rename map · ff17c262
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r230826
      Aditya Kumar committed
    • move all declarations to a same .h file · cf98f0f4
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r230825
      Aditya Kumar committed
    • DWARF: materialize subprogram renamings in Ada as imported declarations · caadda8e
      ... so that debugger users can reference them instead of the renamed
      subprograms.  This is in accordance with the DWARF specification: the
      section 3.2.3 (Imported (or Renamed) Declaration Entities) allows
      DW_TAG_imported_declaration DIEs to be used "as a general means to
      rename or provide an alias for an entity regardless of the context in
      which the importing declaration or the imported entity occur." (wording
      from the DWARFv3 and DWARFv4 specifications, allowed in DWARFv2).
      
      gcc/ada/ChangeLog:
      
      	* gcc-interface/utils.c (gnat_write_global_declarations): Output
      	debugging information for top-level imported declarations.
      
      gcc/ChangeLog:
      
      	* dwarf2out.c (gen_decl_die): Generate DW_TAG_imported_* instead
      	of DW_TAG_namespace for IMPORTED_DECL declarations.  Call
      	dwarf2out_imported_module_or_decl_1 for all DWARF versions as
      	this function already takes care of checking what it can emit.
      
      Bootstrapped, regtested and checked with GDB's testsuite on
      x86_64-linux.
      
      From-SVN: r230821
      Pierre-Marie de Rodat committed
    • [AArch64] Documentation fix for -fpic · 16a21ab3
      gcc/
      	* doc/invoke.texi (-fpic): Add the AArch64 limit.
      	(-fPIC): Add AArch64.
      
      From-SVN: r230819
      Szabolcs Nagy committed
    • re PR rtl-optimization/68392 (ICE: SIGSEGV in update_uses (fwprop.c:896) with -fno-checking) · f5c345fc
      	PR rtl-optimization/68392
      	* g++.dg/pr68392.C: New test.
      
      From-SVN: r230818
      Michael Matz committed
    • Allow pass_lim to run outside pass_tree_loop · 9c37629f
      2015-11-24  Tom de Vries  <tom@codesourcery.com>
      
      	* tree-ssa-loop-im.c (tree_ssa_lim): Make static.
      	(pass_lim::execute): Allow to run outside pass_tree_loop.
      
      From-SVN: r230815
      Tom de Vries committed
    • [PATCH][AArch64] Improve add immediate expansion · 4e55c7c3
      gcc/
      
      	* gcc/config/aarch64/aarch64.md (add<mode>3):
      	Block early expansion into 2 add instructions.
      	(add<mode>3_pluslong): New pattern to combine complex
      	immediates into 2 additions.
      
      From-SVN: r230814
      Wilco Dijkstra committed
    • rs6000: Fix for and_operand oversight (PR68332, PR67677) · 6b2f9bb6
      Calling rs6000_is_valid_and_mask on a reg instead of on a const_int is
      not a good idea, as PR68332 and PR67677 as well as testing with
      --enable-checking=yes,rtl show.  Fix this.
      
      
      	PR target/66217
      	PR target/67677
      	PR target/68332
      	* config/rs6000/predicates.md (and_operand): Check that the operand
      	is a const_int before calling rs6000_is_valid_and_mask.
      
      From-SVN: r230811
      Segher Boessenkool committed
    • Testcase for PR rtl-optimization/68381 · a4fb29bc
      	PR rtl-optimization/68381
      	* gcc.c-torture/execute/pr68381.c: New test.
      
      From-SVN: r230809
      Kyrylo Tkachov committed
    • Handle C++11 <math.h> overloads on Solaris 12 · ef3a7506
      	* acinclude.m4 (GLIBCXX_CHECK_MATH11_PROTO): New test.
      	* configure.ac: Use it.
      	* configure: Regenerate.
      	* config.h.in: Regenerate.
      
      	* include/c_global/cmath [__cplusplus >= 201103L]
      	(std::fpclassify): Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
      	(std::isfinite): Likewise.
      	(std::isinf): Likewise.
      	(std::isnan): Likewise.
      	(std::isnormal): Likewise.
      	(std::signbit): Likewise.
      	(std::isgreater): Likewise.
      	(std::isgreaterequal): Likewise.
      	(std::isless): Likewise.
      	(std::islessequal): Likewise.
      	(std::islessgreater): Likewise.
      	(std::isunordered): Likewise.
      	(std::acosh): Likewise.
      	(std::asinh): Likewise.
      	(std::atanh): Likewise.
      	(std::cbrt): Likewise.
      	(std::copysign): Likewise.
      	(std::erf): Likewise.
      	(std::erfc): Likewise.
      	(std::exp2): Likewise.
      	(std::expm1): Likewise.
      	(std::fdim): Likewise.
      	(std::fma): Likewise.
      	(std::fmax): Likewise.
      	(std::fmin): Likewise.
      	(std::hypot): Likewise.
      	(std::ilogb): Likewise.
      	(std::lgamma): Likewise.
      	(std::llrint): Likewise.
      	(std::llround): Likewise.
      	(std::log1p): Likewise.
      	(std::log2): Likewise.
      	(std::logb): Likewise.
      	(std::lrint): Likewise.
      	(std::lround): Likewise.
      	(std::nearbyint): Likewise.
      	(std::nextafter): Likewise.
      	(std::nexttoward): Likewise.
      	(std::remainder): Likewise.
      	(std::remquo): Likewise.
      	(std::rint): Likewise.
      	(std::round): Likewise.
      	(std::scalbln): Likewise.
      	(std::scalbn): Likewise.
      	(std::tgamma): Likewise.
      	(std::trunc): Likewise.
      	* include/tr1/cmath [_GLIBCXX_USE_C99_MATH_TR1] (std::tr1::acosh):
      	Wrap in !__CORRECT_ISO_CPP11_MATH_H_PROTO.
      	(std::tr1::asinh): Likewise.
      	(std::tr1::atanh): Likewise.
      	(std::tr1::cbrt): Likewise.
      	(std::tr1::copysign): Likewise.
      	(std::tr1::erf): Likewise.
      	(std::tr1::erfc): Likewise.
      	(std::tr1::exp2): Likewise.
      	(std::tr1::expm1): Likewise.
      	(std::tr1::fabs): Likewise.
      	(std::tr1::fdim): Likewise.
      	(std::tr1::fma): Likewise.
      	(std::tr1::fmax): Likewise.
      	(std::tr1::fmin): Likewise.
      	(std::tr1::hypot): Likewise.
      	(std::tr1::ilogb): Likewise.
      	(std::tr1::lgamma): Likewise.
      	(std::tr1::llrint): Likewise.
      	(std::tr1::llround): Likewise.
      	(std::tr1::log1p): Likewise.
      	(std::tr1::log2): Likewise.
      	(std::tr1::logb): Likewise.
      	(std::tr1::lrint): Likewise.
      	(std::tr1::lround): Likewise.
      	(std::tr1::nearbyint): Likewise.
      	(std::tr1::nextafter): Likewise.
      	(std::tr1::nexttoward): Likewise.
      	(std::tr1::remainder): Likewise.
      	(std::tr1::remquo): Likewise.
      	(std::tr1::rint): Likewise.
      	(std::tr1::scalbln): Likewise.
      	(std::tr1::scalbn): Likewise.
      	(std::tr1::tgamma): Likewise.
      	(std::tr1::trunc): Likewise.
      	(std::tr1::pow): Likewise.
      
      	* testsuite/26_numerics/headers/cmath/c99_classification_macros_c.cc:
      	Restrict dg-xfail-if, dg-excess-errors to *-*-solaris2.1[01]*.
      
      From-SVN: r230807
      Rainer Orth committed
    • [AArch64][v2] Improve comparison with complex immediates followed by branch/cset · 714e1b3b
      	* config/aarch64/aarch64.md (*condjump): Rename to...
      	(condjump): ... This.
      	(*compare_condjump<mode>): New define_insn_and_split.
      	(*compare_cstore<mode>_insn): Likewise.
      	(*cstore<mode>_insn): Rename to...
      	(cstore<mode>_insn): ... This.
      	* config/aarch64/iterators.md (CMP): Handle ne code.
      	* config/aarch64/predicates.md (aarch64_imm24): New predicate.
      
      	* gcc.target/aarch64/cmpimm_branch_1.c: New test.
      	* gcc.target/aarch64/cmpimm_cset_1.c: Likewise.
      
      From-SVN: r230805
      Kyrylo Tkachov committed
    • Move ptrace.h to appropriate place. · 9211bbb2
      libsanitizer/
      
      	* include/system/linux/asm/ptrace.h: Move to ...
      	* include/system/asm/ptrace.h: ... this.
      
      From-SVN: r230804
      Max Ostapenko committed
    • Fix PR68497 (ICE with -fno-checking) · db92ed36
      gcc/
      
      	PR target/68497
      	* config/i386/i386.c (output_387_binary_op): Fix assertion for
      	-fno-checking case.
      
      gcc/testsuite/
      
      	PR target/68497
      	* gcc.target/i386/pr68497.c: New test.
      
      From-SVN: r230803
      Mikhail Maltsev committed
    • remove val_ssa_equiv_hash_traits · 5205ae6e
      gcc/ChangeLog:
      
      2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* tree-ssa-uncprop.c (struct val_ssa_equiv_hash_traits): Remove.
      	(val_ssa_equiv_hash_traits::remove): Likewise.
      	(pass_uncprop::execute): Adjust.
      
      From-SVN: r230802
      Trevor Saunders committed
    • destroy values as well as keys when removing them from hash maps · 76b6ddbf
      gcc/ChangeLog:
      
      2015-11-24  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* hash-map-traits.h (simple_hashmap_traits ::remove): call
      	destructors on values that are being removed.
      	* mem-stats.h (hash_map): Pass type of values to
      	simple_hashmap_traits.
      	* tree-sra.c (sra_deinitialize): Remove work around for hash
      	maps not destructing values.
      	* genmatch.c (sinfo_hashmap_traits): Adjust.
      	* tree-ssa-uncprop.c (val_ssa_equiv_hash_traits): Likewise.
      
      From-SVN: r230801
      Trevor Saunders committed
    • [AARCH64][PATCH 3/3] Adding tests to check proper error reporting of out of... · cfa55545
      [AARCH64][PATCH 3/3] Adding tests to check proper error reporting of out
      of bounds accesses to vmulx_lane* NEON intrinsics
      
      gcc/testsuite/
      
      	* gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f32_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulx_lane_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulx_laneq_f32_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulx_laneq_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxd_lane_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxd_laneq_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxq_lane_f32_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxq_lane_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxq_laneq_f32_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxq_laneq_f64_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxs_lane_f32_indices_1.c:
      	New.
      	* gcc.target/aarch64/advsimd-intrinsics/vmulxs_laneq_f32_indices_1.c:
      	New.
      
      From-SVN: r230800
      Bilyan Borisov committed
    • [cfgloop] PR middle-end/68375: Restructure get_loop_body_in_bfs_order to handle… · 895548a5
      [cfgloop] PR middle-end/68375: Restructure get_loop_body_in_bfs_order to handle loops with only a header
      
      	PR middle-end/68375
      	* cfgloop.c (get_loop_body_in_bfs_order): Restructure loop to avoid
      	bogus assertion.
      
      	* gcc.dg/pr68375.c: New test.
      
      From-SVN: r230798
      Kyrylo Tkachov committed
    • re PR target/68483 (gcc 5.2: suboptimal code compared to 4.9) · 3788cfb5
      	PR target/68483
      	* tree-vect-generic.c (lower_vec_perm): If VEC_PERM_EXPR
      	is valid vec_shr pattern, don't lower it even if can_vec_perm_p
      	returns false.
      	* optabs.c (shift_amt_for_vec_perm_mask): Return NULL_RTX
      	whenever first is nelt or above.  Don't mask expected with
      	2 * nelt - 1.
      
      	* gcc.target/i386/pr68483-1.c: New test.
      	* gcc.target/i386/pr68483-2.c: New test.
      
      From-SVN: r230797
      Jakub Jelinek committed
    • re PR c/68337 ([MPX] memcpy() for arrays with function pointers results in huge… · 3de2a40e
      re PR c/68337 ([MPX] memcpy() for arrays with function pointers results in huge resource usage and binaries)
      
      gcc/
      
      	PR c/68337
      	* gimple-fold.c: Include ipa-chkp.h.
      	(gimple_fold_builtin_memory_op): Don't fold call if we
      	are going to instrument it and it may copy pointers.
      
      gcc/testsuite/
      
      	PR c/68337
      	* gcc.target/i386/mpx/pr68337-1.c: New test.
      	* gcc.target/i386/mpx/pr68337-2.c: New test.
      
      From-SVN: r230796
      Ilya Enkovich committed
    • [RTL-ree] PR rtl-optimization/68194: Restrict copy instruction in presence of conditional moves · 8632824e
      	PR rtl-optimization/68194
      	PR rtl-optimization/68328
      	PR rtl-optimization/68185
      	* ree.c (combine_reaching_defs): Reject copy_needed case if
      	copies_list is not empty.
      
      	* gcc.c-torture/execute/pr68185.c: New test.
      	* gcc.c-torture/execute/pr68328.c: Likewise.
      
      From-SVN: r230795
      Kyrylo Tkachov committed
    • sem_ch3.adb, [...]: Minor reformatting, rewording, and typo corrections. · 4404c282
      2015-11-24  Gary Dismukes  <dismukes@adacore.com>
      
      	* sem_ch3.adb, sem_type.adb, sem_ch7.adb, sem_ch9.adb, checks.adb,
      	sem_prag.adb, contracts.adb, g-strhas.ads, sem_ch6.adb: Minor
      	reformatting, rewording, and typo corrections.
      
      From-SVN: r230794
      Gary Dismukes committed
    • re PR middle-end/68221 (libgomp reduction-11/12 failures) · 8ab1d9d7
      2015-11-24  Richard Biener  <rguenther@suse.de>
      
      	PR middle-end/68221
      	* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Properly
      	use mem_ref_offset.
      
      From-SVN: r230793
      Richard Biener committed
    • decl.c (gnat_to_gnu_entity): In ASIS mode, do a minimal translation for root… · c4833de1
      decl.c (gnat_to_gnu_entity): In ASIS mode, do a minimal translation for root types with discriminants.
      
      	* gcc-interface/decl.c (gnat_to_gnu_entity) <Concurrent types>: In
      	ASIS mode, do a minimal translation for root types with discriminants.
      	* gcc-interface/trans.c (gnat_to_gnu) <N_Subunit>: Move around.
      	<N_Entry_Body, N_Protected_Body, N_Task_Body>: Likewise.  In ASIS mode,
      	process the declarations attached to the body.
      
      From-SVN: r230792
      Eric Botcazou committed
    • trans.c (gnat_to_gnu): In type_annotate_only mode, do not build a NULL_EXPR for an N_Expanded_Name. · 93200f92
      	* gcc-interface/trans.c (gnat_to_gnu): In type_annotate_only mode, do
      	not build a NULL_EXPR for an N_Expanded_Name.
      
      From-SVN: r230791
      Eric Botcazou committed
    • Fix libsanitizer build with old kernel headers on ARM after r230739. · 664dd3cf
      libsanitizer/
      
      	* include/system/linux/asm/ptrace.h: New header.
      
      From-SVN: r230790
      Max Ostapenko committed
    • decl.c (is_cplusplus_method): Check that the type of the first parameter… · eae6758d
      decl.c (is_cplusplus_method): Check that the type of the first parameter (indirectly) has C++ convention too.
      
      	* gcc-interface/decl.c (is_cplusplus_method): Check that the type of
      	the first parameter (indirectly) has C++ convention too.
      
      From-SVN: r230788
      Eric Botcazou committed
    • combine: Handle aborts in is_parallel_of_n_reg_sets (PR68381) · 7d906d07
      Some users of is_parallel_of_n_reg_sets disregard the clobbers in a
      parallel after it has returned "yes, this is a parallel of N sets and
      maybe some clobbers".  But combine uses a clobber of const0_rtx to
      indicate substitution failure, so this leads to disaster.
      
      Fix this by checking for such special clobbers in is_parallel_of_n_reg_sets.
      
      
      	PR rtl-optimization/68381
      	* combine.c (is_parallel_of_n_reg_sets): Return false if the pattern
      	is poisoned.
      
      From-SVN: r230786
      Segher Boessenkool committed
    • [PATCH] Fix invalid redundant extension elimination for rl78 port · d2c9e8ed
      	* ree.c (add_removable_extension): Avoid mis-optimizing cases where
      	the source/dest of the target extension require a different number of
      	hard registers.
      	(combine_set_extension): Remove #if 0 code.
      
      Co-Authored-By: Jeff Law <law@redhat.com>
      
      From-SVN: r230785
      Nick Clifton committed
    • * gcc.c-torture/execute/lto-tbaa-1.c: New testcase. · 267c9702
      From-SVN: r230784
      Jan Hubicka committed
    • Daily bump. · a52a91ec
      From-SVN: r230783
      GCC Administrator committed
    • Fix missing ChangeLog entry for Graphite head files fix. · 08f16278
      From-SVN: r230780
      David Edelsohn committed
  2. 23 Nov, 2015 8 commits