1. 11 Sep, 2014 14 commits
    • [AArch64] Replace temporary inline assembler for vset_lane · fdaddc1b
      	* config/aarch64/arm_neon.h (aarch64_vset_lane_any): New (*2).
      	(vset_lane_f32, vset_lane_f64, vset_lane_p8, vset_lane_p16,
      	vset_lane_s8, vset_lane_s16, vset_lane_s32, vset_lane_s64,
      	vset_lane_u8, vset_lane_u16, vset_lane_u32, vset_lane_u64,
      	vsetq_lane_f32, vsetq_lane_f64, vsetq_lane_p8, vsetq_lane_p16,
      	vsetq_lane_s8, vsetq_lane_s16, vsetq_lane_s32, vsetq_lane_s64,
      	vsetq_lane_u8, vsetq_lane_u16, vsetq_lane_u32, vsetq_lane_u64):
      	Replace inline assembler with __aarch64_vset_lane_any.
      
      From-SVN: r215179
      Alan Lawrence committed
    • [AArch64 Testsuite] Add execution test of vset(q?)_lane intrinsics. · 8acf549a
      	* gcc.target/aarch64/vset_lane_1.c: New test.
      
      From-SVN: r215177
      Alan Lawrence committed
    • [AArch64] Cheap fix for argument types of vmull_high_lane_{us}{16,32} · dd57b790
      gcc/
      
      	* config/aarch64/arm_neon.h (vmull_high_lane_s16): Fix argument
      	types.
      	(vmull_high_lane_s32): Likewise.
      	(vmull_high_lane_u16): Likewise.
      	(vmull_high_lane_u32): Likewise.
      
      From-SVN: r215176
      James Greenhalgh committed
    • re PR c++/63139 (Class-scope typedef overwrites typedef of previously defined class) · c9e8561e
      	PR c++/63139
      	* pt.c (tsubst_pack_expansion): Simplify substitution into T....
      	(tsubst): Don't throw away PACK_EXPANSION_EXTRA_ARGS.
      
      From-SVN: r215171
      Jason Merrill committed
    • re PR c++/58678 (pykde4-4.11.2 link error (devirtualization too trigger happy)) · 89632536
      	PR c++/58678
      	* ipa-devirt.c (ipa_devirt): Don't check DECL_COMDAT.
      
      From-SVN: r215168
      Jason Merrill committed
    • re PR libstdc++/63219 (Superfluous template parameter in match_result::format overload) · 8aed2f2f
      	PR libstdc++/63219
      	* include/bits/regex.h (match_results::format): Remove stray template
      	parameter.
      	* include/bits/regex_compiler.h (_RegexTranslator::_RegexTranslator):
      	Remove parameter name to avoid -Wunused-parameter warning.
      	* include/bits/regex_executor.h (_State_info::_State_info): Reorder
      	mem-initializers to avoid -Wreorder warning.
      	* include/bits/regex_executor.tcc (_Executor::_M_word_boundary):
      	Remove parameter name to avoid -Wunused-parameter warning.
      	* include/bits/regex_scanner.tcc (_Scanner::_M_advance): Add braces
      	to avoid -Wempty-body warning when not in debug mode.
      
      From-SVN: r215160
      Jonathan Wakely committed
    • Fix declarations in some tests. · 21a16932
      	* gcc.dg/compat/struct-by-value-13_main.c (struct_by_value_13_x):
      	Fix declaration.
      	* gcc.dg/compat/struct-by-value-16a_main.c (struct_by_value_16a_x):
      	Fix declaration.
      	* gcc.dg/compat/struct-by-value-17a_main.c (struct_by_value_17a_x):
      	Fix declaration.
      	* gcc.dg/compat/struct-by-value-18a_main.c (struct_by_value_18a_x):
      	Fix declaration.
      
      From-SVN: r215158
      Bernd Schmidt committed
    • linux64.S: Emit .note.GNU-stack even when POWERPC64 is not defined. · 1138382b
      	* src/powerpc/linux64.S: Emit .note.GNU-stack even when
      	POWERPC64 is not defined.
      	* src/powerpc/linux64_closure.S: Likewise.  Also test _CALL_ELF == 2.
      
      From-SVN: r215155
      Jakub Jelinek committed
    • re PR target/63223 ([avr] Make jumptables work with -Wl,--section-start,.text=) · ea3f2b24
      gcc/
      	PR target/63223
      	* config/avr/avr.md (*tablejump.3byte-pc): New insn.
      	(*tablejump): Restrict to !AVR_HAVE_EIJMP_EICALL.  Add void clobber.
      	(casesi): Expand to *tablejump.3byte-pc if AVR_HAVE_EIJMP_EICALL.
      libgcc/
      	PR target/63223
      	* config/avr/libgcc.S (__tablejump2__): Rewrite to use RAMPZ, ELPM
      	and R24 as needed.  Make work for all devices and .text locations.
      	(__do_global_ctors, __do_global_dtors): Use word addresses.
      	(__tablejump__, __tablejump_elpm__): Remove functions.
      	* t-avr (LIB1ASMFUNCS): Remove _tablejump, _tablejump_elpm.
      	Add _tablejump2.
      	(XICALL, XIJMP): New macros.
      
      From-SVN: r215152
      Georg-Johann Lay committed
    • AVX-512. Add vperm[it]2 insns support. · c883e5fb
      gcc/
      	* config/i386/sse.md
      	(define_expand "<avx512>_vpermi2var<VI48F:mode>3_maskz"): Rename from
      	"avx512f_vpermi2var<mode>3_maskz" and update mode iterator.
      	(define_expand "<avx512>_vpermi2var<VI2_AVX512VL:mode>3_maskz"):
      	New.
      	(define_insn "<avx512>_vpermi2var<VI48F:mode>3<sd_maskz_name>"): Rename
      	from "avx512f_vpermi2var<mode>3<sd_maskz_name>" and update mode
      	iterator.
      	(define_insn "<avx512>_vpermi2var<VI2_AVX512VL:mode>3<sd_maskz_name>"):
      	New.
      	(define_insn "<avx512>_vpermi2var<VI48F:mode>3_mask"): Rename from
      	"avx512f_vpermi2var<mode>3_mask" and update mode iterator.
      	(define_insn "<avx512>_vpermi2var<VI2_AVX512VL:mode>3_mask"): New.
      	(define_expand "<avx512>_vpermt2var<VI48F:mode>3_maskz"): Rename from
      	"avx512f_vpermt2var<mode>3_maskz" and update mode iterator.
      	(define_expand "<avx512>_vpermt2var<VI2_AVX512VL:mode>3_maskz"): New.
      	(define_insn "<avx512>_vpermt2var<VI48F:mode>3<sd_maskz_name>"): Rename
      	from "avx512f_vpermt2var<mode>3<sd_maskz_name>" and update mode
      	iterator.
      	(define_insn "<avx512>_vpermt2var<VI2_AVX512VL:mode>3<sd_maskz_name>"):
      	New.
      	(define_insn "<avx512>_vpermt2var<VI48F:mode>3_mask"): Rename from
      	"avx512f_vpermt2var<mode>3_mask" and update mode iterator.
      	(define_insn "<avx512>_vpermt2var<VI2_AVX512VL:mode>3_mask"): New.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215151
      Alexander Ivchenko committed
    • varpool.c (varpool_node::ctor_useable_for_folding_p): Do not try to access removed nodes. · 7c46e07b
      	* varpool.c (varpool_node::ctor_useable_for_folding_p): Do not try
      	to access removed nodes.
      
      From-SVN: r215150
      Jan Hubicka committed
    • re PR middle-end/63186 (Undefined .L* symbols because of fnsplit) · 412c4af7
      
      	PR tree-optimization/63186
      	* ipa-split.c (test_nonssa_use): Skip nonforced labels.
      	(mark_nonssa_use): Likewise.
      	(verify_non_ssa_vars): Verify all header blocks for label
      	definitions.
      
      	* gcc.dg/pr63186.c: New testcase.
      
      From-SVN: r215149
      Jan Hubicka committed
    • AVX-512. Extend vpermvar insn patterns. · cf92ae7f
      gcc/
      	* config/i386/sse.md
      	(define_mode_attr avx2_avx512): Rename from avx2_avx512bw.
      	(define_mode_iterator VI48F_256_512): Extend to AVX-512VL.
      	(define_insn "<avx2_avx512>_permvar<mode><mask_name>"): Rename from
      	"<avx2_avx512f>_permvar<mode><mask_name>".
      	(define_insn "<avx512>_permvar<mode><mask_name>"): New.
      	(define_insn "<avx2_avx512>_ashrv<VI48_AVX512F_AVX512VL:mode><mask_name>"):
      	Rename from "<avx2_avx512f>_ashrv<mode><mask_name>".
      	(define_insn "<avx2_avx512>_ashrv<VI2_AVX512VL:mode><mask_name>"):
      	Ditto.
      	(define_insn "<avx2_avx512>_<shift_insn>v<VI48_AVX512F:mode><mask_name>"):
      	Rename from "<avx2_avx512bw>_<shift_insn>v<mode><mask_name>".
      	(define_insn "<avx2_avx512>_<shift_insn>v<VI2_AVX512VL:mode><mask_name>"):
      	Rename from "<avx2_avx512bw>_<shift_insn>v<mode><mask_name>".
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215148
      Alexander Ivchenko committed
    • Daily bump. · dec3f82a
      From-SVN: r215147
      GCC Administrator committed
  2. 10 Sep, 2014 25 commits
    • vsx.md (vsx_fmav4sf4): Use correct constraints for V2DF, V4SF, DF, and DI modes. · 29aafbc4
      2014-09-10  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	* config/rs6000/vsx.md (vsx_fmav4sf4): Use correct constraints for
      	V2DF, V4SF, DF, and DI modes.
      	(vsx_fmav2df2): Likewise.
      	(vsx_float_fix_<mode>2): Likewise.
      	(vsx_reduc_<VEC_reduc_name>_v2df_scalar): Likewise.
      
      From-SVN: r215138
      Michael Meissner committed
    • Fix PR target/63209. · 971ea67c
      From-SVN: r215136
      Xinliang David Li committed
    • i386.exp: Only run vect-args.c tests if runtest_file_p says they should be run. · 7bee00c3
      	* gcc.target/i386/i386.exp: Only run vect-args.c tests
      	if runtest_file_p says they should be run.
      
      From-SVN: r215135
      Jakub Jelinek committed
    • re PR ipa/61659 (Extra undefined symbol because of devirtualization) · ca78482d
      	PR c++/61659
      	* decl.c (grokfndecl): Don't set DECL_COMDAT on static inlines.
      	(duplicate_decls, start_decl): Likewise.
      	* pt.c (check_explicit_specialization): Likewise.
      	(push_template_decl_real): Or static templates.
      
      From-SVN: r215134
      Jason Merrill committed
    • error_for_asm and warning_for_asm take const rtx_insn * · 1c22488e
      gcc/ChangeLog:
      2014-09-10  David Malcolm  <dmalcolm@redhat.com>
      
      	* final.c (this_is_asm_operands): Strengthen this variable from
      	rtx to const rtx_insn *.
      	* output.h (this_is_asm_operands): Likewise.
      	* rtl-error.c (location_for_asm): Strengthen param "insn" from
      	const_rtx to const rtx_insn *.
      	(diagnostic_for_asm): Likewise.
      	* rtl-error.h (error_for_asm): Likewise.
      	(warning_for_asm): Likewise.
      
      From-SVN: r215133
      David Malcolm committed
    • insn_extract takes an rtx_insn · d0bffe55
      gcc/ChangeLog:
      2014-09-10  David Malcolm  <dmalcolm@redhat.com>
      
      	* genextract.c (print_header): When writing out insn_extract to
      	insn-extract.c, strengthen the param "insn" from rtx to rtx_insn *.
      	* recog.h (insn_extract): Strengthen the param from rtx to
      	rtx_insn *.
      
      From-SVN: r215132
      David Malcolm committed
    • [AArch64 Testsuite] Add a test of the vst[234](q?) intrinics · 86b8825b
              * gcc.target/aarch64/vstN_1.c: New test.
      
      From-SVN: r215129
      Alan Lawrence committed
    • hook.in: Load the xmethods. · e9e08827
      2014-09-10  Siva Chandra Reddy  <sivachandra@google.com>
      
      	* python/hook.in: Load the xmethods.
      	* python/Makefile.am (nobase_python_DATA): Add xmethods.py.
      	* python/Makefile.in: Regenerated.
      	* python/libstdcxx/v6/xmethods.py: New file.
      	* testsuite/lib/gdb-test.exp (gdb_version_check_xmethods): New
      	function.
      	(gdb-test): New optional argument LOAD_XMETHODS.  Load xmethods
      	python script if LOAD_XMETHODS is true.
      	* testsuite/libstdc++-xmethods/unique_ptr.cc: New file.
      	* testsuite/libstdc++-xmethods/vector.cc: New file.
      	* testsuite/libstdc++-xmethods/xmethods.exp: New file.
      
      From-SVN: r215128
      Siva Chandra Reddy committed
    • install.texi (Prerequisites): Note Tcl 8.6 bug fixed in 8.6.1. · f15b287f
      	* doc/install.texi (Prerequisites): Note Tcl 8.6 bug fixed in
      	8.6.1.
      
      From-SVN: r215127
      Mike Stump committed
    • [AArch64 Testsuite] Add a test of the vldN_lane intrinsic · d9aa6e11
              * gcc.target/aarch64/vldN_lane_1.c: New test.
      
      From-SVN: r215126
      Alan Lawrence committed
    • cgraphunit.c (expand_thunk): If not expanding, set analyzed flag. · 77b7d74b
      2014-09-10  Martin Jambor  <mjambor@suse.cz>
      
      	* cgraphunit.c (expand_thunk): If not expanding, set analyzed flag.
      	(analyze): Do not set analyze flag if expand_thunk returns false;.
      	(create_wrapper): Likewise.
      	* cgraphclones.c (duplicate_thunk_for_node): Likewise.
      
      From-SVN: r215123
      Martin Jambor committed
    • re PR middle-end/61654 (ICE in release_function_body, at cgraph.c:1699) · bec63208
      2014-09-10  Martin Jambor  <mjambor@suse.cz>
      
      	PR ipa/61654
      	* cgraphclones.c (duplicate_thunk_for_node): Copy arguments of the
      	new decl properly.  Analyze the new thunk if it is expanded.
      
      gcc/testsuite/
      	* g++.dg/ipa/pr61654.C: New test.
      
      From-SVN: r215122
      Martin Jambor committed
    • coretypes.h (struct _dont_use_rtx_insn_here_, rtx_insn): Define. · f3955ea3
      * coretypes.h (struct _dont_use_rtx_insn_here_, rtx_insn)
      [USED_FOR_TARGET]: Define.
      
      From-SVN: r215121
      Andreas Schwab committed
    • MIPS: Do not reload unallocated FP_REGS pseudos via GR_REGS · 99a5c6b0
      gcc/
      
      	* config/mips/mips.c (mips_secondary_reload_class): Handle
      	regno < 0 case.
      
      From-SVN: r215120
      Matthew Fortune committed
    • Fix ICE in bitmap routines with LRA and inline assembly language · 5625bd33
      gcc/
      
      	* lra-lives.c (process_bb_lives): Replace assignment with bitwise OR
      	assignment.
      
      From-SVN: r215119
      Robert Suchanek committed
    • flag-types.h (enum sanitize_code): Add SANITIZE_NONNULL_ATTRIBUTE and… · 126edc3f
      flag-types.h (enum sanitize_code): Add SANITIZE_NONNULL_ATTRIBUTE and SANITIZE_RETURNS_NONNULL_ATTRIBUTE...
      
      gcc/
      	* flag-types.h (enum sanitize_code): Add SANITIZE_NONNULL_ATTRIBUTE
      	and SANITIZE_RETURNS_NONNULL_ATTRIBUTE, or them into SANITIZE_UNDEFINED.
      	* opts.c (common_handle_option): Handle SANITIZE_NONNULL_ATTRIBUTE and
      	SANITIZE_RETURNS_NONNULL_ATTRIBUTE and disable
      	flag_delete_null_pointer_checks for them.
      	* sanitizer.def (BUILT_IN_UBSAN_HANDLE_NONNULL_ARG,
      	BUILT_IN_UBSAN_HANDLE_NONNULL_ARG_ABORT,
      	BUILT_IN_UBSAN_HANDLE_NONNULL_RETURN,
      	BUILT_IN_UBSAN_HANDLE_NONNULL_RETURN_ABORT): New.
      	* ubsan.c (instrument_bool_enum_load): Set *gsi back to
      	stmt's iterator.
      	(instrument_nonnull_arg, instrument_nonnull_return): New functions.
      	(pass_ubsan::gate): Return true even for SANITIZE_NONNULL_ATTRIBUTE
      	or SANITIZE_RETURNS_NONNULL_ATTRIBUTE.
      	(pass_ubsan::execute): Call instrument_nonnull_{arg,return}.
      	* doc/invoke.texi (-fsanitize=nonnull-attribute,
      	-fsanitize=returns-nonnull-attribute): Document.
      gcc/testsuite/
      	* c-c++-common/ubsan/attrib-3.c: New test.
      	* c-c++-common/ubsan/nonnull-1.c: New test.
      	* c-c++-common/ubsan/nonnull-2.c: New test.
      	* c-c++-common/ubsan/nonnull-3.c: New test.
      	* c-c++-common/ubsan/nonnull-4.c: New test.
      	* c-c++-common/ubsan/nonnull-5.c: New test.
      libsanitizer/
      	* ubsan/ubsan_handlers.cc, ubsan/ubsan_handlers.h: Cherry pick
      	upstream r215485, r217389, r217391 and r217400.
      
      From-SVN: r215118
      Jakub Jelinek committed
    • ubsan.h (struct ubsan_mismatch_data): Removed. · 570a11fe
      	* ubsan.h (struct ubsan_mismatch_data): Removed.
      	(ubsan_create_data): Remove MISMATCH argument, add LOCCNT argument.
      	* ubsan.c (ubsan_source_location): For unknown locations,
      	pass { NULL, 0, 0 } instead of { "<unknown>", x, y }.
      	(ubsan_create_data): Remove MISMATCH argument, add LOCCNT argument.
      	Allow more than one location and arbitrary extra arguments passed
      	in ... instead of through MISMATCH pointer.
      	(ubsan_instrument_unreachable, ubsan_expand_bounds_ifn,
      	ubsan_expand_null_ifn, ubsan_build_overflow_builtin,
      	instrument_bool_enum_load, ubsan_instrument_float_cast): Adjust
      	callers.
      c-family/
      	* c-ubsan.c (ubsan_instrument_division, ubsan_instrument_shift,
      	ubsan_instrument_vla, ubsan_instrument_return): Adjust
      	ubsan_create_data callers.
      	(ubsan_instrument_bounds): Don't emit UBSAN_BOUNDS at all if
      	index is constant or BIT_AND_EXPR with constant mask and is
      	small enough for the bound.
      	* c-gimplify.c (ubsan_walk_array_refs_r): For ADDR_EXPR of
      	ARRAY_REF, make sure the inner ARRAY_REF is not walked again.
      
      From-SVN: r215117
      Jakub Jelinek committed
    • AVX-512. Add patterns for compress, expand. · f7be73c8
      gcc/
      	* config/i386/sse.md
      	(define_mode_iterator VI48F): New.
      	(define_insn "<avx512>_compress<mode>_mask"): Rename from
      	"avx512f_compress<mode>_mask" and update mode iterator.
      	(define_insn "<avx512>_compressstore<mode>_mask"): Rename from
      	"avx512f_compressstore<mode>_mask" and update mode iterator.
      	(define_expand "<avx512>_expand<mode>_maskz"): Rename from
      	"avx512f_expand<mode>_maskz" and update mode iterator.
      	(define_insn "<avx512>_expand<mode>_mask"): Rename from
      	"avx512f_expand<mode>_mask" and update mode iterator.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215108
      Alexander Ivchenko committed
    • AVX-512. Add reduce, range, fpclass insn patterns. · b9826286
      gcc/
      	* config/i386/i386.c
      	(ix86_expand_args_builtin): Handle avx512dq_rangepv8df_mask_round,
      	avx512dq_rangepv16sf_mask_round, avx512dq_rangepv4df_mask,
      	avx512dq_rangepv8sf_mask, avx512dq_rangepv2df_mask,
      	avx512dq_rangepv4sf_mask.
      	* config/i386/sse.md
      	(define_c_enum "unspec"): Add UNSPEC_REDUCE, UNSPEC_FPCLASS,
      	UNSPEC_RANGE.
      	(define_insn "<mask_codefor>reducep<mode><mask_name>"): New.
      	(define_insn "reduces<mode>"): Ditto.
      	(define_insn "avx512dq_rangep<mode><mask_name><round_saeonly_name>"):
      	Ditto.
      	(define_insn "avx512dq_ranges<mode><round_saeonly_name>"): Ditto.
      	(define_insn "avx512dq_fpclass<mode><mask_scalar_merge_name>"): Ditto.
      	(define_insn "avx512dq_vmfpclass<mode>"): Ditto..
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215107
      Alexander Ivchenko committed
    • AVX-512. Update float unspecs: storeu, rcp14, rsqrt14, scalef, getexp, fixupimm, rndscale, getmant. · b040ded3
      gcc/
      	* config/i386/i386.c
      	(avx512f_vgetmantv2df_round): Rename from "avx512f_getmantv2df_round".
      	(avx512f_vgetmantv4sf_round): Rename from "avx512f_vgetmantv4sf_round".
      	(ix86_expand_args_builtin): Handle avx512vl_getmantv8sf_mask,
      	avx512vl_getmantv4df_mask, avx512vl_getmantv4sf_mask,
      	avx512vl_getmantv2df_mask.
      	(ix86_expand_round_builtin): Handle avx512f_vgetmantv2df_round,
      	avx512f_vgetmantv4sf_round.
      	* config/i386/sse.md
      	(define_insn "<avx512>_storeu<ssemodesuffix><avxsizesuffix>_mask"):
      	Rename from "avx512f_storeu<ssemodesuffix>512_mask" and update
      	mode iterator.
      	(define_insn "<mask_codefor>rcp14<mode><mask_name>"): Use VF_AVX512VL.
      	(define_insn "<mask_codefor>rsqrt14<mode><mask_name>"): Ditto.
      	(define_insn "<avx512>_scalef<mode><mask_name><round_name>"): Rename
      	from "avx512f_scalef<mode><mask_name><round_name>" and update mode
      	iterator..
      	(define_insn "<avx512>_getexp<mode><mask_name><round_saeonly_name>"):
      	Rename from "avx512f_getexp<mode><mask_name><round_saeonly_name>" and
      	update mode iterator.
      	(define_expand
      	"<avx512>_fixupimm<mode>_maskz<round_saeonly_expand_name>"): Rename from
      	"avx512f_fixupimm<mode>_maskz<round_saeonly_expand_name>" and update
      	mode iterator.
      	(define_insn
      	"<avx512>_fixupimm<mode><sd_maskz_name><round_saeonly_name>"): Rename
      	from "avx512f_fixupimm<mode><sd_maskz_name><round_saeonly_name>" and
      	update mode iterator.
      	(define_insn "<avx512>_fixupimm<mode>_mask<round_saeonly_name>"): Rename
      	from "avx512f_fixupimm<mode>_mask<round_saeonly_name>" and update mode
      	iterator..
      	(define_insn
      	"<avx512>_rndscale<mode><mask_name><round_saeonly_name>"): rename from
      	"avx512f_rndscale<mode><mask_name><round_saeonly_name>" and update
      	mode iterator..
      	(define_insn "<avx512>_getmant<mode><mask_name><round_saeonly_name>"):
      	Rename from "avx512f_getmant<mode><mask_name><round_saeonly_name>" and
      	update mode iterator.
      	(define_insn "avx512f_vgetmant<mode><round_saeonly_name>"): Rename from
      	"avx512f_getmant<mode><round_saeonly_name>".
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215106
      Alexander Ivchenko committed
    • re PR lto/63166 (ICE (LTO): ipa_intraprocedural_devirtualization, at ipa-prop.c:2611) · 21833f2d
      
      	PR ipa/63166
      	* ipa-prop.c (compute_known_type_jump_func): Fix conditional.
      
      	* g++.dg/lto/pr63166_0.ii: New testcase.
      	* g++.dg/lto/pr63166_1.ii: New testcase.
      
      From-SVN: r215105
      Jan Hubicka committed
    • AVX-512. Extend FMA patterns. · e274629e
      gcc/
      	* config/i386/sse.md (define_mode_iterator VF_AVX512VL): New.
      	(define_mode_iterator FMAMODEM): Allow 128/256bit EVEX version.
      	(define_mode_iterator FMAMODE_AVX512): New.
      	(define_mode_iterator FMAMODE): Remove conditions.
      	(define_expand "fma4i_fmadd_<mode>"): Use FMAMODE_AVX512 mode iterator.
      	(define_expand "<avx512>_fmadd_<mode>_maskz<round_expand_name>"): Rename
      	from "<avx512>_fmadd_<mode>_maskz<round_expand_name>" and use VF_AVX512VL
      	mode iterator.
      	(define_mode_iterator FMAMODE_NOVF512): Remove.
      	(define_insn "*fma_fmadd_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name><round_name>" and use
      	FMAMODE mode iterator.
      	(define_mode_iterator VF_SF_AVX512VL): New.
      	(define_insn "<sd_mask_codefor>fma_fmadd_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fmadd_<mode>_mask<round_name>"): Rename from
      	"avx512f_fmadd_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fmadd_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fmadd_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "*fma_fmsub_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name><round_name>" and use
      	FMAMODE mode iterator.
      	(define_insn "<sd_mask_codefor>fma_fmsub_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fmsub_<mode>_mask<round_name>"): Rename from
      	"avx512f_fmsub_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fmsub_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fmsub_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "*fma_fnmadd_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name><round_name>" and
      	use FMAMODE mode iterator.
      	(define_insn "<sd_mask_codefor>fma_fnmadd_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fnmadd_<mode>_mask<round_name>"): Rename from
      	"avx512f_fnmadd_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fnmadd_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fnmadd_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "*fma_fnmsub_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name><round_name>" and use
      	FMAMODE mode iterator.
      	(define_insn "<sd_mask_codefor>fma_fnmsub_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fnmsub_<mode>_mask<round_name>"): Rename from
      	"avx512f_fnmsub_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fnmsub_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fnmsub_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_expand "<avx512>_fmaddsub_<mode>_maskz<round_expand_name>"):
      	Rename from "avx512f_fmaddsub_<mode>_maskz<round_expand_name>" and
      	use VF_AVX512VL mode iterator.
      	(define_insn "*fma_fmaddsub_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fmaddsub_<mode><sd_maskz_name><round_name>" and
      	remove subst usage.
      	(define_insn "<sd_mask_codefor>fma_fmaddsub_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fmaddsub_<mode>_mask<round_name>"): Rename from
      	"avx512f_fmaddsub_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fmaddsub_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fmaddsub_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "*fma_fmsubadd_<mode>"): Rename from
      	"<sd_mask_codefor>fma_fmsubadd_<mode><sd_maskz_name><round_name>" and
      	remove usage of subst.
      	(define_insn "<sd_mask_codefor>fma_fmsubadd_<mode><sd_maskz_name><round_name>"):
      	Use VF_SF_AVX512VL mode iterator.
      	(define_insn "<avx512>_fmsubadd_<mode>_mask<round_name>"): Rename from
      	"avx512f_fmsubadd_<mode>_mask<round_name>" and use VF_AVX512VL mode
      	iterator.
      	(define_insn "<avx512>_fmsubadd_<mode>_mask3<round_name>"): Rename from
      	"avx512f_fmsubadd_<mode>_mask3<round_name>" and use VF_AVX512VL mode
      	iterator.
      
      
      Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com>
      Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com>
      Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com>
      Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com>
      Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
      Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com>
      Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com>
      
      From-SVN: r215104
      Alexander Ivchenko committed
    • re PR libgcc/56846 (_Unwind_Backtrace on ARM and noexcept) · 0876bdf5
      2014-09-10  Tony Wang  <tony.wang@arm.com>
      
          libstdc++-v3/
          PR target/56846
          * libsupc++/eh_personality.cc (PERSONALITY_FUNCTION):
          Return with CONTINUE_UNWINDING when the state pattern
          contains: _US_VIRTUAL_UNWIND_FRAME | _US_FORCE_UNWIND
      
      From-SVN: r215101
      Tony Wang committed
    • revert: calls.c (precompute_arguments): Check promoted_for_signed_and_unsigned_p… · 27be0c32
      revert: calls.c (precompute_arguments): Check promoted_for_signed_and_unsigned_p and set the promoted mode.
      
      gcc/ChangeLog:
      
      2014-09-10  Kugan Vivekanandarajah  <kuganv@linaro.org>
      
      	Revert r213751:
      	* calls.c (precompute_arguments): Check
      	 promoted_for_signed_and_unsigned_p and set the promoted mode.
      	(promoted_for_signed_and_unsigned_p): New function.
      	(expand_expr_real_1): Check promoted_for_signed_and_unsigned_p
      	and set the promoted mode.
      	* expr.h (promoted_for_signed_and_unsigned_p): New function definition.
      	* cfgexpand.c (expand_gimple_stmt_1): Call emit_move_insn if
      	SUBREG is promoted with SRP_SIGNED_AND_UNSIGNED.
      
      From-SVN: r215100
      Kugan Vivekanandarajah committed
    • Daily bump. · 6e8962a5
      From-SVN: r215099
      GCC Administrator committed
  3. 09 Sep, 2014 1 commit
    • opth-gen.awk: Generate mapping from cpp message reasons to the options that enable them. · b559c810
      gcc/ChangeLog:
      
      2014-09-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* opth-gen.awk: Generate mapping from cpp message reasons to the
      	options that enable them.
      	* doc/options.texi (CppReason): Document.
      
      gcc/c-family/ChangeLog:
      
      2014-09-09  Manuel López-Ibáñez  <manu@gcc.gnu.org>
      
      	* c.opt: Add CppReason to various flags.
      	(Wdate-time): Re-sort.
      	* c-common.c: Include c-common.h earlier.
      	(struct reason_option_codes_t): Delete.
      	(c_option_controlling_cpp_error): Prefix global type and struct
      	with cpp_.
      
      From-SVN: r215095
      Manuel López-Ibáñez committed