Commit Graph

139915 Commits

Author SHA1 Message Date
Patrick Palka
8ebca419e8 Improve -Wmisleading-indentation heuristics
gcc/c-family/ChangeLog:

	* c-indentation.c (should_warn_for_misleading_indentation):
	Improve heuristics.

gcc/testsuite/ChangeLog:

	* c-c++-common/Wmisleading-indentation.c: Add more tests.

From-SVN: r226479
2015-08-02 17:39:23 +00:00
Patrick Palka
1a1e101ff5 Remove is_first_nonwhitespace_on_line(), instead improve get_visual_column()
gcc/c-family/ChangeLog:

	* c-indentation.c (get_visual_column): Add parameter first_nws,
	use it.  Update comment documenting the function.
	(is_first_nonwhitespace_on_line): Remove.
	(should_warn_for_misleading_indentation): Replace usage of
	of is_first_nonwhitespace_on_line with get_visual_column.

From-SVN: r226478
2015-08-02 17:35:33 +00:00
Patrick Palka
992118a1f9 Refactor entry point to -Wmisleading-indentation
gcc/c-family/ChangeLog:

	* c-indentation.h (struct token_indent_info): Define.
	(get_token_indent_info): Define.
	(warn_for_misleading_information): Declare.
	* c-common.h (warn_for_misleading_information): Remove.
	* c-identation.c (warn_for_misleading_indentation):
	Change declaration to take three token_indent_infos.  Adjust
	accordingly.
	* c-identation.c (should_warn_for_misleading_indentation):
	Likewise.  Bail out early if the body is a compound statement.
	(guard_tinfo_to_string): Define.

gcc/c/ChangeLog:

	* c-parser.c (c_parser_if_body): Take token_indent_info
	argument. Call warn_for_misleading_indentation even when the
	body is a semicolon.  Extract token_indent_infos corresponding
	to the guard, body and next tokens.  Adjust call to
	warn_for_misleading_indentation accordingly.
	(c_parser_else_body): Likewise.
	(c_parser_if_statement): Likewise.
	(c_parser_while_statement): Likewise.
	(c_parser_for_statement): Likewise.

gcc/cp/ChangeLog:

	* parser.c (cp_parser_selection_statement): Move handling of
	semicolon body to ...
	(cp_parser_implicitly_scoped_statement): .. here.  Call
	warn_for_misleading_indentation even when the body is a
	semicolon.  Extract token_indent_infos corresponding to the
	guard, body and next tokens.  Adjust call to
	warn_for_misleading_indentation accordingly.  Take
	token_indent_info argument.
	(cp_parser_already_scoped_statement): Likewise.
	(cp_parser_selection_statement, cp_parser_iteration_statement):
	Extract a token_indent_info corresponding to the guard token.

From-SVN: r226477
2015-08-02 17:31:55 +00:00
Michael Collison
fea8f6c692 arm.md (*arm_smin_cmp): New pattern.
2015-08-01  Michael Collison  <michael.collison@linaro.org
	    Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

	* gcc/config/arm/arm.md (*arm_smin_cmp): New pattern.
	(*arm_umin_cmp): Likewise.

	* gcc.target/arm/mincmp.c: New test.

From-SVN: r226476
2015-08-02 05:15:55 +00:00
Caroline Tice
b0cca5ecbb re PR bootstrap/66521 (xgcc: cc1plus segfaults when compiling libstdc++-v3/src/c++11/ostream-inst.cc)
Fix PR 66521

libvtv/ChangeLog

2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * Makefile.am: Update to match latest tree.
        * Makefile.in: Regenerate.
        * testsuite/lib/libvtv: Brought up to date.
        * vtv_malloc.cc (VTV_DEBUG): Update function call to match renamed
        function (old bug!).
        * vtv_rts.cc (debug_functions, debug_init, debug_verify_vtable): Update
        initializations to work correctly with VTV_DEBUG defined.

gcc/ChangeLog:

2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * vtable-verify.c (vtbl_mangled_name_types, vtbl_mangled_name_ids): New
        global variables.
        (vtbl_find_mangled_name):  New function.
        (vtbl_register_mangled_name):  New function.
        (vtbl_map_get_node):  If DECL_ASSEMBLER_NAME is "<anon>", look up
        mangled name in mangled name vectors.
        (find_or_create_vtbl_map_node):  Ditto.
        (var_is_used_for_virtual_call_p):  Add recursion_depth parameter;
        update recursion_depth on function entry; pass it to every recursive
        call; automatically exit if depth > 25 (give up looking at that point).
        (verify_bb_vtables):  Initialize recursion_depth and pass it to
        var_is_used_for_virtual_call_p.
        * vtable-verify.h (vtbl_mangbled_name_types, vtbl_mangled_name_ids): New
        global variable decls.
        (vtbl_register_mangled_name): New extern function decl.

gcc/cp/ChangeLog:
2015-08-01  Caroline Tice  <cmtice@google.com>

        PR 66521
        * mangle.c : Add vtable-verify.h to include files.
        (get_mangled_vtable_map_var_name):  If the DECL_ASSEMBLER_NAME
        is "<anon>" get the real mangled name for the class instead, and
        also store the real mangled name in a vector for use later.

From-SVN: r226471
2015-08-01 18:17:39 -07:00
GCC Administrator
68e3e6a259 Daily bump.
From-SVN: r226468
2015-08-02 00:16:12 +00:00
Paul Thomas
28ed836457 re PR fortran/67091 ([OOP] Bad result for type-bound procedures returning pointers to the intrinsic function ASSOCIATED)
2015-08-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/67091
	* trans-intrinsic.c (gfc_conv_associated): Add the pre and post
	blocks for the second argument to se.

2015-08-01  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/67091
	* gfortran.dg/associated_target_6.f03: New test

From-SVN: r226464
2015-08-01 18:37:25 +00:00
Tom de Vries
805134b917 Allow non-overflow ops in reductions
2015-08-01  Tom de Vries  <tom@codesourcery.com>

	* tree.c (operation_can_overflow, operation_no_trapping_overflow): New
	function.
	* tree.h (operation_can_overflow, operation_no_trapping_overflow):
	Declare.
	* tree-vect-loop.c (vect_is_simple_reduction_1): Use
	operation_no_trapping_overflow.  Allow non-overflow operations.
	* graphite-sese-to-poly.c (is_reduction_operation_p): Allow non-overflow
	operations.

	* gcc.dg/autopar/reduc-2char.c (init_arrays): Mark with attribute
	optimize ("-ftree-parallelize-loops=0").
	Add successful scans for 2 detected reductions.	 Add xfail scans for 3
	detected reductions.
	* gcc.dg/autopar/reduc-2short.c: Same.
	* gcc.dg/autopar/reduc-8.c (init_arrays): Mark with attribute
	optimize ("-ftree-parallelize-loops=0").  Add successful scans for 2
	detected reductions.
	* gcc.dg/vect/trapv-vect-reduc-4.c: Update scan to match vectorized min
	and max reductions.

From-SVN: r226463
2015-08-01 08:29:29 +00:00
GCC Administrator
faf4ac3218 Daily bump.
From-SVN: r226462
2015-08-01 00:16:16 +00:00
Ian Lance Taylor
1393eb7608 compiler: Report errors for malformed builtin calls.
Errors reported from malformed builtin calls are handled in a later
    pass than the one in which they are detected.  If a malformed builtin
    call is lowered into an error expression too early, these errors will
    never be reported.
    
    Fixes golang/go#11561.
    
    Reviewed-on: https://go-review.googlesource.com/12778

From-SVN: r226459
2015-07-31 23:17:49 +00:00
Kaz Kojima
1fc642f1a7 re PR target/67049 (sh64-elf: internal compiler error: in df_uses_record, at df-scan.c:3001)
PR target/67049
* config/sh/sh.md (GOTaddr2picreg): Fix typo added with the last change.

From-SVN: r226457
2015-07-31 22:19:51 +00:00
Ian Lance Taylor
04628a1d33 compiler: Check the type in function declarations.
Function declarations don't create a block where the variables listed
    in the parameter list are declared.  Because there are no variables
    declared, the types of the parameter variables is unchecked, allowing
    for invalid values to be used as the type.  This patch adds a special
    case to the check_types pass for function declarations.
    
    Fixes golang/go#11567.
    
    Reviewed-on: https://go-review.googlesource.com/12662

