Commit Graph

150984 Commits

Author SHA1 Message Date
GCC Administrator 4f8e62f9d2 Daily bump.
From-SVN: r243972
2016-12-30 00:16:17 +00:00
Uros Bizjak bc865078dc * config/i386/i386.md (divmodqi4): Use lowpart_subreg.
From-SVN: r243969
2016-12-30 00:19:32 +01:00
Uros Bizjak a455baa994 re PR target/78904 (zero-extracts are not effective)
PR target/78904
	* config/i386/i386.md (*extvqi): Remove insn pattern.
	(divmodqi4): Update expander to generate QImode zero-extract from AH.

testsuite/ChangeLog:


	PR target/78904
	* gcc.target/i386/pr78904-6.c: New test.

From-SVN: r243968
2016-12-29 22:41:07 +01:00
Ville Voutilainen 2ae2d394c1 Implement LWG 2842, in_place_t check for optional::optional(U&&) should decay U.
Implement LWG 2842, in_place_t check for optional::optional(U&&)
should decay U.
* include/std/optional (_Optional_base(in_place_t, _Args&&...)):
Constrain.
(_Optional_base(in_place_t, initializer_list<_Up>, _Args&&...)):
Turn the int-pack constraint hack into a saner bool.
(_Optional_base<_Tp, false>::_Optional_base(in_place_t, _Args&&...)):
Constrain.
(_Optional_base<_Tp, false>::_Optional_base(in_place_t,
initializer_list<_Up>, _Args&&...)):
Turn the int-pack constraint hack into a saner bool.
(optional(_Up&&)): Constrain against in_place_t.
(optional(in_place_t, _Args&&...)): Constrain.
(constexpr optional(in_place_t, initializer_list<_Up>, _Args&&...)):
Turn the int-pack constraint hack into a saner bool.
* testsuite/20_util/optional/cons/value_neg.cc: Add a test for
a type that is constructible from in_place.

From-SVN: r243966
2016-12-29 21:19:59 +02:00
Jakub Jelinek f3d17b5e71 memcpy-1.c: Include mpx-check.h.
* gcc.target/i386/mpx/memcpy-1.c: Include mpx-check.h.
	(main): Renamed to ...
	(mpx_test): ... this.  Add argc and argv arguments.

From-SVN: r243965
2016-12-29 19:51:29 +01:00
Michael Meissner fdd8eb6db5 rs6000.c (altivec_expand_builtin): Fix typos in error messages.
2016-12-29  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/rs6000.c (altivec_expand_builtin): Fix typos in
	error messages.

From-SVN: r243963
2016-12-29 17:19:28 +00:00
Gerald Pfeifer e8003aaeeb extend.texi (Cilk Plus Builtins): cilkplus.org now uses https by default.
* doc/extend.texi (Cilk Plus Builtins): cilkplus.org now uses
        https by default.
        * doc/passes.texi (Cilk Plus Transformation): Ditto.
        * doc/generic.texi (Statements for C++): Ditto, and use @uref.

From-SVN: r243962
2016-12-29 14:52:23 +00:00
Ben Elliston f2c764c581 * config.sub: Import latest version.
From-SVN: r243961
2016-12-29 22:04:53 +11:00
Martin Liska d4a6c0ea4b Add RejectNegative for a c option.
PR c/78933
	* g++.dg/pr78933.C: New test.
	PR c/78933
	* c.opt (strong-eval-order): Add RejectNegative keyword.

From-SVN: r243960
2016-12-29 10:35:33 +00:00
GCC Administrator d4f89c814f Daily bump.
From-SVN: r243959
2016-12-29 00:16:16 +00:00
Uros Bizjak f438882a16 * gcc.target/i386/pr78904-5.c: Remove duplicate part.
From-SVN: r243956
2016-12-28 16:41:29 +01:00
Uros Bizjak 5c8617dce6 re PR target/78904 (zero-extracts are not effective)
PR target/78904
	* config/i386/constraints.md (Bn): New special memory constraint.
	* config/i386/predicates.md (norex_memory_operand): New predicate.
	* config/i386/i386.md (*extzvqi_mem_rex64): New insn pattern and
	corresponding peephole2 pattern.

