1. 23 Nov, 2014 6 commits
  2. 22 Nov, 2014 16 commits
  3. 21 Nov, 2014 18 commits
    • futex.h (SYS_futex): Define if not already done. · c8451a46
      2014-11-21  Steve Ellcey  <sellcey@imgtec.com>
      
      	* config/linux/mips/futex.h (SYS_futex): Define if not already done.
      
      From-SVN: r217952
      Steve Ellcey committed
    • re PR c++/63942 (constexpr conflicts with previous declaration) · 64bec774
      	PR c++/63942
      	* name-lookup.c (supplement_binding_1): Override a mangling alias.
      	* mangle.c (implicit_alias_p, remove_implicit_alias): New.
      	(mangle_decl): Avoid creating conflicting alias with
      	-fabi-compat-version=0, too.
      	* cp-tree.h: Adjust.
      
      From-SVN: r217950
      Jason Merrill committed
    • re PR c++/63849 ([c++11] ICE on variadic alias template with wrappers) · 6602e109
      	PR c++/63849
      	* mangle.c (decl_mangling_context): Use template_type_parameter_p.
      
      From-SVN: r217949
      Jason Merrill committed
    • re PR c++/63588 (ICE (segfault) on arm-linux-gnueabihf) · 169fe7fa
      	PR c++/63588
      	* pt.c (uses_template_parms): Handle null argument.
      
      From-SVN: r217948
      Jason Merrill committed
    • re PR target/63897 (gcc.dg/torture/vector-2.c fails at on x86_64-apple-darwin14) · 18ea3d61
      2014-11-21  Vladimir Makarov  <vmakarov@redhat.com>
      
      	PR target/63897
      	* lra-lives.c (mark_regno_live, mark_regno_dead): Remove last
      	argument.
      	(process_bb_lives): Rename dead_insn_p on remove_p
      	and global_live_info_p on dead_insn_p.  Calculate local live info
      	unconditionally.  Remove last argument in calls mark_regno_live and
      	mark_regno_dead.  Reorganize body of EXECUTE_IF_SET_IN_BITMAP.
      	(lra_create_live_ranges): Rename to lra_create_live_ranges_1.
      	Return bool.  Rename global_live_info_p on dead_insn_p.  Return
      	flag of live info change.
      	(lra_create_live_ranges): New.
      
      From-SVN: r217947
      Vladimir Makarov committed
    • re PR target/63848 (FAIL: c-c++-common/torture/builtin-arith-overflow-17.c -O0 execution test) · 92344ed0
      	PR target/63848
      	PR target/63975
      	* internal-fn.c (expand_arith_overflow_result_store,
      	expand_addsub_overflow, expand_neg_overflow, expand_mul_overflow): Use
      	do_compare_rtx_and_jump instead of emit_cmp_and_jump_insns everywhere,
      	adjust arguments to those functions.  Use unsignedp = true for
      	EQ, NE, GEU, LEU, LTU and GTU comparisons.
      
      From-SVN: r217946
      Jakub Jelinek committed
    • re PR tree-optimization/64006 (__builtin_mul_overflow fails to signal overflow) · 09877e13
      	PR tree-optimization/64006
      	* tree-vrp.c (stmt_interesting_for_vrp): Return true
      	for {ADD,SUB,MUL}_OVERFLOW internal calls.
      	(vrp_visit_assignment_or_call): For {ADD,SUB,MUL}_OVERFLOW
      	internal calls, check if any REALPART_EXPR/IMAGPART_EXPR
      	immediate uses would change their value ranges and return
      	SSA_PROP_INTERESTING if so, or SSA_PROP_NOT_INTERESTING
      	if there are some REALPART_EXPR/IMAGPART_EXPR immediate uses
      	interesting for vrp.
      
      	* gcc.c-torture/execute/pr64006.c: New test.
      
      From-SVN: r217945
      Jakub Jelinek committed
    • * Makefile.in: Regenerate. · eb23df59
      From-SVN: r217944
      Ilya Verbin committed
    • go-test.exp (go-set-goarch): Add case for ppc64le goarch value for go testing. · 6d8325a7
      	* go.test/go-test.exp (go-set-goarch): Add case for ppc64le goarch
      	value for go testing.
      
      From-SVN: r217942
      Lynn Boger committed
    • runtime: GOARCH values for ppc64 BE & LE · 6f7ccafa
      ppc64 for BE
      ppc64le for LE
      issue 8654
      
      From-SVN: r217941
      Ian Lance Taylor committed
    • re PR target/63965 (ICE: in extract_constrain_insn, at recog.c:2230 on ppc64) · 12829505
      2014-11-21  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/63965
      	* config/rs6000/rs6000.c (rs6000_setup_reg_addr_masks): Do not set
      	Altivec & -16 mask if the type is not valid for Altivec registers.
      	(rs6000_secondary_reload_memory): Add support for ((reg + const) +
      	reg) that occurs during push_reload processing.
      
      	* config/rs6000/altivec.md (altivec_mov<mode>): Add instruction
      	alternative for moving constant vectors which are easy altivec
      	constants to GPRs.  Set the length attribute each of the
      	alternatives.
      
      From-SVN: r217940
      Michael Meissner committed
    • Refine configure guard for MIPS .module availability · a871c139
      gcc/
      
      	* configure.ac: When checking for MIPS .module support ensure that
      	o32 FPXX is supported to avoid a second configure check.
      	* configure: Regenerate.
      
      From-SVN: r217939
      Matthew Fortune committed
    • [AArch64] Add vector pattern for __builtin_ctz · 5e32e83b
        gcc/
          * config/aarch64/iterators.md (VS): New mode iterator.
          (vsi2qi): New mode attribute.
          (VSI2QI): Likewise.
          * config/aarch64/aarch64-simd-builtins.def: New entry for ctz.
          * config/aarch64/aarch64-simd.md (ctz<mode>2): New pattern for ctz.
          * config/aarch64/aarch64-builtins.c
          (aarch64_builtin_vectorized_function): Support BUILT_IN_CTZ.
      
        gcc/testsuite/
          * gcc.target/aarch64/vect_ctz_1.c: New testcase.
      
      From-SVN: r217938
      Jiong Wang committed
    • Always use PIC option with -shared in libtool · a699d672
      Libtool needs to pass PIC option -shared when creating shared object to
      link regular object files with slim-lto archive.
      
      	PR bootstrap/63784
      	* libtool.m4: Add $pic_flag with -shared.
      
      boehm-gc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      gcc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libatomic/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libbacktrace/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcc1/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libcilkrts/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libffi/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgfortran/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libgomp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libitm/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libjava/classpath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libobjc/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libquadmath/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libsanitizer/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libssp/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libstdc++-v3/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      libvtv/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      lto-plugin/
      
      	PR bootstrap/63784
      	* configure: Regenerated.
      
      From-SVN: r217937
      H.J. Lu committed
    • [AArch64] Implement vsqrt_f64 intrinsic · 522b094f
      	* config/aarch64/arm_neon.h (vsqrt_f64): New intrinsic.
      
      	* gcc.target/aarch64/simd/vsqrt_f64_1.c
      
      From-SVN: r217936
      Kyrylo Tkachov committed
    • Add x86 pcommit instruction. · 36e9b73e
      gcc/
      
      	* common/config/i386/i386-common.c (OPTION_MASK_ISA_PCOMMIT_UNSET,
      	OPTION_MASK_ISA_PCOMMIT_SET): New.
      	(ix86_handle_option): Handle OPT_mpcommit.
      	* config.gcc: Add pcommitintrin.h
      	* config/i386/pcommitintrin.h: New file.
      	* config/i386/cpuid.h (bit_PCOMMIT): Define.
      	* config/i386/driver-i386.c (host_detect_local_cpu): Detect pcommit.
      	* config/i386/i386-c.c (ix86_target_macros_internal): Define
      	__PCOMMIT__.
      	* config/i386/i386.c (ix86_target_string): Add -mpcommit.
      	(PTA_PCOMMIT): Define.
      	(ix86_option_override_internal): Handle new option.
      	(ix86_valid_target_attribute_inner_p): Add pcommit.
      	(ix86_builtins): Add IX86_BUILTIN_PCOMMIT.
      	(bdesc_special_args): Add __builtin_ia32_pcommit.
      	* config/i386/i386.h (TARGET_PCOMMIT, TARGET_PCOMMIT_P): Define.
      	* config/i386/i386.md (unspecv): Add UNSPECV_PCOMMIT.
      	(pcommit): New instruction.
      	* config/i386/i386.opt: Add mpcommit.
      	* config/i386/x86intrin.h: Include pcommitintrin.h.
      
      gcc/testsuite/
      
      	* g++.dg/other/i386-2.C: Add -mpcommit.
      	* g++.dg/other/i386-3.C: Ditto.
      	* gcc.target/i386/pcommit-1.c: New test.
      	* gcc.target/i386/sse-12.c: Add new options.
      	* gcc.target/i386/sse-13.c: Ditto.
      	* gcc.target/i386/sse-14.c: Ditto.
      	* gcc.target/i386/sse-22.c: Ditto.
      	* gcc.target/i386/sse-23.c: Ditto.
      
      From-SVN: r217935
      Ilya Tocar committed
    • PR debug/38757 gcc does not emit DW_LANG_C99. · dcc97066
      For C and C++ add the language standard version in use to lang_hooks.name.
      Change users of lang_hook.name to check with new functions lang_GNU_C or
      lang_GNU_CXX. In dwarf2out.c output the DW_LANG_C version from the
      lang_hooks.name and merge any LTO TRANSLATION_UNIT_LANGUAGE found. Adds
      two testcases to dwarf2.exp to check the right DWARF DW_AT_language is set
      on the compile_unit depending on the -std=c89 or -std=c99 setting.
      
      gcc/c-family/ChangeLog
      
      	PR debug/38757
      	* c-opts.c (set_std_c89): Set lang_hooks.name.
      	(set_std_c99): Likewise.
      	(set_std_c11): Likewise.
      	(set_std_cxx98): Likewise.
      	(set_std_cxx11): Likewise.
      	(set_std_cxx14): Likewise.
      	(set_std_cxx1z): Likewise.
      
      gcc/ChangeLog
      
      	PR debug/38757
      	* config/avr/avr-c.c (avr_cpu_cpp_builtins): Use lang_GNU_C.
      	* config/darwin.c (darwin_file_end): Use lang_GNU_CXX.
      	(darwin_override_options): Likewise.
      	* config/ia64/ia64.c (ia64_struct_retval_addr_is_first_parm_p):
      	Likewise.
      	* config/rs6000/rs6000.c (rs6000_output_function_epilogue):
      	Likewise.
      	* dbxout.c (get_lang_number): Likewise.
      	(dbxout_type): Likewise.
      	(dbxout_symbol_location): Likewise.
      	* dwarf2out.c (add_prototyped_attribute): Add DW_AT_prototype
      	also for DW_LANG_{C,C99,ObjC}.
      	(highest_c_language): New function.
      	(gen_compile_unit_die): Call highest_c_language to merge LTO
      	TRANSLATION_UNIT_LANGUAGE. Use strncmp language_string to
      	determine if DW_LANG_C99 or DW_LANG_C89 should be returned.
      	* fold-const.c (fold_cond_expr_with_comparison): Use lang_GNU_CXX.
      	* langhooks.h (struct lang_hooks): Add version comment to name.
      	(lang_GNU_C): New function declaration.
      	(lang_GNU_CXX): Likewise.
      	* langhooks.c (lang_GNU_C): New function.
      	(lang_GNU_CXX): Likewise.
      	* vmsdbgout.c (vmsdbgout_init): Use lang_GNU_C and lang_GNU_CXX.
      
      gcc/testsuite/ChangeLog
      
      	PR debug/38757
      	* gcc.dg/debug/dwarf2/lang-c89.c: New test.
      	* gcc.dg/debug/dwarf2/lang-c99.c: Likewise.
      
      From-SVN: r217934
      Mark Wielaard committed
    • Support clwb x86 instruction. · 9c3bca11
      gcc/
      	* common/config/i386/i386-common.c (OPTION_MASK_ISA_CLWB_UNSET,
      	OPTION_MASK_ISA_CLWB_SET): New.
      	(ix86_handle_option): Handle OPT_mclwb.
      	* config.gcc: Add clwbintrin.h.
      	* config/i386/clwbintrin.h: New file.
      	* config/i386/cpuid.h (bit_CLWB): Define.
      	* config/i386/driver-i386.c (host_detect_local_cpu): Detect clwb. 
      	* config/i386/i386-c.c (ix86_target_macros_internal): Define
      	__CLWB__.
      	* config/i386/i386.c (ix86_target_string): Add -mclwb.
      	(PTA_CLWB): Define.
      	(ix86_option_override_internal): Handle new option.
      	(ix86_valid_target_attribute_inner_p): Add clwb.
      	(ix86_builtins): Add IX86_BUILTIN_CLWB.
      	(ix86_init_mmx_sse_builtins): Add __builtin_ia32_clwb.
      	(ix86_expand_builtin): Handle IX86_BUILTIN_CLWB.
      	* config/i386/i386.h (TARGET_CLWB, TARGET_CLWB_P): Define.
      	* config/i386/i386.md (unspecv): Add UNSPECV_CLWB.
      	(clwb): New instruction.
      	* config/i386/i386.opt: Add mclwb.
      	* config/i386/x86intrin.h: Include clwbintrin.h.
      
      gcc/testsuite/
      
      	* g++.dg/other/i386-2.C: Add -mclwb.
      	* g++.dg/other/i386-3.C: Ditto.
      	* gcc.target/i386/clwb-1.c: New test.
      	* gcc.target/i386/sse-12.c: Add new options.
      	* gcc.target/i386/sse-13.c: Ditto.
      	* gcc.target/i386/sse-14.c: Ditto.
      	* gcc.target/i386/sse-22.c: Ditto.
      	* gcc.target/i386/sse-23.c: Ditto.
      
      From-SVN: r217933
      Ilya Tocar committed