From-SVN: r226456
2015-07-31 22:16:12 +00:00
Ian Lance Taylor
3176040661 compiler: Update unicode tables.
Fixes golang/go#11569.
    
    Reviewed-on: https://go-review.googlesource.com/12652

From-SVN: r226452
2015-07-31 19:11:18 +00:00
Nathan Sidwell
430bcac10d * MAINTAINERS (nvptx): Add self.
From-SVN: r226449
2015-07-31 17:54:31 +00:00
Ian Lance Taylor
2e2fc3bd51 compiler: Don't allow builtin function values.
According to the spec, http://golang.org/ref/spec#Built-in_functions:
    "built-in functions do not have standard Go types, so they can only
    appear in call expressions; they cannot be used as function values."
    
    Fixes golang/go#11570.
    
    Reviewed-on: https://go-review.googlesource.com/12543

From-SVN: r226448
2015-07-31 17:52:38 +00:00
Kyrylo Tkachov
d459fde28f [ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split
* config/arm/arm.md (*if_neg_move): Convert to insn_and_split.
	Enable for TARGET_32BIT.
	(*if_move_neg): Likewise.

From-SVN: r226447
2015-07-31 16:39:35 +00:00
Nick Clifton
c0a5daa401 m32r.c (m32r_attribute_identifier): New function.
* config/m32r/m32r.c (m32r_attribute_identifier): New function.
	Returns true for __model__.
	(TARGET_ATTRIBUTE_TAKES_IDENTIFIER_P): Define.

From-SVN: r226445
2015-07-31 15:55:16 +00:00
Alan Modra
9b015c3690 re PR go/66870 (split stack issues on ppc64le and ppc64)
PR target/66870
	* config/rs6000/rs6000.c (machine_function): Add split_stack_argp_used.
	(rs6000_emit_prologue): Set it.
	(rs6000_set_up_by_prologue): Specify r12 when split_stack_argp_used.

From-SVN: r226443
2015-07-31 23:35:42 +09:30
Marek Polacek
ec043522ff re PR sanitizer/66977 (-fsanitize=shift may introduce uninitialized variables)
PR sanitizer/66977
	* typeck.c (get_member_function_from_ptrfunc): Don't sanitize
	RSHIFT_EXPR.

	* g++.dg/ubsan/pr66977.C: New test.

From-SVN: r226440
2015-07-31 11:12:57 +00:00
Richard Biener
b5d3d7871c fold-const.c (fold_binary_loc): Remove X ^ C1 == C2 -> X == (C1 ^ C2) which is already implemented in match.pd.
2015-07-31  Richard Biener  <rguenther@suse.de>

	* fold-const.c (fold_binary_loc): Remove X ^ C1 == C2
	-> X == (C1 ^ C2) which is already implemented in match.pd.
	Remove redundant dispatching to fold_relational_const.
	Move unordered self and NaN compares ...
	* match.pd: ... as patterns here.  Remove some stray captures
	and add a comment.

From-SVN: r226434
2015-07-31 10:36:56 +00:00
Petr Murzin
f063c61216 Refactoring masked built-in decls to use proper mask type.
gcc/
	* config/i386/i386.c
	(bdesc_special_args): Convert mask type from signed to unsigned for
	masked builtins.
	(ix86_expand_args_builtin): Do not handle UINT_FTYPE_V2DF,
	UINT64_FTYPE_V2DF, UINT64_FTYPE_V4SF, V16QI_FTYPE_V8DI,
	V16HI_FTYPE_V16SI, V16SI_FTYPE_V16SI, V16SF_FTYPE_FLOAT,
	V8HI_FTYPE_V8DI, V8UHI_FTYPE_V8UHI, V8SI_FTYPE_V8DI, V8SF_FTYPE_V8DF,
	V8DI_FTYPE_INT64, V8DI_FTYPE_V4DI, V8DI_FTYPE_V8DI, V8DF_FTYPE_DOUBLE,
	V8DF_FTYPE_V8SI, V16SI_FTYPE_V16SI_V16SI, V16SF_FTYPE_V16SF_V16SI,
	V8DI_FTYPE_V8DI_V8DI, V8DF_FTYPE_V8DF_V8DI, V4SI_FTYPE_V4SF_V4SF,
	V4SF_FTYPE_V4SF_UINT64, V2UDI_FTYPE_V4USI_V4USI, V2DI_FTYPE_V2DF_V2DF,
	V2DF_FTYPE_V2DF_UINT64, V4UDI_FTYPE_V8USI_V8USI, QI_FTYPE_V8DI_V8DI,
	HI_FTYPE_V16SI_V16SI, HI_FTYPE_HI_INT, V16SF_FTYPE_V16SF_V16SF_V16SF,
	V16SF_FTYPE_V16SF_V16SI_V16SF, V16SF_FTYPE_V16SI_V16SF_HI,
	V16SF_FTYPE_V16SI_V16SF_V16SF, V16SI_FTYPE_V16SF_V16SI_HI,
	V8DI_FTYPE_V8SF_V8DI_QI, V8SF_FTYPE_V8DI_V8SF_QI, V8DI_FTYPE_PV4DI,
	V8DF_FTYPE_V8DI_V8DF_QI, V16SI_FTYPE_V16SI_V16SI_V16SI,
	V2DI_FTYPE_V2DI_V2DI_V2DI, V8DI_FTYPE_V8DF_V8DI_QI, V8DF_FTYPE_PV4DF,
	V8SI_FTYPE_V8SI_V8SI_V8SI, V8DF_FTYPE_V8DF_V8DF_V8DF, UINT_FTYPE_V4SF,
	V8DF_FTYPE_V8DF_V8DI_V8DF, V8DF_FTYPE_V8DI_V8DF_V8DF,
	V8DF_FTYPE_V8SF_V8DF_QI, V8DI_FTYPE_V8DI_V8DI_V8DI, V16SF_FTYPE_PV4SF,
	V8SF_FTYPE_V8DF_V8SF_QI, V8SI_FTYPE_V8DF_V8SI_QI, V16SI_FTYPE_PV4SI,
	V2DF_FTYPE_V2DF_V4SF_V2DF_QI, V4SF_FTYPE_V4SF_V2DF_V4SF_QI,
	V8DI_FTYPE_V8DI_SI_V8DI_V8DI, QI_FTYPE_V8DF_V8DF_INT_QI,
	HI_FTYPE_V16SF_V16SF_INT_HI, V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI,
	VOID_FTYPE_PDOUBLE_V2DF_QI, VOID_FTYPE_PFLOAT_V4SF_QI,
	V2DF_FTYPE_PCDOUBLE_V2DF_QI, V4SF_FTYPE_PCFLOAT_V4SF_QI.
	* config/i386/i386-builtin-types.def
	(V16QI_FTYPE_V16SI): Remove.
	(V8DF_FTYPE_V8SI): Ditto.
	(V8HI_FTYPE_V8DI): Ditto.
	(V8SI_FTYPE_V8DI): Ditto.
	(V8SF_FTYPE_V8DF): Ditto.
	(V8SF_FTYPE_V8DF_V8SF_QI): Ditto.
	(V16HI_FTYPE_V16SI): Ditto.
	(V16SF_FTYPE_V16HI): Ditto.
	(V16SF_FTYPE_V16HI_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SI): Ditto.
	(V4DI_FTYPE_V4DI): Ditto.
	(V16SI_FTYPE_V16SF): Ditto.
	(V16SF_FTYPE_FLOAT): Ditto.
	(V8DF_FTYPE_DOUBLE): Ditto.
	(V8DI_FTYPE_INT64): Ditto.
	(V8DI_FTYPE_V4DI): Ditto.
	(V16QI_FTYPE_V8DI): Ditto.
	(UINT_FTYPE_V4SF): Ditto.
	(UINT64_FTYPE_V4SF): Ditto.
	(UINT_FTYPE_V2DF): Ditto.
	(UINT64_FTYPE_V2DF): Ditto.
	(V16SI_FTYPE_V16SI): Ditto.
	(V8DI_FTYPE_V8DI): Ditto.
	(V16SI_FTYPE_PV4SI): Ditto.
	(V16SF_FTYPE_PV4SF): Ditto.
	(V8DI_FTYPE_PV2DI): Ditto.
	(V8DF_FTYPE_PV2DF): Ditto.
	(V4DI_FTYPE_PV2DI): Ditto.
	(V4DF_FTYPE_PV2DF): Ditto.
	(V16SI_FTYPE_PV2SI): Ditto.
	(V16SF_FTYPE_PV2SF): Ditto.
	(V8DI_FTYPE_PV4DI): Ditto.
	(V8DF_FTYPE_PV4DF): Ditto.
	(V8SF_FTYPE_FLOAT): Ditto.
	(V4SF_FTYPE_FLOAT): Ditto.
	(V4DF_FTYPE_DOUBLE): Ditto.
	(V8SF_FTYPE_PV4SF): Ditto.
	(V8SI_FTYPE_PV4SI): Ditto.
	(V4SI_FTYPE_PV2SI): Ditto.
	(V8SF_FTYPE_PV2SF): Ditto.
	(V8SI_FTYPE_PV2SI): Ditto.
	(V16SF_FTYPE_PV8SF): Ditto.
	(V16SI_FTYPE_PV8SI): Ditto.
	(V8DI_FTYPE_V8SF): Ditto.
	(V4DI_FTYPE_V4SF): Ditto.
	(V2DI_FTYPE_V4SF): Ditto.
	(V64QI_FTYPE_QI): Ditto.
	(V32HI_FTYPE_HI): Ditto.
	(V8UHI_FTYPE_V8UHI): Ditto.
	(V16UHI_FTYPE_V16UHI): Ditto.
	(V32UHI_FTYPE_V32UHI): Ditto.
	(V2UDI_FTYPE_V2UDI): Ditto.
	(V4UDI_FTYPE_V4UDI): Ditto.
	(V8UDI_FTYPE_V8UDI): Ditto.
	(V4USI_FTYPE_V4USI): Ditto.
	(V8USI_FTYPE_V8USI): Ditto.
	(V16USI_FTYPE_V16USI): Ditto.
	(V2DF_FTYPE_V2DF_UINT64): Ditto.
	(V2DI_FTYPE_V2DF_V2DF): Ditto.
	(V2UDI_FTYPE_V4USI_V4USI): Ditto.
	(V8DF_FTYPE_V8DF_V8DI): Ditto.
	(V4SF_FTYPE_V4SF_UINT64): Ditto.
	(V4SI_FTYPE_V4SF_V4SF): Ditto.
	(V16SF_FTYPE_V16SF_V16SI): Ditto.
	(V64QI_FTYPE_V32HI_V32HI): Ditto.
	(V32HI_FTYPE_V16SI_V16SI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_V8DI_INT_QI): Ditto.
	(V16SF_FTYPE_V16SF_V16SF_V16SI_INT_HI): Ditto.
	(V32HI_FTYPE_V64QI_V64QI): Ditto.
	(V32HI_FTYPE_V32HI_V32HI): Ditto.
	(V16HI_FTYPE_V16HI_V16HI_INT_V16HI_HI): Ditto.
	(V16SI_FTYPE_V16SI_V4SI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI): Ditto.
	(V16SI_FTYPE_V32HI_V32HI): Ditto.
	(V16SI_FTYPE_V16SI_SI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI): Ditto.
	(V4UDI_FTYPE_V8USI_V8USI): Ditto.
	(V8DI_FTYPE_V16SI_V16SI): Ditto.
	(V8DI_FTYPE_V8DI_V2DI): Ditto.
	(QI_FTYPE_QI): Ditto.
	(SI_FTYPE_SI): Ditto.
	(DI_FTYPE_DI): Ditto.
	(QI_FTYPE_QI_QI): Ditto.
	(QI_FTYPE_QI_INT): Ditto.
	(HI_FTYPE_HI_INT): Ditto.
	(SI_FTYPE_SI_INT): Ditto.
	(DI_FTYPE_DI_INT): Ditto.
	(HI_FTYPE_V16QI_V16QI): Ditto.
	(SI_FTYPE_V32QI_V32QI): Ditto.
	(DI_FTYPE_V64QI_V64QI): Ditto.
	(QI_FTYPE_V8HI_V8HI): Ditto.
	(HI_FTYPE_V16HI_V16HI): Ditto.
	(SI_FTYPE_V32HI_V32HI): Ditto.
	(QI_FTYPE_V4SI_V4SI): Ditto.
	(QI_FTYPE_V8SI_V8SI): Ditto.
	(QI_FTYPE_V2DI_V2DI): Ditto.
	(QI_FTYPE_V4DI_V4DI): Ditto.
	(QI_FTYPE_V8DI_V8DI): Ditto.
	(HI_FTYPE_V16SI_V16SI): Ditto.
	(HI_FTYPE_V16SI_V16SI_INT_HI): Ditto.
	(QI_FTYPE_V8DF_V8DF_INT_QI): Ditto.
	(HI_FTYPE_V16SF_V16SF_INT_HI): Ditto.
	(V32HI_FTYPE_V32HI_V32HI_V32HI): Ditto.
	(V4SF_FTYPE_V4SF_V2DF_V4SF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_V8DF): Ditto.
	(V16SF_FTYPE_V16SF_V16SF_V16SF): Ditto.
	(V8DF_FTYPE_V8SF_V8DF_QI): Ditto.
	(V8DI_FTYPE_V8DF_V8DI_QI): Ditto.
	(V8DF_FTYPE_V8DI_V8DF_V8DF): Ditto.
	(V2DF_FTYPE_V2DF_V4SF_V2DF_QI): Ditto.
	(V16SF_FTYPE_V16SI_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SI_V16SF_V16SF): Ditto.
	(V8SI_FTYPE_V8DF_V8SI_QI): Ditto.
	(V8DI_FTYPE_PCCHAR_V8DI_QI): Ditto.
	(V8SF_FTYPE_PCFLOAT_V8SF_QI): Ditto.
	(V4SF_FTYPE_PCFLOAT_V4SF_QI): Ditto.
	(V4DF_FTYPE_PCDOUBLE_V4DF_QI): Ditto.
	(V2DF_FTYPE_PCDOUBLE_V2DF_QI): Ditto.
	(V8SI_FTYPE_PCCHAR_V8SI_QI): Ditto.
	(V4SI_FTYPE_PCCHAR_V4SI_QI): Ditto.
	(V4DI_FTYPE_PCCHAR_V4DI_QI): Ditto.
	(V2DI_FTYPE_PCCHAR_V2DI_QI): Ditto.
	(V16SF_FTYPE_PCV8SF_V16SF_HI): Ditto.
	(V16SI_FTYPE_PCV8SI_V16SI_HI): Ditto.
	(V8DF_FTYPE_PCV2DF_V8DF_QI): Ditto.
	(V8SF_FTYPE_PCV4SF_V8SF_QI): Ditto.
	(V8DI_FTYPE_PCV2DI_V8DI_QI): Ditto.
	(V8SI_FTYPE_PCV4SI_V8SI_QI): Ditto.
	(V4DF_FTYPE_PCV2DF_V4DF_QI): Ditto.
	(V4DI_FTYPE_PCV2DI_V4DI_QI): Ditto.
	(VOID_FTYPE_PDOUBLE_V2DF_QI): Ditto.
	(VOID_FTYPE_PFLOAT_V4SF_QI): Ditto.
	(V16SI_FTYPE_V16SF_V16SI_HI): Ditto.
	(V8DI_FTYPE_V8SF_V8DI_QI): Ditto.
	(V8SF_FTYPE_V8DI_V8SF_QI): Ditto.
	(V8DF_FTYPE_V8DI_V8DF_QI): Ditto.
	(V2DF_FTYPE_V2DF_V2DF_V2DI): Ditto.
	(V4SF_FTYPE_V4SF_V4SF_V4SI): Ditto.
	(V2UDI_FTYPE_V2UDI_V2UDI_V2UDI): Ditto.
	(V4USI_FTYPE_V4USI_V4USI_V4USI): Ditto.
	(V8UHI_FTYPE_V8UHI_V8UHI_V8UHI): Ditto.
	(V16UQI_FTYPE_V16UQI_V16UQI_V16UQI): Ditto.
	(V4DF_FTYPE_V4DF_V4DF_V4DI): Ditto.
	(V8SF_FTYPE_V8SF_V8SF_V8SI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_V8DI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI_V16SI): Ditto.
	(V2DF_FTYPE_V2DF_V2DI_V2DF): Ditto.
	(V4DF_FTYPE_V4DF_V4DI_V4DF): Ditto.
	(V8DF_FTYPE_V8DF_V8DI_V8DF): Ditto.
	(V4SF_FTYPE_V4SF_V4SI_V4SF): Ditto.
	(V8SF_FTYPE_V8SF_V8SI_V8SF): Ditto.
	(V16SF_FTYPE_V16SF_V16SI_V16SF): Ditto.
	(V8DI_FTYPE_V8DI_SI_V8DI_V8DI): Ditto.
	(PVOID_FTYPE_PVOID_PVOID_ULONG): Ditto.
	(V4SF_FTYPE_V2DF_V4SF_QI): Convert mask type from signed to unsigned.
	(V4SF_FTYPE_V4DF_V4SF_QI): Ditto.
	(V4SF_FTYPE_V8HI_V4SF_QI): Ditto.
	(V8SF_FTYPE_V8HI_V8SF_QI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI_HI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_QI): Ditto.
	(V2DF_FTYPE_V4DF_INT_V2DF_QI): Ditto.
	(V2DF_FTYPE_V8DF_INT_V2DF_QI): Ditto.
	(V2DI_FTYPE_V2DI_INT_V2DI_QI): Ditto.
	(V4DF_FTYPE_V8DF_INT_V4DF_QI): Ditto.
	(V4SF_FTYPE_V8SF_INT_V4SF_QI): Ditto.
	(V4SI_FTYPE_V2DF_V4SI_QI): Ditto.
	(V4SI_FTYPE_V4SI_INT_V4SI_QI): Ditto.
	(V4SI_FTYPE_V8HI_V8HI_V4SI_QI): Ditto.
	(V4SI_FTYPE_V8SI_INT_V4SI_QI): Ditto.
	(V8HI_FTYPE_V16QI_V16QI_V8HI_QI): Ditto.
	(V8HI_FTYPE_V8SF_INT_V8HI_QI): Ditto.
	(V8HI_FTYPE_V4SF_INT_V8HI_QI): Ditto.
	(V8SF_FTYPE_V16SF_INT_V8SF_QI): Ditto.
	(V4SF_FTYPE_V16SF_INT_V4SF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V2DF_INT_V8DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V4DF_INT_V8DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_INT_V8DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_INT_V8DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V4DF_V4DI_INT_QI): Ditto.
	(V2DF_FTYPE_V2DF_V2DF_V2DI_INT_QI): Ditto.
	(V16SF_FTYPE_V16SF_V16SF_INT_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SF_INT_V16SF_HI): Ditto.
	(V16SI_FTYPE_V16SI_V4SI_INT_V16SI_HI): Ditto.
	(V8SF_FTYPE_V8SF_V8SF_V8SI_INT_QI): Ditto.
	(V4SF_FTYPE_V4SF_V4SF_V4SI_INT_QI): Ditto.
	(V16SF_FTYPE_V16SF_V4SF_INT_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SF_V8SF_INT_V16SF_HI): Ditto.
	(V16HI_FTYPE_V32QI_V32QI_V16HI_HI): Ditto.
	(V32HI_FTYPE_V64QI_V64QI_V32HI_SI): Ditto.
	(V16HI_FTYPE_V16SF_INT_V16HI_HI): Ditto.
	(V16SI_FTYPE_V16SI_V8SI_INT_V16SI_HI): Ditto.
	(V4SI_FTYPE_V16SI_INT_V4SI_QI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI_INT_V16SI_HI): Ditto.
	(V8SI_FTYPE_V16HI_V16HI_V8SI_QI): Ditto.
	(V16SI_FTYPE_V32HI_V32HI_V16SI_HI): Ditto.
	(V8SI_FTYPE_V8SI_INT_V8SI_QI): Ditto.
	(V8SI_FTYPE_V16SI_INT_V8SI_QI): Ditto.
	(V16SI_FTYPE_V16SI_V4SI_V16SI_HI): Ditto.
	(V16SI_FTYPE_V16SI_INT_V16SI_HI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_QI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_INT_V8DI_DI): Ditto.
	(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_SI): Ditto.
	(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_HI): Ditto.
	(V8DI_FTYPE_V8DI_V2DI_INT_V8DI_QI): Ditto.
	(V8DI_FTYPE_V8DI_V4DI_INT_V8DI_QI): Ditto.
	(V4DI_FTYPE_V8DI_INT_V4DI_QI): Ditto.
	(V8DI_FTYPE_V8DI_V2DI_V8DI_QI): Ditto.
	(V8DI_FTYPE_V8DI_INT_V8DI_QI): Ditto.
	(V4DI_FTYPE_V4DI_INT_V4DI_QI): Ditto.
	(V2DI_FTYPE_V4DI_INT_V2DI_QI): Ditto.
	(V2DI_FTYPE_V8DI_INT_V2DI_QI): Ditto.
	(HI_FTYPE_HI): Ditto.
	(HI_FTYPE_V16QI): Ditto.
	(SI_FTYPE_V32QI): Ditto.
	(DI_FTYPE_V64QI): Ditto.
	(QI_FTYPE_V8HI): Ditto.
	(HI_FTYPE_V16HI): Ditto.
	(SI_FTYPE_V32HI): Ditto.
	(QI_FTYPE_V4SI): Ditto.
	(QI_FTYPE_V8SI): Ditto.
	(HI_FTYPE_V16SI): Ditto.
	(QI_FTYPE_V2DI): Ditto.
	(QI_FTYPE_V4DI): Ditto.
	(QI_FTYPE_V8DI): Ditto.
	(V16QI_FTYPE_HI): Ditto.
	(V32QI_FTYPE_SI): Ditto.
	(V64QI_FTYPE_DI): Ditto.
	(V8HI_FTYPE_QI): Ditto.
	(V16HI_FTYPE_HI): Ditto.
	(V32HI_FTYPE_SI): Ditto.
	(V4SI_FTYPE_QI): Ditto.
	(V4SI_FTYPE_HI): Ditto.
	(V8SI_FTYPE_QI): Ditto.
	(V8SI_FTYPE_HI): Ditto.
	(V2DI_FTYPE_QI): Ditto.
	(V4DI_FTYPE_QI): Ditto.
	(HI_FTYPE_HI_HI): Ditto.
	(SI_FTYPE_SI_SI): Ditto.
	(DI_FTYPE_DI_DI): Ditto.
	(HI_FTYPE_V16QI_V16QI_HI): Ditto.
	(HI_FTYPE_V16QI_V16QI_INT_HI): Ditto.
	(SI_FTYPE_V32QI_V32QI_SI): Ditto.
	(SI_FTYPE_V32QI_V32QI_INT_SI): Ditto.
	(DI_FTYPE_V64QI_V64QI_DI): Ditto.
	(DI_FTYPE_V64QI_V64QI_INT_DI): Ditto.
	(QI_FTYPE_V8HI_V8HI_QI): Ditto.
	(QI_FTYPE_V8HI_V8HI_INT_QI): Ditto.
	(HI_FTYPE_V16HI_V16HI_HI): Ditto.
	(HI_FTYPE_V16HI_V16HI_INT_HI): Ditto.
	(SI_FTYPE_V32HI_V32HI_SI): Ditto.
	(SI_FTYPE_V32HI_V32HI_INT_SI): Ditto.
	(QI_FTYPE_V4SI_V4SI_QI): Ditto.
	(QI_FTYPE_V4SI_V4SI_INT_QI): Ditto.
	(QI_FTYPE_V8SI_V8SI_QI): Ditto.
	(QI_FTYPE_V8SI_V8SI_INT_QI): Ditto.
	(QI_FTYPE_V2DI_V2DI_QI): Ditto.
	(QI_FTYPE_V2DI_V2DI_INT_QI): Ditto.
	(QI_FTYPE_V4DI_V4DI_QI): Ditto.
	(QI_FTYPE_V4DI_V4DI_INT_QI): Ditto.
	(QI_FTYPE_V8DI_V8DI_QI): Ditto.
	(HI_FTYPE_V16SI_V16SI_HI): Ditto.
	(QI_FTYPE_V8DI_V8DI_INT): Ditto.
	(QI_FTYPE_V8DI_V8DI_INT_QI): Ditto.
	(HI_FTYPE_V16SI_V16SI_INT): Ditto.
	(HI_FTYPE_V16SI_V16SI_INT _HI): Ditto.
	(QI_FTYPE_V8DF_V8DF_INT): Ditto.
	(QI_FTYPE_V8DF_V8DF_INT_QI_INT): Ditto.
	(HI_FTYPE_V16SF_V16SF_INT): Ditto.
	(HI_FTYPE_V16SF_V16SF_INT_HI_INT): Ditto.
	(QI_FTYPE_V2DF_V2DF_INT): Ditto.
	(QI_FTYPE_V2DF_V2DF_INT_QI): Ditto.
	(QI_FTYPE_V2DF_V2DF_INT_QI_INT): Ditto.
	(QI_FTYPE_V4SF_V4SF_INT): Ditto.
	(QI_FTYPE_V4SF_V4SF_INT_QI): Ditto.
	(QI_FTYPE_V4SF_V4SF_INT_QI_INT): Ditto.
	(V16SI_FTYPE_HI): Ditto.
	(V8DI_FTYPE_QI): Ditto.
	(V2DF_FTYPE_V2DI_V2DF_V2DF_QI): Ditto.
	(V2DF_FTYPE_V2DF_V2DI_V2DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V2DF_INT_V4DF_QI): Ditto.
	(V4SF_FTYPE_V4SI_V4SF_V4SF_QI): Ditto.
	(V4SF_FTYPE_V4SF_V4SI_V4SF_QI): Ditto.
	(V4SF_FTYPE_V4SF_V4SF_V4SF_QI): Ditto.
	(V8SF_FTYPE_V8SF_V4SF_INT_V8SF_QI): Ditto.
	(V8SI_FTYPE_V8SI_V4SI_INT_V8SI_QI): Ditto.
	(V4DI_FTYPE_V4DI_V2DI_INT_V4DI_QI): Ditto.
	(V2DF_FTYPE_V2DF_V2DF_QI): Ditto.
	(V2DF_FTYPE_V4SF_V2DF_QI): Ditto.
	(V2DF_FTYPE_V4SI_V2DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V4DF_QI): Ditto.
	(V4DF_FTYPE_V4SF_V4DF_QI): Ditto.
	(V4DF_FTYPE_V4SI_V4DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_QI): Ditto.
	(V8DF_FTYPE_V8SI_V8DF_QI): Ditto.
	(V2DI_FTYPE_V4SI_V2DI_QI): Ditto.
	(V2DI_FTYPE_V8HI_V2DI_QI): Ditto.
	(V4DI_FTYPE_V4DF_V4DI_QI): Ditto.
	(V2DI_FTYPE_V2DF_V2DI_QI): Ditto.
	(V2DI_FTYPE_V2DI_V2DI_V2DI_QI): Ditto.
	(V2DI_FTYPE_V2DI_V2DI_INT_V2DI_QI): Ditto.
	(V4DI_FTYPE_V4DI_V4DI_V4DI_QI): Ditto.
	(V4DI_FTYPE_V4DI_V4DI_INT_V4DI_QI): Ditto.
	(V8DI_FTYPE_V8SI_V8DI_QI): Ditto.
	(V8DI_FTYPE_V8HI_V8DI_QI): Ditto.
	(V8DI_FTYPE_V16QI_V8DI_QI): Ditto.
	(V2DI_FTYPE_V16QI_V2DI_QI): Ditto.
	(V4DI_FTYPE_V16QI_V4DI_QI): Ditto.
	(V4DI_FTYPE_V4DI_V4DI_QI): Ditto.
	(V4DI_FTYPE_V4SI_V4DI_QI): Ditto.
	(V4DI_FTYPE_V8HI_V4DI_QI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_V8DI_QI): Ditto.
	(V8DF_FTYPE_V8DI_V8DF_V8DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DI_V8DF_QI): Ditto.
	(V4DF_FTYPE_V4DI_V4DF_V4DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V4DI_V4DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V4DF_V4DF_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_V8DF_QI): Ditto.
	(V16QI_FTYPE_V16QI_V16QI_V16QI_HI): Ditto.
	(V16HI_FTYPE_V16HI_V16HI_V16HI_HI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI_V16SI_HI): Ditto.
	(V2DF_FTYPE_V2DF_V2DF_V2DF_QI): Ditto.
	(V32HI_FTYPE_V32HI_V32HI_V32HI_SI): Ditto.
	(V64QI_FTYPE_V64QI_V64QI_V64QI_DI): Ditto.
	(V32QI_FTYPE_V32QI_V32QI_V32QI_SI): Ditto.
	(V8HI_FTYPE_V8HI_V8HI_V8HI_QI): Ditto.
	(V4SF_FTYPE_V4SF_V4SF_QI): Ditto.
	(V4SF_FTYPE_V4SI_V4SF_QI): Ditto.
	(V8SF_FTYPE_V8SF_V8SF_QI): Ditto.
	(V8SF_FTYPE_V8SI_V8SF_QI): Ditto.
	(V16SF_FTYPE_V16SF_V16SF_HI): Ditto.
	(V4SI_FTYPE_V16QI_V4SI_QI): Ditto.
	(V4SI_FTYPE_V8HI_V4SI_QI): Ditto.
	(V8SI_FTYPE_V8SI_V8SI_QI): Ditto.
	(V8SI_FTYPE_V8HI_V8SI_QI): Ditto.
	(V8SI_FTYPE_V16QI_V8SI_QI): Ditto.
	(V4SI_FTYPE_V4SI_V4SI_V4SI_QI): Ditto.
	(V4SI_FTYPE_V4SI_V4SI_INT_V4SI_QI): Ditto.
	(V8SF_FTYPE_V8SF_V8SF_V8SF_QI): Ditto.
	(V8SF_FTYPE_V8SI_V8SF_V8SF_QI): Ditto.
	(V8SF_FTYPE_V8SF_V8SI_V8SF_QI): Ditto.
	(V8SI_FTYPE_V8SI_V8SI_V8SI_QI): Ditto.
	(V8SI_FTYPE_V8SI_V8SI_INT_V8SI_QI): Ditto.
	(V16SF_FTYPE_V16SF_V16SF_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SI_V16SF_V16SF_HI): Ditto.
	(V16SF_FTYPE_V16SF_V16SI_V16SF_HI): Ditto.
	(V16SF_FTYPE_V8SF_V16SF_HI): Ditto.
	(V16SF_FTYPE_V4SF_V16SF_HI): Ditto.
	(V8DF_FTYPE_V4DF_V8DF_QI): Ditto.
	(V8DF_FTYPE_V2DF_V8DF_QI): Ditto.
	(V16SI_FTYPE_V8SI_V16SI_HI): Ditto.
	(V16SI_FTYPE_V4SI_V16SI_HI): Ditto.
	(V16SI_FTYPE_SI_V16SI_HI): Ditto.
	(V16SI_FTYPE_V16HI_V16SI_HI): Ditto.
	(V16SI_FTYPE_V16QI_V16SI_HI): Ditto.
	(V8DI_FTYPE_V4DI_V8DI_QI): Ditto.
	(V4SI_FTYPE_V4DF_V4SI_QI): Ditto.
	(V8DI_FTYPE_V2DI_V8DI_QI): Ditto.
	(V8DI_FTYPE_DI_V8DI_QI): Ditto.
	(V16QI_FTYPE_V16SI_V16QI_HI): Ditto.
	(V16QI_FTYPE_V8DI_V16QI_QI): Ditto.
	(V32HI_FTYPE_V32HI_V32HI_SI): Ditto.
	(V32HI_FTYPE_V32QI_V32HI_SI): Ditto.
	(V16HI_FTYPE_V16HI_V16HI_HI): Ditto.
	(V16HI_FTYPE_V16QI_V16HI_HI): Ditto.
	(V8HI_FTYPE_V16QI_V8HI_QI): Ditto.
	(V8SF_FTYPE_V4SF_V8SF_QI): Ditto.
	(V4DF_FTYPE_V2DF_V4DF_QI): Ditto.
	(V8SI_FTYPE_V4SI_V8SI_QI): Ditto.
	(V8SI_FTYPE_SI_V8SI_QI): Ditto.
	(V4SI_FTYPE_V4SI_V4SI_QI): Ditto.
	(V4SI_FTYPE_SI_V4SI_QI): Ditto.
	(V4DI_FTYPE_V2DI_V4DI_QI): Ditto.
	(V4DI_FTYPE_DI_V4DI_QI): Ditto.
	(V2DI_FTYPE_V2DI_V2DI_QI): Ditto.
	(V2DI_FTYPE_DI_V2DI_QI): Ditto.
	(V64QI_FTYPE_V64QI_V64QI_DI): Ditto.
	(V64QI_FTYPE_V16QI_V64QI_DI): Ditto.
	(V64QI_FTYPE_QI_V64QI_DI): Ditto.
	(V32QI_FTYPE_V32QI_V32QI_SI): Ditto.
	(V32QI_FTYPE_V16QI_V32QI_SI): Ditto.
	(V32QI_FTYPE_QI_V32QI_SI): Ditto.
	(V16QI_FTYPE_V16QI_V16QI_HI): Ditto.
	(V16QI_FTYPE_QI_V16QI_HI): Ditto.
	(V32HI_FTYPE_V8HI_V32HI_SI): Ditto.
	(V32HI_FTYPE_HI_V32HI_SI): Ditto.
	(V16HI_FTYPE_V8HI_V16HI_HI): Ditto.
	(V16HI_FTYPE_HI_V16HI_HI): Ditto.
	(V8HI_FTYPE_V8HI_V8HI_QI): Ditto.
	(V8HI_FTYPE_HI_V8HI_QI): Ditto.
	(V64QI_FTYPE_PCV64QI_V64QI_DI): Ditto.
	(V32HI_FTYPE_PCV32HI_V32HI_SI): Ditto.
	(V32QI_FTYPE_PCV32QI_V32QI_SI): Ditto.
	(V16SF_FTYPE_PCV16SF_V16SF_HI): Ditto.
	(V8DF_FTYPE_PCV8DF_V8DF_QI): Ditto.
	(V16SI_FTYPE_PCV16SI_V16SI_HI): Ditto.
	(V16HI_FTYPE_PCV16HI_V16HI_HI): Ditto.
	(V16QI_FTYPE_PCV16QI_V16QI_HI): Ditto.
	(V8SF_FTYPE_PCV8SF_V8SF_QI): Ditto.
	(V8DI_FTYPE_PCV8DI_V8DI_QI): Ditto.
	(V8SI_FTYPE_PCV8SI_V8SI_QI): Ditto.
	(V8HI_FTYPE_PCV8HI_V8HI_QI): Ditto.
	(V4DF_FTYPE_PCV4DF_V4DF_QI): Ditto.
	(V4SF_FTYPE_PCV4SF_V4SF_QI): Ditto.
	(V4DI_FTYPE_PCV4DI_V4DI_QI): Ditto.
	(V4SI_FTYPE_PCV4SI_V4SI_QI): Ditto.
	(V2DF_FTYPE_PCV2DF_V2DF_QI): Ditto.
	(V2DI_FTYPE_PCV2DI_V2DI_QI): Ditto.
	(V16HI_FTYPE_V16SI_V16HI_HI): Ditto.
	(V8SI_FTYPE_V8DI_V8SI_QI): Ditto.
	(V8HI_FTYPE_V8DI_V8HI_QI): Ditto.
	(V16QI_FTYPE_V8HI_V16QI_QI): Ditto.
	(V16QI_FTYPE_V16HI_V16QI_HI): Ditto.
	(V16QI_FTYPE_V4SI_V16QI_QI): Ditto.
	(V16QI_FTYPE_V8SI_V16QI_QI): Ditto.
	(V8HI_FTYPE_V4SI_V8HI_QI): Ditto.
	(V8HI_FTYPE_V8SI_V8HI_QI): Ditto.
	(V16QI_FTYPE_V2DI_V16QI_QI): Ditto.
	(V16QI_FTYPE_V4DI_V16QI_QI): Ditto.
	(V8HI_FTYPE_V2DI_V8HI_QI): Ditto.
	(V8HI_FTYPE_V4DI_V8HI_QI): Ditto.
	(V4SI_FTYPE_V2DI_V4SI_QI): Ditto.
	(V4SI_FTYPE_V4DI_V4SI_QI): Ditto.
	(V32QI_FTYPE_V32HI_V32QI_SI): Ditto.
	(V2DF_FTYPE_V2DF_INT_V2DF_QI): Ditto.
	(V4DF_FTYPE_V4DF_INT_V4DF_QI): Ditto.
	(V4SF_FTYPE_V4SF_INT_V4SF_QI): Ditto.
	(V8SF_FTYPE_V8SF_INT_V8SF_QI): Ditto.
	(V4DF_FTYPE_V4DF_V4DF_INT_V4DF_QI): Ditto.
	(V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI): Ditto.
	(V8SF_FTYPE_V8SF_V8SF_INT_V8SF_QI): Ditto.
	(V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI): Ditto.
	(VOID_FTYPE_PV8DF_V8DF_QI): Ditto.
	(VOID_FTYPE_PV8SI_V8DI_QI): Ditto.
	(VOID_FTYPE_PV8HI_V8DI_QI): Ditto.
	(VOID_FTYPE_PV8HI_V4DI_QI): Ditto.
	(VOID_FTYPE_PV8HI_V2DI_QI): Ditto.
	(VOID_FTYPE_PV4SI_V4DI_QI): Ditto.
	(VOID_FTYPE_PV4SI_V2DI_QI): Ditto.
	(VOID_FTYPE_PV8HI_V8SI_QI): Ditto.
	(VOID_FTYPE_PV8HI_V4SI_QI): Ditto.
	(VOID_FTYPE_PV4DF_V4DF_QI): Ditto.
	(VOID_FTYPE_PV2DF_V2DF_QI): Ditto.
	(VOID_FTYPE_PV16SF_V16SF_HI): Ditto.
	(VOID_FTYPE_PV8SF_V8SF_QI): Ditto.
	(VOID_FTYPE_PV4SF_V4SF_QI): Ditto.
	(VOID_FTYPE_PV8DI_V8DI_QI): Ditto.
	(VOID_FTYPE_PV4DI_V4DI_QI): Ditto.
	(VOID_FTYPE_PV2DI_V2DI_QI): Ditto.
	(VOID_FTYPE_PV16SI_V16SI_HI): Ditto.
	(VOID_FTYPE_PV16HI_V16SI_HI): Ditto.
	(VOID_FTYPE_PV16QI_V16SI_HI): Ditto.
	(VOID_FTYPE_PV16QI_V8SI_QI): Ditto.
	(VOID_FTYPE_PV16QI_V4SI_QI): Ditto.
	(VOID_FTYPE_PV16QI_V8DI_QI): Ditto.
	(VOID_FTYPE_PV16QI_V4DI_QI): Ditto.
	(VOID_FTYPE_PV16QI_V2DI_QI): Ditto.
	(VOID_FTYPE_PV8SI_V8SI_QI): Ditto.
	(VOID_FTYPE_PV4SI_V4SI_QI): Ditto.
	(VOID_FTYPE_PV32HI_V32HI_SI): Ditto.
	(VOID_FTYPE_PV16HI_V16HI_HI): Ditto.
	(VOID_FTYPE_PV8HI_V8HI_QI): Ditto.
	(VOID_FTYPE_PV64QI_V64QI_DI): Ditto.
	(VOID_FTYPE_PV32QI_V32QI_SI): Ditto.
	(VOID_FTYPE_PV16QI_V16QI_HI): Ditto.
	(V8DI_FTYPE_V8DI_V8DI_V8DI_INT_QI): Ditto.
	(V8SI_FTYPE_V8SF_V8SI_QI): Ditto.
	(V4SI_FTYPE_V4SF_V4SI_QI): Ditto.
	(V4DI_FTYPE_V4SF_V4DI_QI): Ditto.
	(V2DI_FTYPE_V4SF_V2DI_QI): Ditto.
	(V4SF_FTYPE_V4DI_V4SF_QI): Ditto.
	(V4SF_FTYPE_V2DI_V4SF_QI): Ditto.
	(V4DF_FTYPE_V4DI_V4DF_QI): Ditto.
	(V2DF_FTYPE_V2DI_V2DF_QI): Ditto.
	(V32HI_FTYPE_V32HI_INT_V32HI_SI): Ditto.
	(V32HI_FTYPE_V32HI_V8HI_V32HI_SI): Ditto.
	(V16HI_FTYPE_V16HI_INT_V16HI_HI): Ditto.
	(V16HI_FTYPE_V16HI_V8HI_V16HI_HI): Ditto.
	(V8HI_FTYPE_V8HI_INT_V8HI_QI): Ditto.
	(V32HI_FTYPE_V64QI_V64QI_INT_V32HI_SI): Ditto.
	(V16HI_FTYPE_V32QI_V32QI_INT_V16HI_HI): Ditto.
	(V8HI_FTYPE_V16QI_V16QI_INT_V8HI_QI): Ditto.
	(V64QI_FTYPE_V32HI_V32HI_V64QI_DI): Ditto.
	(V32QI_FTYPE_V16HI_V16HI_V32QI_SI): Ditto.
	(V16QI_FTYPE_V8HI_V8HI_V16QI_HI): Ditto.
	(V32HI_FTYPE_V16SI_V16SI_V32HI_SI): Ditto.
	(V16HI_FTYPE_V8SI_V8SI_V16HI_HI): Ditto.
	(V8HI_FTYPE_V4SI_V4SI_V8HI_QI): Ditto.
	(V8DI_FTYPE_V16SI_V16SI_V8DI_QI): Ditto.
	(V4DI_FTYPE_V8SI_V8SI_V4DI_QI): Ditto.
	(V2DI_FTYPE_V4SI_V4SI_V2DI_QI): Ditto.
	(V16SI_FTYPE_V16SI_V16SI_V16SI_INT_HI): Ditto.
	(V8SI_FTYPE_V8SI_V8SI_V8SI_INT_QI): Ditto.
	(V4DI_FTYPE_V4DI_V4DI_V4DI_INT_QI): Ditto.
	(V4SI_FTYPE_V4SI_V4SI_V4SI_INT_QI): Ditto.
	(V2DI_FTYPE_V2DI_V2DI_V2DI_INT_QI): Ditto.
	(V8SI_FTYPE_V8SI_V4SI_V8SI_QI): Ditto.
	(V4DI_FTYPE_V4DI_V2DI_V4DI_QI): Ditto.
	(QI_FTYPE_V4DF_V4DF_INT_QI): Ditto.
	(QI_FTYPE_V8SF_V8SF_INT_QI): Ditto.
	(QI_FTYPE_V8DF_INT_QI): Ditto.
	(QI_FTYPE_V4DF_INT_QI): Ditto.
	(QI_FTYPE_V2DF_INT_QI): Ditto.
	(HI_FTYPE_V16SF_INT_HI): Ditto.
	(QI_FTYPE_V8SF_INT_QI): Ditto.
	(QI_FTYPE_V4SF_INT_QI): Ditto.
	(V8DF_FTYPE_V8DF_V8DF_V8DF_QI_INT): Ditto.

From-SVN: r226431
2015-07-31 09:14:07 +00:00
Richard Biener
c7580f6e8e gimple-fold.c (fold_gimple_assign): Remove folding of GIMPLE_BINARY_RHS.
2015-07-31  Richard Biener  <rguenther@suse.de>

	* gimple-fold.c (fold_gimple_assign): Remove folding of
	GIMPLE_BINARY_RHS.

From-SVN: r226429
2015-07-31 07:29:55 +00:00
Andreas Schwab
cb3306e5bf go-lang.c (go_langhook_init_options_struct): Don't set x_flag_split_stack.
* go-lang.c (go_langhook_init_options_struct): Don't set
x_flag_split_stack.
(go_langhook_post_options): Set it here instead.

From-SVN: r226428
2015-07-31 07:08:20 +00:00
Tom de Vries
e67d7a1ea1 Don't cancel loop tree in parloops
2015-07-31  Tom de Vries  <tom@codesourcery.com>

	PR tree-optimization/66846
	* omp-low.c (expand_omp_taskreg) [ENABLE_CHECKING]: Call
	verify_loop_structure for child_cfun if !LOOPS_NEED_FIXUP.
	(expand_omp_target) [ENABLE_CHECKING]: Same.
	(execute_expand_omp) [ENABLE_CHECKING]: Call verify_loop_structure for
	cfun if !LOOPS_NEED_FIXUP.
	(expand_omp_for_static_nochunk): Handle simple latch bb.  Handle case
	that omp_for already has its own loop struct.
	* tree-parloops.c (create_phi_for_local_result)
	(create_call_for_reduction): Handle simple latch bb.
	(create_parallel_loop): Add simple latch bb to preserve
	LOOPS_HAVE_SIMPLE_LATCHES.  Record new exit.  Handle simple latch bb.
	(gen_parallel_loop): Remove call to cancel_loop_tree.
	(parallelize_loops): Skip loops that are inner loops of parallelized
	loops.
	(pass_parallelize_loops::execute) [ENABLE_CHECKING]: Call
	verify_loop_structure.

From-SVN: r226427
2015-07-31 06:26:44 +00:00
Joseph Myers
048e62c34a * sv.po: Update.
From-SVN: r226425
2015-07-31 01:49:18 +01:00
Joseph Myers
2e6726ba95 * sv.po: Update.
From-SVN: r226423
2015-07-31 01:48:04 +01:00
GCC Administrator
123aa12a56 Daily bump.
From-SVN: r226422
2015-07-31 00:16:12 +00:00
Anatoly Sokolov
1a31dcd014 [V850] Hookize LIBCALL_VALUE
From-SVN: r226418
2015-07-31 00:36:18 +03:00
Anatoly Sokolov
3403a1a959 Use lowpart_subreg instead of simplify_gen_subreg
From-SVN: r226417
2015-07-31 00:25:29 +03:00
Jason Merrill
e8fa381741 c-pretty-print.c (unary_expression): Don't print '*' for reference decay.
* c-pretty-print.c (unary_expression) [INDIRECT_REF]: Don't print
	'*' for reference decay.

From-SVN: r226410
2015-07-30 15:16:23 -04:00
Uros Bizjak
e2e34ed0c9 * gcc.target/i386/pr66648.c: Move to correct place.
From-SVN: r226409
2015-07-30 18:13:02 +02:00
Alan Lawrence
110d61da1d [AArch64] Removed unused VRL2/3/4 iterator values
* config/aarch64/iterators.md (VRL2, VRL3, VRL4): Remove values for
	128-bit vector modes.

From-SVN: r226408
2015-07-30 16:04:08 +00:00
Richard Sandiford
f7ba7f18e5 builtins.c (HAVE_atomic_clear, [...]): Delete.
gcc/
	* builtins.c (HAVE_atomic_clear, gen_atomic_clear): Delete.
	(expand_builtin_atomic_clear): Remove support for atomic_clear
	pattern.

From-SVN: r226405
2015-07-30 13:22:56 +00:00
Richard Biener
819ec64c36 gimple-fold.c (fold_gimple_assign): Only fold !tcc_comparison binaries.
2015-07-30  Richard Biener  <rguenther@suse.de>

	* gimple-fold.c (fold_gimple_assign): Only fold !tcc_comparison
	binaries.  Move X == 0, X == 1, X != 0, and X != 1 canonicalization ...
	(fold_stmt_1): ... here and work on GIMPLE directly.  Remove
	redundant operand canonicalization.

From-SVN: r226404
2015-07-30 13:11:41 +00:00
David Sherwood
cb5ca3151b aarch64-simd.md (aarch64_ext<mode>): Replace call to GET_MODE_SIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_SIZE (m).
gcc/
2015-07-30  David Sherwood  <david.sherwood@arm.com>

	* config/aarch64/aarch64-simd.md (aarch64_ext<mode>): Replace call to
	GET_MODE_SIZE (GET_MODE_INNER (m)) with GET_MODE_UNIT_SIZE (m).
	* config/aarch64/aarch64.c (aarch64_simd_valid_immediate): Likewise.
	* config/arm/arm.c (neon_valid_immediate): Likewise.
	* config/i386/i386.c (classify_argument, ix86_expand_int_vcond)
	(expand_vec_perm_blend, expand_vec_perm_pshufb): Likewise.
	(expand_vec_perm_pshufb2, expand_vec_perm_vpshufb2_vpermq): Likewise.
	(expand_vec_perm_vpshufb2_vpermq): Likewise.
	(expand_vec_perm_vpshufb2_vpermq_even_odd): Likewise.
	(expand_vec_perm_vpshufb4_vpermq2): Likewise.
	* config/i386/sse.md
	(<extract_type>_vinsert<shuffletype><extract_suf>_mask): Likewise.
	(*ssse3_palignr<mode>_perm): Likewise.
	* config/rs6000/rs6000.c (rs6000_complex_function_value): Likewise.
	* config/spu/spu.c (arith_immediate_p): Likewise.
	* simplify-rtx.c (simplify_const_unary_operation): Likewise.
	(simplify_binary_operation_1, simplify_ternary_operation): Likewise.

From-SVN: r226403
2015-07-30 13:06:25 +00:00
Jonathan Wakely
155bfacbbe current_path.cc: Use canonical paths for comparisons.
* testsuite/experimental/filesystem/operations/current_path.cc: Use
	canonical paths for comparisons.

From-SVN: r226402
2015-07-30 13:41:33 +01:00
Richard Biener
b21ce9ce3b genmatch.c (decision_tree::gen_gimple): Merge with ...
2015-07-30  Richard Biener  <rguenther@suse.de>

	* genmatch.c (decision_tree::gen_gimple): Merge with ...
	(decision_tree::gen_generic): ... this into ...
	(decision_tree::gen): ... this.
	(main): Adjust callers.

From-SVN: r226396
2015-07-30 11:20:21 +00:00
Tim Shen
81b7ff079a regex_automaton.h (_State_base, _State<>): Remove _TraitsT dependency from _State<>...
* include/bits/regex_automaton.h (_State_base, _State<>):
	Remove _TraitsT dependency from _State<>; Make matcher member
	into the union to reduce struct size.
	* include/bits/regex_automaton.tcc (_State_base<>::_M_print,
	_State_base<>::_M_dot, _StateSeq<>::_M_clone):
	Adjust to fit the interface. Factor out common parts in
	_M_clone as _State<>::_M_has_alt.
	* include/bits/regex_executor.h (_Executer<>::_M_lookahead):
	Only pass state id instead of the whole state.
	* include/bits/regex_executor.tcc (_Executer<>::_M_dfs,
	_Executer<>::_M_lookahead): Adjust to fit the interface.
	* include/std/regex: Include <ext/aligned_buffer.h>

From-SVN: r226395
2015-07-30 10:35:45 +00:00
Paolo Carlini
15827d124a class.c (check_for_override): Use DECL_SOURCE_LOCATION and "%qD" in warning_at instead of "%q+D" in warning.
2015-07-30  Paolo Carlini  <paolo.carlini@oracle.com>

	* class.c (check_for_override): Use DECL_SOURCE_LOCATION and "%qD"
	in warning_at instead of "%q+D" in warning.
	(warn_hidden): Likewise but use location_of.
	(finish_struct_anon_r): Likewise use DECL_SOURCE_LOCATION in permerror.
	(check_bitfield_decl, check_field_decls): Likewise in warning_at.
	(check_field_decls): Likewise for permerror.
	(explain_non_literal_class): Likewise for inform.
	(check_bases_and_members, layout_class_type): Likewise for warning_at.
	(note_name_declared_in_class): Use location_of in permerror.
	* name-lookup.c (diagnose_name_conflict): Use location_of in inform.
	(pushdecl_maybe_friend_1): Use DECL_SOURCE_LOCATION in pedwarn,
	inform, and warning_at.
	(check_for_out_of_scope_variable): Likewise for warning_at and
	permerror.

From-SVN: r226394
2015-07-30 10:24:46 +00:00
Jonathan Wakely
2e3f48dc43 any (any::operator=(const any&)): Check for self-assignment.
* include/experimental/any (any::operator=(const any&)): Check for
	self-assignment.
	* testsuite/experimental/any/assign/self.cc: New.
	* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

From-SVN: r226393
2015-07-30 11:00:39 +01:00
Marek Polacek
173864e8f1 c-common.c (warn_tautological_cmp): Bail for float types.
* c-common.c (warn_tautological_cmp): Bail for float types.

	* c-c++-common/Wtautological-compare-3.c: New test.

From-SVN: r226388
2015-07-30 08:31:59 +00:00
Richard Biener
53a19317f4 genmatch.c (verbose): New global.
2015-07-30  Richard Biener  <rguenther@suse.de>

	* genmatch.c (verbose): New global.
	(warning_at): Add overload with source_location.
	(capture_info::capture_info): Add bool whether generating gimple
	or generic.  Add gimple member.
	(capture_info::cinfo): Add capture member.
	(capture_info::walk_match): Record capture.  Warn on
	non-captured leafs.
	(capture_info::walk_c_expr): Add more fragments captures cannot
	escape through.  Warn on escaped captures.
	(dt_simplify::gen_1): Warn on operands we force to have no
	side-effects.
	(main): Initialize verbose.
	* match.pd: Add integer_nonzerop and HONOR_NANS predicates.

From-SVN: r226386
2015-07-30 07:56:23 +00:00
Richard Biener
f501d5cd99 re PR middle-end/67053 (FAIL: experimental/optional/constexpr/make_optional.cc)
2015-07-30  Richard Biener  <rguenther@suse.de>

	PR middle-end/67053
	* match.pd: Allow both operands to independently have conversion
	when simplifying compares of addresses.

From-SVN: r226384
2015-07-30 07:09:20 +00:00
Jason Merrill
4fdfdd4f1b DR 1558 PR c++/67021
DR 1558
	PR c++/67021
	* pt.c (tsubst_decl) [TYPE_DECL]: Clear TYPE_DEPENDENT_P_VALID.

From-SVN: r226381
2015-07-30 01:27:34 -04:00
Segher Boessenkool
2d590ab09c re PR target/66217 (PowerPC rotate/shift/mask instructions not optimal)
PR target/66217
	PR target/67045
	* config/rs6000/rs6000.md (and<mode>3): Put a CONST_INT_P check
	around those cases that need one.

From-SVN: r226378
2015-07-30 04:34:09 +02:00
GCC Administrator
dfe8fbc22c Daily bump.
From-SVN: r226377
2015-07-30 00:16:12 +00:00
Ian Lance Taylor
d266c7e943 syscall: Fix to libgo/mksysinfo.sh
In a recent change to mksysinfo.sh, a space was missing on
    some lines which caused the libgo build to hang on some
    systems.  This corrects that problem.
    
    Fixes golang/go#11924
    
    Reviewed-on: https://go-review.googlesource.com/12835

From-SVN: r226366
2015-07-29 21:42:30 +00:00
Aditya Kumar
ac73bb4c82 [graphite] reduce the number of params in a scop to 3
* params.def (PARAM_GRAPHITE_MAX_NB_SCOP_PARAMS): Default to 3.

From-SVN: r226365
2015-07-29 21:28:27 +00:00
H.J. Lu
fd18098845 Define DBX_REGISTER_NUMBER for IA MCU
Since IA MCU uses the same debug register map as Linux/x86, we copy
DBX_REGISTER_NUMBER together with TARGET_ASM_FILE_START_FILE_DIRECTIVE
and ASM_COMMENT_START from i386/gnu-user.h to i386/iamcu.h.

	* config/i386/iamcu.h (TARGET_ASM_FILE_START_FILE_DIRECTIVE):
	New.  Copied from config/i386/gnu-user.h.
	(ASM_COMMENT_START): Likewise.
	(DBX_REGISTER_NUMBER): Likewise.

From-SVN: r226363
2015-07-29 14:06:23 -07:00
Ville Voutilainen
18e1ed3412 Fix whitespace in my MAINTAINERS change commit.
* MAINTAINERS (Write After Approval): Add a blank line.

From-SVN: r226361
2015-07-29 22:17:47 +03:00