testsuite/ChangeLog:

	PR target/78904
	* gcc.target/i386/pr78904-4.c: New test.
	* gcc.target/i386/pr78904-5.c: Ditto.

From-SVN: r243955
2016-12-28 16:16:26 +01:00
Sandra Loosemore c05169aab6 cppdiropts.texi, [...]: New files, split from...
2016-12-27  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/cppdiropts.texi, doc/cppwarnopts.texi:  New files, split from...
	* doc/cppopts.texi: .... here.
	* doc/cpp.texi (Invocation): Adjust includes.
	* doc/invoke.texi (Option Summary): Add missing preprocesor-related
	options.  Adjust sorting and formatting.
	(Warning Options): Include cppwarnopts.texi.
	(Preprocessor Options): Add pointers and list the specific 
	preprocessor options from cppopts.texi first instead of last.
	(Directory Options): Move/merge documentation of -I, -iquote, and
	-I- to cppdiropts.texi.  Include that file here.

From-SVN: r243954
2016-12-27 21:34:29 -05:00
GCC Administrator c50fe2da05 Daily bump.
From-SVN: r243952
2016-12-28 00:16:14 +00:00
Michael Meissner df3aba14ab predicates.md (const_0_to_12_operand): Rename predicate and change test from 0..11 to 0..12 to match the semantics of...
[gcc]
2016-12-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/predicates.md (const_0_to_12_operand): Rename
	predicate and change test from 0..11 to 0..12 to match the
	semantics of the word extract/insert instructions.  Change all
	callers.
	(const_0_to_11_operand): Likewise.
	* config/rs6000/rs6000.c (altivec_expand_builtin): Likewise.
	* config/rs6000/vsx.md (vextract4b): Likewise.
	(vextract4b_internal): Likewise.
	(vinsert4b): Likewise.
	(vinsert4b_internal): Likewise.
	(vinsert4b_di): Likewise.
	(vinsert4b_di_internal): Likewise.
	* config/rs6000/rs6000.md (zero_extendsi<mode>2): Fix offset used
	in xxextractuw to zero extend the word in the vector registers.
	(lfiwzx): Likewise.

[gcc/testsuite]
2016-12-27  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/p9-vinsert4b-2.c: Update test to test for 13
	being out of bounds instead of 12.

From-SVN: r243948
2016-12-27 23:19:15 +00:00
Uros Bizjak 41a38208bc * ChangeLog: Update my last entry.
From-SVN: r243946
2016-12-27 22:50:32 +01:00
Uros Bizjak 1b5d6ccdcf i386.c (ix86_secondary_reload): Require QImode intermediate for QImode mask register spill only for...
* config/i386/i386.c (ix86_secondary_reload): Require QImode
	intermediate for QImode mask register spill only for !TARGET_AVX512DQ.
	Always use true_regnum to determine operand regno.

From-SVN: r243945
2016-12-27 22:25:09 +01:00
Sandra Loosemore ab4bb1b300 cppopts.texi: Delete redundant documentation for -x.
2016-12-27  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/cppopts.texi: Delete redundant documentation for -x.  Move
	-fno-show-column documentation to...
	* doc/invoke.texi (Diagnostic Message Formatting Options):  ...here.
	Update the option summary.

From-SVN: r243944
2016-12-27 15:37:05 -05:00
Uros Bizjak 14d2ec8ffb i386.md (VI_512): Remove.
* config/i386/i386.md (VI_512): Remove.
	(vcond<V_512:mode><VI_AVX512BW:mode>): Use VI_AVX512BW
	mode iterator instead of VI_512.
	(vcondu<V_512:mode><VI_AVX512BW:mode>): Ditto.

From-SVN: r243943
2016-12-27 18:20:15 +01:00
Alexander Ivchenko bffa6b6c62 libtool-version: New version.
libmpx/

2016-12-27  H.J. Lu  <hongjiu.lu@intel.com>
	    Alexander Ivchenko  <alexander.ivchenko@intel.com>

	* mpxwrap/libtool-version: New version.
	* mpxwrap/mpx_wrappers.c (__mpx_wrapper_realloc): Make it
	static with external alias.
	(__mpx_wrapper_bzero): Ditto.
	(mpx_wrapper_memcpy): Ditto.
	(__mpx_wrapper_mempcpy): Ditto.

From-SVN: r243942
2016-12-27 15:35:19 +00:00
Jakub Jelinek 2700d0e3ab gfortran.h (gfc_error): Rename overload with OPT argument to...
* gfortran.h (gfc_error): Rename overload with OPT argument to...
	(gfc_error_opt): ... this.
	* error.c (gfc_error): Rename overloads with OPT argument to...
	(gfc_error_opt): ... this.  Adjust callers.
	(gfc_notify_std, gfc_error): Adjust callers.
	* resolve.c (resolve_structure_cons, resolve_global_procedure): Use
	gfc_error_opt instead of gfc_error.
	* interface.c (argument_rank_mismatch, compare_parameter,
	gfc_check_typebound_override): Likewise.  Fix up formatting.

From-SVN: r243941
2016-12-27 16:17:19 +01:00
Jakub Jelinek d90866773e re PR translation/78922 (Comment submitted for translation in stringop.opt)
PR translation/78922
	* config/i386/stringop.opt: Remove.

From-SVN: r243938
2016-12-27 15:41:04 +01:00
Uros Bizjak 4b6d0c0eb4 re PR target/78904 (zero-extracts are not effective)
PR target/78904
	* config/i386/constraints.md (Bc): New special memory constraint.
	* config/i386/i386.md (*cmpqi_ext_1, *extvqi, *extzvqi): Use Bc
	constraint with nonimmediate_operand to allow constant memory operands.
	(*cmpqi_ext_3, insv<mode>_1, addqi_ext_1, *testqi_ext_1, andqi_ext_1)
	(*<any_or:code>qi_ext_1, *xorqi_ext_1_cc): Use Bc constraint
	with general_operand to allow constant memory operands.

testsuite/ChangeLog:

	PR target/78904
	* gcc.target/i386/pr78904-3.c: New test.

From-SVN: r243937
2016-12-27 15:20:19 +01:00
Alexander Ivchenko 8ba4f50639 c.opt (flag_chkp_flexible_struct_trailing_arrays): Add new option.
2016-12-27  Alexander Ivchenko  <alexander.ivchenko@intel.com>

* c-family/c.opt (flag_chkp_flexible_struct_trailing_arrays):
  Add new option.
  (fchkp-narrow-to-innermost-array): Fix typo.
* doc/cpp.texi (flag_chkp_flexible_struct_trailing_arrays): Ditto.
* tree-chkp.c (chkp_may_narrow_to_field ): Forbid
  narrowing when flag_chkp_flexible_struct_trailing_arrays is used
  and the field is the last array field in the structure.


2016-12-27  Alexander Ivchenko  <alexander.ivchenko@intel.com>

* gcc.target/i386/mpx/vla-trailing-1-lbv.c: New test.
* gcc.target/i386/mpx/vla-trailing-1-nov.c: Ditto.
* gcc.target/i386/mpx/vla-trailing-1-ubv.c: Ditto.

From-SVN: r243936
2016-12-27 13:31:43 +00:00
Uros Bizjak 5735741b12 * gcc.target/i386/pr78904-2.c: Fix testcase.
From-SVN: r243935
2016-12-27 12:12:32 +01:00
Uros Bizjak 6a2067fffe i386.md (andqi_ext_1): Use general_operand predicate for operand 2.
* config/i386/i386.md (andqi_ext_1): Use general_operand
	predicate for operand 2.

From-SVN: r243934
2016-12-27 12:00:15 +01:00
Uros Bizjak b1d3a450be re PR target/78904 (zero-extracts are not effective)
PR target/78904
	* config/i386/i386.md (*cmpqi_ext_1, *extvqi, *extzvqi): Use
	nonimmediate_operand instead of nonimmediate_x64nomem_operand.
	(*cmpqi_ext_3, insv<mode>_1, addqi_ext_1, *testqi_ext_1, andqi_ext_1)
	(*<any_or:code>qi_ext_1, *xorqi_ext_1_cc): Use general_operand
	instead of general_x64nomem_operand.
	* config/i386/predicates.md (nonimmediate_x64nomem_operand): Remove.
	(general_x64nomem_operand): Ditto.

testsuite/ChangeLog:

	PR target/78904
	* gcc.target/i386/pr78904-2.c: New test.

From-SVN: r243933
2016-12-27 09:59:04 +01:00
GCC Administrator 2226492f26 Daily bump.
From-SVN: r243932
2016-12-27 00:16:15 +00:00
Uros Bizjak ecb1129654 re PR target/78904 (zero-extracts are not effective)
PR target/78904
	* config/i386/i386.md (addqi_ext_1): Canonicalize insn pattern w.r.t.
	zero_extract RTXes.
	(*addqi_ext_2): Ditto.
	(testqi_ext_ccno_0): Canonicalize expander w.r.t. zero_extract RTXes.
	(testqi_ext_1_ccno): Rename from testqi_ext_ccno_0.
	(*testqi_ext_0): Merge with *testqi_ext_1.
	(*testqi_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
	Update corresponding splitter.
	(*testqi_ext_2): Canonicalize insn pattern w.r.t. zero_extract RTXes.
	(*andqi_ext_0): Merge with *andqi_ext_1.
	(andqi_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
	Rename from *andqi_ext_1.  Update corresponding splitter and
	peephole2 patterns.
	(*andqi_ext_1_cc): Rename from *andqi_ext_0_cc.
	(*andqi_ext_2): Canonicalize insn pattern w.r.t. zero_extract RTXes.
	(*<any_or:code>qi_ext_0): Merge with *andqi_ext_1.
	(*<any_or:code>qi_ext_1): Canonicalize insn pattern w.r.t.
	zero_extract RTXes.  Update corresponding splitter.
	(*<any_or:code>qi_ext_2): Canonicalize insn pattern w.r.t.
	zero_extract RTXes.
	(xorqi_cc_ext_1): Canonicalize expander w.r.t. zero_extract RTXes.
	(xorqi_ext_1_cc): Rename from xorqi_cc_ext_1.
	(*xorqi_cc_ext_1): Canonicalize insn pattern w.r.t. zero_extract RTXes.
	Update corresponding splitter.
	(*xorqi_ext_1_cc): Rename from *xorqi_cc_ext_1.
	(isinfxf2): Update calls to renamed expanders.
	(isinf<mode>2): Ditto.
	* config/i386/i386.c (ix86_expand_fp_compare): Ditto.
	(ix86_emit_fp_unordered_jump): Ditto.
	(ix86_emit_i387_round): Ditto.

testsuite/ChangeLog:

	PR target/78904
	* gcc.target/i386/pr78904.c: New test.

From-SVN: r243929
2016-12-26 20:00:47 +01:00
Alexander Ivchenko dfcbd6b3da libtool-version: New version.
2016-12-26  Alexander Ivchenko  <alexander.ivchenko@intel.com>

    * mpxrt/libtool-version: New version.
    * mpxrt/mpxrt-utils.c (set_mpx_rt_stop_handler): New function.
    (print_help): Add help for CHKP_RT_STOP_HANDLER environment
    variable.
    (__mpxrt_init_env_vars): Add initialization of stop_handler.
    (__mpxrt_stop_handler): New function.
    (__mpxrt_stop): Ditto.
    * mpxrt/mpxrt-utils.h (mpx_rt_stop_mode_handler_t): New enum.
    * mpxrt/mpxrt.c (handler): Replace exit(255) with __mpxrt_stop
    function call.

From-SVN: r243928
2016-12-26 15:14:06 +00:00
Alexander Ivchenko 1dc9c11778 MAINTAINERS (Write After Approval): Add myself.
2016-12-26  Alexander Ivchenko  <alexander.ivchenko@intel.com>

            * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r243927
2016-12-26 10:28:02 +00:00
Andreas Schwab cff411879c Summary: Whitespace cleanup
From-SVN: r243926
2016-12-26 10:16:15 +00:00
Eric Botcazou 4f4f634fff * doc/cpp.texi (Invocation): Remove space in command.
From-SVN: r243925
2016-12-26 09:36:33 +00:00
Eric Botcazou f15613c237 * doc/invoke.texi (SPARC options): Add missing documentation for -mlra.
From-SVN: r243924
2016-12-26 09:22:56 +00:00
Sandra Loosemore 71585576bc cpp.texi (Invocation): Revise to indicate that GCC driver options are only documented in the GCC manual.
2016-12-25  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/cpp.texi (Invocation): Revise to indicate that GCC driver
	options are only documented in the GCC manual.
	* doc/cppopts.texi: Delete documentation of GCC driver options 
	-o, -Wall, -Wtraditional, -Werror, -Wsystem-headers, -w,
	-pedantic, -pedantic-errors, -std=, -ansi, --help, --target-help, 
	-v, -version.  Update -Wcomment, -Wtrigraphs, -Wundef, 
	-Wexpansion-to-defined, -Wno-endif-labels, -traditional, 
	-traditional-cpp, -trigraphs to merge text previously in GCC manual.
	* doc/invoke.texi (Option Summary): Move -trigraphs, -traditional,
	and -traditional-cpp from C dialect options to preprocessor options.
	(C Dialect Options): Likewise.
	(Warning Options): Delete documentation of -Wcomment, -Wtrigraphs, 
	-Wexpansion-to-defined, -Wundef, and -Wno-endif-labels.

From-SVN: r243923
2016-12-25 19:31:02 -05:00
GCC Administrator 71382babc6 Daily bump.
From-SVN: r243922
2016-12-26 00:16:17 +00:00
GCC Administrator 7e1fe89616 Daily bump.
From-SVN: r243919
2016-12-25 00:16:21 +00:00
Richard Sandiford e7960be786 Make it cheaper to test whether an SSA name is a virtual operand
virtual_operand_p handled SSA names by looking at the flags of the
underlying variable.  This seems to be a relatively common source
of cache misses, mainly because virtual_operand_p is the first thing
tested by is_gimple_reg.

This patch caches the information in the SSA name itself.  Several
flags seem to be free so the patch arbitrarily uses public_flag.

Tested on aarch64-linux-gnu and x86_64-linux-gnu.  It improves
compile time by a small (<1%) but reproducable amount on the
tests I've tried.

gcc/
	* tree-core.h (tree_base): Document the meaning of public_flag
	for SSA names.
	* tree.h (SSA_NAME_IS_VIRTUAL_OPERAND): New macro.
	(SET_SSA_NAME_VAR_OR_IDENTIFIER): Record whether the variable
	is a virtual operand.
	* gimple-expr.h (virtual_operand_p): Use SSA_NAME_IS_VIRTUAL_OPERAND.

From-SVN: r243916
2016-12-24 14:30:18 +00:00
François Dumont 284a35df5d random.tcc: Fix usage of _OutputIteratorConcept.
2016-12-24  François Dumont  <fdumont@gcc.gnu.org>

	* include/ext/random.tcc: Fix usage of _OutputIteratorConcept.

From-SVN: r243915
2016-12-24 14:13:58 +00:00
Jakub Jelinek 6b56d5f57d re PR middle-end/78901 (ICE: verify_gimple failed (error: statement marked for throw in middle of block))
PR middle-end/78901
	* except.c (nothrow_libfn_p): Expect libc_name_p to return
	const struct libc_name_struct *, if it returns NULL, return 0,
	otherwise check c_ver and use flag_isoc99 or flag_isoc11.
	* cfns.gperf: Add %struct-type and libc_name_struct definition.
	For all C89 C library functions add , 89 after the name, add
	C99 C library functions with , 99 and C11 C library functions
	with , 11 suffix.
	* cfns.h: Regenerated.

From-SVN: r243914
2016-12-24 12:15:44 +01:00
GCC Administrator 7b903e2868 Daily bump.
From-SVN: r243913
2016-12-24 00:16:19 +00:00
Andre Vehreschild f19dd7b634 class_assign_1.f08: New test.
gcc/testsuite/ChangeLog:

2016-12-23  Andre Vehreschild  <vehre@gcc.gnu.org>

	* gfortran.dg/class_assign_1.f08: New test.


gcc/fortran/ChangeLog:

2016-12-23  Andre Vehreschild  <vehre@gcc.gnu.org>

	* trans-expr.c (trans_class_assignment): Allocate memory of _vptr->size
        before assigning an allocatable class object.
	(gfc_trans_assignment_1): Flag that (re-)alloc of the class object
	shall be done.

From-SVN: r243909
2016-12-23 11:26:47 +01:00
Toma Tabacu cca8d0b265 MIPS: Cleanup the forcing of assembly output in error tests.
gcc/testsuite

	* gcc.target/mips/oddspreg-2.c (dg-options): Remove dg-skip-if for
	-fno-fat-lto-objects and add the -ffat-lto-objects option, along with
	an explanation for its purpose.
	* gcc.target/mips/oddspreg-3.c (dg-options): Likewise.
	* gcc.target/mips/oddspreg-6.c (dg-options): Likewise.
	* gcc.target/mips/no-dsp-1.c: Add an explanation for the purpose of
	-ffat-lto-objects.
	* gcc.target/mips/pr54240.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
	* gcc.target/mips/soft-float-1.c: Likewise.

From-SVN: r243908
2016-12-23 09:52:43 +00:00
GCC Administrator 1693722010 Daily bump.
From-SVN: r243904
2016-12-23 00:16:16 +00:00
Joseph Myers bef1898cfd * es.po: Update.
From-SVN: r243900
2016-12-22 23:55:31 +00:00
Ian Lance Taylor 28171b9d5d compiler: fix spurious redefinition error for anon struct
Change Struct_type::do_mangled_name to incorporate the field
    names even for hidden symbols. This is needed in cases where
    a package imports a type "S" that has an anonymous struct, e.g.
    
      // imported from some other package
      type S struct {
        X struct{ _ struct{} }
      }
    
    and then defines a local type that uses a structurally identical
    anonymous struct, e.g.
    
      // defined locally
      type T struct {
        U struct{ _ struct{} }
      }
    
    In the case above both types triggered the creation of hash/equal
    methods, but the method names were clashing (since both structs
    had the same mangled name).
    
    Fixes golang/go#18414
    
    Reviewed-on: https://go-review.googlesource.com/34621

From-SVN: r243899
2016-12-22 23:05:02 +00:00
Prathamesh Kulkarni cb66382056 tree-pretty-print.c (dump_generic_node): Change dump format for REALPART_EXPR and IMAGPART_EXPR with TDF_GIMPLE.
2016-12-22  Prathamesh Kulkarni  <prathamesh.kulkarni@linaro.org>

	* tree-pretty-print.c (dump_generic_node): Change dump format for
	REALPART_EXPR and IMAGPART_EXPR with TDF_GIMPLE.

testsuite/
	* gcc.dg/gimplefe-20.c: New test-case.

From-SVN: r243898
2016-12-22 20:30:33 +00:00
Jason Merrill bcf77f8ae6 PR c++/78906 - ICE with member variable template
* pt.c (finish_template_variable): Use most_general_template.

From-SVN: r243897
2016-12-22 15:29:07 -05:00
Jason Merrill 67a5ad7cbd Feature-test macro for P0522R0, matching of template template arguments.
* c-cppbuiltin.c (c_cpp_builtins): Define
	__cpp_template_template_args.

From-SVN: r243896
2016-12-22 15:29:02 -05:00
Jason Merrill dd809fdeca PR c++/78898 - ICE on constructor with TTP
PR c++/42329
	* pt.c (unify): Don't look for a class template from a non-class.

From-SVN: r243890
2016-12-22 10:19:54 -05:00