Zdenek Dvorak
d8af4ba307
tree-ssa-loop-ivopts.c (struct cost_pair): Add comp field.
...
2011-08-26 Zdenek Dvorak <ook@ucw.cz>
Tom de Vries <tom@codesourcery.com>
* tree-ssa-loop-ivopts.c (struct cost_pair): Add comp field.
(struct ivopts_data): Add loop_single_exit_p field.
(niter_for_exit): Change parameter desc_p into return value. Return
desc if desc->may_be_zero. Free desc if unused.
(niter_for_single_dom_exit): Change return type.
(find_induction_variables): Handle changed return type of
niter_for_single_dom_exit. Dump may_be_zero.
(add_candidate_1): Keep original base and step type for IP_ORIGINAL.
(set_use_iv_cost): Add and handle comp parameter.
(determine_use_iv_cost_generic, determine_use_iv_cost_address): Add
comp argument to set_use_iv_cost.
(strip_wrap_conserving_type_conversions, expr_equal_p)
(difference_cannot_overflow_p, iv_elimination_compare_lt): New function.
(may_eliminate_iv): Add comp parameter. Handle new return type of
niter_for_exit. Use loop_single_exit_p. Use iv_elimination_compare_lt.
(determine_use_iv_cost_condition): Add comp argument to set_use_iv_cost
and may_eliminate_iv.
(rewrite_use_compare): Move call to iv_elimination_compare to ...
(may_eliminate_iv): Here.
(tree_ssa_iv_optimize_loop): Initialize loop_single_exit_p.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r178104
2011-08-26 13:36:28 +00:00
Tom de Vries
fd1777ca0f
tree-pretty-print (dump_generic_node): Test for NULL_TREE before accessing TREE_TYPE.
...
2011-08-26 Tom de Vries <tom@codesourcery.com>
* tree-pretty-print (dump_generic_node): Test for NULL_TREE before
accessing TREE_TYPE.
From-SVN: r178103
2011-08-26 13:03:58 +00:00
Jiangning Liu
990b31f717
Commit for Jiangning.
...
Add conditional compare support for Thumb2.
From-SVN: r178102
2011-08-26 12:50:19 +00:00
Jakub Jelinek
8840ae2b09
* rtlanal.c (nonzero_bits1): Handle CLRSB.
...
From-SVN: r178101
2011-08-26 14:15:25 +02:00
Richard Guenther
321358d4e4
expr.c (string_constant): Handle &MEM_REF.
...
2011-08-26 Richard Guenther <rguenther@suse.de>
* expr.c (string_constant): Handle &MEM_REF.
From-SVN: r178100
2011-08-26 11:23:37 +00:00
Andrew Stubbs
c2b640a7ca
arm.c (struct four_ints): New type.
...
2011-08-26 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm.c (struct four_ints): New type.
(count_insns_for_constant): Delete function.
(find_best_start): Delete function.
(optimal_immediate_sequence): New function.
(optimal_immediate_sequence_1): New function.
(arm_gen_constant): Move constant splitting code to
optimal_immediate_sequence.
Rewrite constant negation/invertion code.
gcc/testsuite/
* gcc.target/arm/thumb2-replicated-constant1.c: New file.
* gcc.target/arm/thumb2-replicated-constant2.c: New file.
* gcc.target/arm/thumb2-replicated-constant3.c: New file.
* gcc.target/arm/thumb2-replicated-constant4.c: New file.
2011-08-26 Andrew Stubbs <ams@codesourcery.com>
gcc/
* config/arm/arm-protos.h (const_ok_for_op): Add prototype.
* config/arm/arm.c (const_ok_for_op): Add support for addw/subw.
Remove prototype. Remove static function type.
* config/arm/arm.md (*arm_addsi3): Add addw/subw support.
Add arch attribute.
* config/arm/constraints.md (Pj, PJ): New constraints.
From-SVN: r178099
2011-08-26 09:53:06 +00:00
Ramana Radhakrishnan
58a2bda0e5
Fix scheduling descriptions for smull, smmul and friends on Cortex-A9.
...
From-SVN: r178098
2011-08-26 08:44:21 +00:00
GCC Administrator
e4680a3ba0
Daily bump.
...
From-SVN: r178095
2011-08-26 00:18:33 +00:00
Ian Lance Taylor
48ab8ba6b8
Change Bound_method_expression to refer to a constant method.
...
From-SVN: r178091
2011-08-25 23:14:20 +00:00
Uros Bizjak
2e335040bc
* config/i386/i386.md: Do not explicitly set default isa attribute.
...
From-SVN: r178088
2011-08-25 21:38:57 +02:00
Mikael Morin
d54e80ce32
re PR fortran/50050 (Internal compiler error free_expr0 at expr.c:3709 via gfc_done_2)
...
2011-08-25 Mikael Morin <mikael.morin@gcc.gnu.org>
PR fortran/50050
* expr.c (gfc_free_shape): Do nothing if shape is NULL.
(free_expr0): Remove redundant NULL shape check.
* resolve.c (check_host_association): Ditto.
* trans-expr.c (gfc_trans_subarray_assign): Assert that shape is
non-NULL.
* trans-io.c (transfer_array_component): Ditto.
2011-08-25 Mikael Morin <mikael.morin@gcc.gnu.org>
PR fortran/50050
* gfortran.dg/pointer_comp_init_1.f90: New test.
From-SVN: r178086
2011-08-25 19:10:06 +00:00
Richard Henderson
42aa5124f7
re PR debug/50132 (ICE: in maybe_record_trace_start, at dwarf2cfi.c:2234 with -fno-asynchronous-unwind-tables and long double)
...
PR 50132
PR 49864
* cfgcleanup.c (old_insns_match_p): Don't allow cross-jump for
non-constant stack adjutment.
* expr.c (find_args_size_adjust): Break out from ...
(fixup_args_size_notes): ... here.
* rtl.h (find_args_size_adjust): Declare.
From-SVN: r178084
2011-08-25 11:57:48 -07:00
Jason Merrill
0ab71f306c
* call.c (convert_like_real): Remove redundant complain checks.
...
From-SVN: r178082
2011-08-25 14:22:54 -04:00
Jason Merrill
7888350f39
re PR c++/50157 ([C++0x] Non-silent SFINAE in new expression with explicit conversion)
...
PR c++/50157
* call.c (convert_like_real): Exit early if bad and !tf_error.
From-SVN: r178081
2011-08-25 14:22:46 -04:00
Uros Bizjak
a02f398da4
i386.md (isa): Add sse2, sse2_noavx, sse3, sse4 and sse4_noavx.
...
* config/i386/i386.md (isa): Add sse2, sse2_noavx, sse3,
sse4 and sse4_noavx.
(enabled): Handle sse2, sse2_noavx, sse3, sse4 and sse4_noavx.
(*pushdf_rex64): Change Y2 register constraint to x.
(*movdf_internal_rex64): Ditto.
(*zero_extendsidi2_rex64): Ditto.
(*movdi_internal): Change Y2 register constraint to x
and update "isa" attribute.
(*pushdf): Ditto.
(*movdf internal): Ditto.
(zero_extendsidi2_1): Ditto.
(*truncdfdf_mixed): Ditto.
(*truncxfdf2_mixed): Ditto.
* config/i386/mmx.md (*mov<mode>_internal_rex64): Change Y2
register constraint to x.
(*movv2sf_internal_rex64): Ditto.
(*mov<mode>_internal): Change Y2 register constraint to x
and add "isa" attribute.
(*movv2sf_internal): Ditto.
(*vec_extractv2si_1): Ditto.
* config/i386/sse.md ("vec_set<mode>_0): Change Y2 and Y4 register
constraints to x and update "isa" attribute.
(*vec_interleave_highv2df): Change Y3 registerconstraint
to x and update "isa" attribute.
(*vec_interleave_lowv2df): Ditto.
(*vec_concatv2df): Change Y2 register constraint to x and
update "isa" attribute.
(sse2_loadld): Ditto.
(*vec_extractv2di_1): Ditto.
(*vec_dupv4si): Ditto.
(*vec_dupv2di): Ditto.
(*vec_concatv4si): Ditto.
(vec_concatv2di): Ditto.
* config/i386/constraints.md (Y2): Remove.
(Y3): Ditto.
(Y4): Ditto.
From-SVN: r178073
2011-08-25 19:05:34 +02:00
Tobias Burnus
aa13dc3c93
trans-array.c (gfc_conv_descriptor_token): Add assert.
...
2011-08-25 Tobias Burnus <burnus@net-b.de>
* trans-array.c (gfc_conv_descriptor_token): Add assert.
* trans-decl.c (gfc_build_qualified_array,
create_function_arglist): Handle assumed-shape arrays.
* trans-expr.c (gfc_conv_procedure_call): Ditto.
* trans-types.c (gfc_get_array_descriptor_base): Ditto, don't
add "caf_token" to assumed-shape descriptors, new akind argument.
(gfc_get_array_type_bounds): Pass akind.
* trans.h (lang_decl): New elements caf_offset and token.
(GFC_DECL_TOKEN, GFC_DECL_CAF_OFFSET): New macros.
2011-08-25 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray_lib_token_4.f90: New.
From-SVN: r178069
2011-08-25 18:27:39 +02:00
Tobias Burnus
241e79cfc4
trans-array.c (structure_alloc_comps): Fix for allocatable scalar coarray components.
...
2011-08-25 Tobias Burnus <burnus@net-b.de>
* trans-array.c (structure_alloc_comps): Fix for allocatable
scalar coarray components.
* trans-expr.c (gfc_conv_component_ref): Ditto.
* trans-type.c (gfc_get_derived_type): Ditto.
2011-08-25 Tobias Burnus <burnus@net-b.de>
* gfortran.dg/coarray/alloc_comp_1.f90: New.
From-SVN: r178068
2011-08-25 17:59:40 +02:00
Georg-Johann Lay
3e4c754bbf
* config/avr/avr.c (byte_immediate_operand): Remove Function.
...
From-SVN: r178067
2011-08-25 14:36:01 +00:00
Tom Tromey
01bb8ae217
simple.cc: New file.
...
* testsuite/libstdc++-prettyprinters/simple.cc: New file.
* testsuite/lib/gdb-test.exp: New file.
* testsuite/libstdc++-prettyprinters/prettyprinters.exp: New
file.
From-SVN: r178066
2011-08-25 14:29:47 +00:00
Bernd Schmidt
f24acbefa1
regrename.c (scan_rtx_reg, [...]): Don't declare.
...
* regrename.c (scan_rtx_reg, scan_rtx_address, build_def_use,
dump_def_use_chain): Don't declare.
(mark_conflict, create_new_chain): Move before users.
(regrename_optimize): Move to near end of file.
From-SVN: r178065
2011-08-25 14:23:47 +00:00
Georg-Johann Lay
c331eabed6
avr-protos.h (byte_immediate_operand): Remove Prototype.
...
* config/avr-protos.h (byte_immediate_operand): Remove Prototype.
(secondary_input_reload_class): Remove Prototype.
* config/avr/avr.c (byte_immediate_operand): Remove Function.
* config/avr/avr.md (setmemhi): Use u8_operand.
(strlenhi): Use const0_rtx for comparison.
* config/avr/avr.h (avr_reg_order): Remove Declaration.
From-SVN: r178064
2011-08-25 13:51:38 +00:00
Georg-Johann Lay
61af7eb4d1
avr.c (reg_class_tab): Make local to avr_regno_reg_class.
...
* config/avr/avr.c (reg_class_tab): Make local to
avr_regno_reg_class. Return smallest register class available.
From-SVN: r178063
2011-08-25 13:50:30 +00:00
Georg-Johann Lay
f2814222f9
avr.c (STR_PREFIX_P): New Define.
...
* config/avr/avr.c (STR_PREFIX_P): New Define.
(avr_asm_declare_function_name): Use it.
(avr_asm_named_section): Use it.
(avr_section_type_flags): Use it.
From-SVN: r178062
2011-08-25 13:46:35 +00:00
Richard Guenther
cbba4777cd
Wshadow-3.c: Restore original content destroyed by r148442.
...
2011-08-25 Richard Guenther <rguenther@suse.de>
* gcc.dg/Wshadow-3.c: Restore original content destroyed by r148442.
From-SVN: r178061
2011-08-25 13:24:34 +00:00
Andrew Haley
4ac9cf2b5d
ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly instructions.
...
2011-08-25 Andrew Haley <aph@redhat.com>
* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly
instructions.
* src/arm/sysv.S (ffi_arm_trampoline): Put them here instead.
From-SVN: r178060
2011-08-25 10:37:36 +00:00
Bernd Schmidt
1e6a9047b3
md.texi (automata_option): Document collapse-ndfa.
...
* doc/md.texi (automata_option): Document collapse-ndfa.
* genautomata.c (COLLAPSE_OPTION): New macro.
(collapse_flag): New static variable.
(struct description): New member normal_decls_num.
(struct automaton): New members advance_ainsn and collapse_ainsn.
(gen_automata_option): Check for COLLAPSE_OPTION.
(collapse_ndfa_insn_decl): New static variable.
(add_collapse_ndfa_insn_decl, special_decl_p): New functions.
(find_arc): If insn is the collapse-ndfa insn, accept any arc we
find.
(transform_insn_regexps): Call add_collapse_ndfa_insn_decl if
necessary. Use normal_decls_num rather than decls_num, remove
test for special decls.
(create_alt_states, form_ainsn_with_same_reservs): Use
special_decl_p.
(make_automaton); Likewise. Use the new advance_cycle_insn member
of struct automaton.
(create_composed_state): Disallow advance-cycle arcs if collapse_flag
is set.
(NDFA_to_DFA): Don't create composed states for the collapse-ndfa
transition. Create the necessary transitions for it.
(create_ainsns): Return void. Take an automaton_t argument, and
update its ainsn_list, advance_ainsn and collapse_ainsn members. All
callers changed.
(COLLAPSE_NDFA_VALUE_NAME): New macro.
(output_tables): Output code to define it.
(output_internal_insn_code_evaluation): Output code to accept
const0_rtx as collapse-ndfa transition.
(output_default_latencies, output_print_reservation_func,
output_print_description): Reorganize loops to use normal_decls_num
as loop bound; remove special case for advance_cycle_insn_decl.
(initiate_automaton_gen): Handle COLLAPSE_OPTION.
(check_automata_insn_issues): Check for collapse_ainsn.
(expand_automate): Allocate sufficient space. Initialize
normal_decls_num.
From-SVN: r178059
2011-08-25 10:30:13 +00:00
Georg-Johann Lay
07f1047289
avr.md: Fix indentation from r177991.
...
* config/avr/avr.md: Fix indentation from r177991.
From-SVN: r178058
2011-08-25 10:27:18 +00:00
Bernd Schmidt
d3e8085069
regrename.c (struct du_head): Remove member terminated.
...
* regrename.c (struct du_head): Remove member terminated.
(create_new_chain): Don't initialize it.
(scan_rtx_reg): Don't set or test it, test the open_chains_set
bitmap instead.
(tick, this_tick): New global variables, moved out of
regrename_optimize.
(current_id, open_chains, closed_chains, open_chains_set,
live_in_chains, live_hard_regs): Reorder declarations.
(dump_def_use_chain): Move function earlier in the file.
(rename_chains): New static function, broken out of
regrename_optimize.
(regrename_optimize): Use it. Remove #if 0'ed code.
From-SVN: r178057
2011-08-25 10:12:35 +00:00
Rainer Orth
39b75e51ec
Don't assume hg convert in gcc_update
...
* gcc_update: Determine svn branch from hg convert_revision.
From-SVN: r178056
2011-08-25 09:16:52 +00:00
Bernhard Reutner-Fischer
8619577f3a
varasm.c: (default_binds_local_p_1): Commentary typo fix.
...
2011-08-25 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* varasm.c: (default_binds_local_p_1): Commentary typo fix.
From-SVN: r178055
2011-08-25 10:49:01 +02:00
GCC Administrator
6c41a083fa
Daily bump.
...
From-SVN: r178053
2011-08-25 00:18:57 +00:00
Roberto Lublinerman
706cd57f71
gccgo...
...
gccgo: fixes to ast-dump, refactoring of export and ast-dump
to implement a common interface for writing basic
type literals and added flags for optimization.
* lang.opt: Add fgo-optimize-.
* go-lang.c (go_langhook_handle_option): Handle OPT_fgo_optimize.
* go-c.h (go_enable_optimize): Declare.
* Make-lang.in (GO_OBJS): Add go/go-optimize.o.
(GO_EXPORT_H): Define.
(GO_IMPORT_H): Add $(GO_EXPORT_H).
(GO_AST_DUMP_H): Define.
(go/ast-dump.o, go/statements.o): Use GO_AST_DUMP_H.
(go/export.o, go/gogo.o, go/import.o): Use GO_EXPORT_H.
(go/types.o): Likewise.
(go/expressions.o): Use GO_AST_DUMP_H and GO_EXPORT_H.
(go/go-optimize.o): New target.
From-SVN: r178046
2011-08-24 19:22:44 +00:00
H.J. Lu
8020d73e39
Mention PR target/50172.
...
From-SVN: r178040
2011-08-24 06:25:22 -07:00
H.J. Lu
25963ac440
Convert to Pmode if needed.
...
2011-08-24 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_expand_builtin): Convert to Pmode if
needed.
From-SVN: r178039
2011-08-24 06:24:07 -07:00
Tobias Burnus
40885767dc
re PR fortran/50163 (ICE: initialization expression)
...
2011-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/50163
* expr.c (check_init_expr): Return when an error
occured.
2011-08-24 Tobias Burnus <burnus@net-b.de>
PR fortran/50163
* gfortran.dg/initialization_28.f90: New.
From-SVN: r178038
2011-08-24 15:11:08 +02:00
Richard Guenther
9fcb758bdc
tree-data-ref.c (dr_analyze_indices): Avoid unsharing the ref in the basic-block case.
...
2011-08-24 Richard Guenther <rguenther@suse.de>
* tree-data-ref.c (dr_analyze_indices): Avoid unsharing the
ref in the basic-block case. Move stripping array-refs
to the place we create an access-function for it. Remove
bogus stripping down a MEM_REF to its base.
From-SVN: r178037
2011-08-24 12:55:18 +00:00
Richard Guenther
e66132e141
fold-const.c (fold_comparison): Fold &a < &a + 4 even with -fno-strict-overflow.
...
2011-08-24 Richard Guenther <rguenther@suse.de>
* fold-const.c (fold_comparison): Fold &a < &a + 4 even
with -fno-strict-overflow.
From-SVN: r178036
2011-08-24 12:51:45 +00:00
Richard Guenther
76f60b1980
tree-vectorizer.c (vect_print_dump_info): Avoid the file and location clutter when dumping to dump files.
...
2011-08-24 Richard Guenther <rguenther@suse.de>
* tree-vectorizer.c (vect_print_dump_info): Avoid the
file and location clutter when dumping to dump files.
From-SVN: r178034
2011-08-24 11:26:42 +00:00
Richard Biener
0e3fdb489e
re PR c/49396 (c-family/c-cppbuiltin.c: duplicate if expressions)
...
2011-08-24 Richard Guenther <rguenther@suse.de>
PR c/49396
c-family/
* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Fix conditional.
From-SVN: r178032
2011-08-24 11:16:57 +00:00
Simon Baldwin
6f0faeed90
gengtype-state.c (write_state): Remove timestamped header line.
...
2011-08-24 Simon Baldwin <simonb@google.com>
* gengtype-state.c (write_state): Remove timestamped header line.
From-SVN: r178031
2011-08-24 11:14:56 +00:00
Joseph Myers
c5bc3df6db
* Makefile.in (CFLAGS-collect2.o, CFLAGS-c-family/c-opts.o)
...
(CFLAGS-c-family/c-pch.o, CFLAGS-prefix.o, CFLAGS-version.o)
(CFLAGS-lto-compress.o, CFLAGS-toplev.o, CFLAGS-intl.o)
(CFLAGS-cppbuiltin.o, CFLAGS-cppdefault.o): New.
(collect2.o, c-family/c-cppbuiltin.o, c-family/c-opts.o)
(c-family/c-pch.o, prefix.o, version.o, lto-compress.o, toplev.o)
(intl.o, cppbuiltin.o, cppdefault.o): Remove explicit compilation
rules.
(lto-wrapper$(exeext)): Use $(LINKER) not $(COMPILER).
ada:
* gcc-interface/Make-lang.in (CFLAGS-ada/tracebak.o)
(CFLAGS-ada/targext.o, CFLAGS-ada/cio.o, CFLAGS-ada/init.o)
(CFLAGS-ada/initialize.o, CFLAGS-ada/raise.o): New.
(ada/tracebak.o, ada/targext.o, ada/cio.o, ada/init.o)
(ada/initialize.o, ada/raise.o): Remove explicit compilation rules.
fortran:
* Make-lang.in (fortran/cpp.o): Remove explicit compilation rule.
go:
* Make-lang.in (CFLAGS-go/go-lang.o): New.
(go/go-lang.o): Remove explicit compilation rule.
java:
* Make-lang.in (CFLAGS-java/jcf-io.o, CFLAGS-java/jcf-path.o):
New.
(java/jcf-io.o, java/jcf-path.o): Remove explicit compilation
rules.
From-SVN: r178030
2011-08-24 11:47:06 +01:00
Joseph Myers
295409e1ad
* Makefile.in (ALL_CXXFLAGS): Include $(CFLAGS-$@).
...
From-SVN: r178029
2011-08-24 11:42:11 +01:00
Richard Guenther
8c330caa3b
re PR tree-optimization/50067 (Wrong code with -fpredictive-commoning)
...
2011-08-24 Richard Guenther <rguenther@suse.de>
PR tree-optimization/50067
* tree-data-ref.c (dr_analyze_indices): Do not add an access
function for a MEM_REF base that has no evolution in the loop
nest or that is not analyzable.
* gcc.dg/torture/pr50067-3.c: New testcase.
* gcc.dg/torture/pr50067-4.c: Likewise.
* gcc.dg/torture/pr50067-5.c: Likewise.
From-SVN: r178028
2011-08-24 10:07:20 +00:00
GCC Administrator
68fde24177
Daily bump.
...
From-SVN: r178023
2011-08-24 00:18:53 +00:00
Vladimir Makarov
d7b1770388
ira.c (ira_init_register_move_cost): Check small subclasses through ira_reg_class_max_nregs and ira_available_class_regs.
...
2011-08-23 Vladimir Makarov <vmakarov@redhat.com>
* ira.c (ira_init_register_move_cost): Check small subclasses
through ira_reg_class_max_nregs and ira_available_class_regs.
From-SVN: r178019
2011-08-23 23:06:04 +00:00
Steve Ellcey
3d3aae5b2e
re PR libstdc++/50153 (hppa64-hp-hpux11.11/libstdc++-v3/include/cstdlib:106:11: error: '::abs' has not been declared)
...
2011-08-23 Steve Ellcey <sje@cup.hp.com>
PR libstdc++/50153
* inclhack.def (hpux11_abs): Extend to all hpux machines.
* fixincl.x: Regenerate.
From-SVN: r178018
2011-08-23 21:32:34 +00:00
Uros Bizjak
c1415b6e0b
* config/i386/sse-22.c: Rearrange to fix sse-22a.c failure.
...
From-SVN: r178017
2011-08-23 23:14:10 +02:00
Uros Bizjak
78d8c16ca9
constraints.md (Yp): New register constraint.
...
* config/i386/constraints.md (Yp): New register constraint.
* config/i386/i386.md (*addhi_1): Merge with *addhi_1_lea using
Yp register constraint.
(*addqi_1): Merge with *addqi_1_lea using Yp register constraint.
(*ashlhi3_1): Merge with *ashlhi3_1_lea using Yp register constraint.
(*ashlqi3_1): Merge with *ashlqi3_1_lea using Yp register constraint.
From-SVN: r178011
2011-08-23 22:00:27 +02:00
Kirill Yukhin
2ddfea8a33
Add AVX2 testcases.
...
gcc/
2011-08-23 Kirill Yukhin <kirill.yukhin@intel.com>
* config/i386/sse.md (<s>mul<mode>3_highpart): Update.
gcc/testsuite/
2011-08-23 Kirill Yukhin <kirill.yukhin@intel.com>
* g++.dg/other/i386-2.C: Add -mavx2 check.
* g++.dg/other/i386-3.C: Likewise.
* gcc.target/i386/avx-1.c: Add AVX2.
* gcc.target/i386/avx-2.c: Likewise.
* gcc.target/i386/funcspec-5.c: Likewise.
* gcc.target/i386/sse-12.c: Likewise.
* gcc.target/i386/sse-13.c: Likewise.
* gcc.target/i386/sse-14.c: Likewise.
* gcc.target/i386/sse-22.c: Likewise.
* gcc.target/i386/sse-23.c: Likewise.
* gcc.target/i386/i386.exp (check_effective_target_avx2): Likewise.
* gcc.target/i386/avx2-check.h: New.
* gcc.target/i386/avx2-i32gatherd-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherd-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherd-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherd-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherd256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherd256-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherd256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherd256-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherpd256-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherps-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherps256-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherq-4.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-1.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-2.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-3.c: Likewise.
* gcc.target/i386/avx2-i32gatherq256-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherd-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherd256-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherpd256-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherps-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherps256-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherq-4.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-1.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-2.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-3.c: Likewise.
* gcc.target/i386/avx2-i64gatherq256-4.c: Likewise.
* gcc.target/i386/avx2-mpsadbw-1.c: Likewise.
* gcc.target/i386/avx2-mpsadbw-2.c: Likewise.
* gcc.target/i386/avx2-vbroadcastsd_pd-1.c: Likewise.
* gcc.target/i386/avx2-vbroadcastsd_pd-2.c: Likewise.
* gcc.target/i386/avx2-vbroadcastsi128-1.c: Likewise.
* gcc.target/i386/avx2-vbroadcastsi128-2.c: Likewise.
* gcc.target/i386/avx2-vbroadcastss_ps-1.c: Likewise.
* gcc.target/i386/avx2-vbroadcastss_ps-2.c: Likewise.
* gcc.target/i386/avx2-vbroadcastss_ps256-1.c: Likewise.
* gcc.target/i386/avx2-vbroadcastss_ps256-2.c: Likewise.
* gcc.target/i386/avx2-vextracti128-1.c: Likewise.
* gcc.target/i386/avx2-vextracti128-2.c: Likewise.
* gcc.target/i386/avx2-vinserti128-1.c: Likewise.
* gcc.target/i386/avx2-vinserti128-2.c: Likewise.
* gcc.target/i386/avx2-vmovmskb-2.c: Likewise.
* gcc.target/i386/avx2-vmovntdqa-1.c: Likewise.
* gcc.target/i386/avx2-vmovntdqa-2.c: Likewise.
* gcc.target/i386/avx2-vpabsb256-1.c: Likewise.
* gcc.target/i386/avx2-vpabsb256-2.c: Likewise.
* gcc.target/i386/avx2-vpabsd256-1.c: Likewise.
* gcc.target/i386/avx2-vpabsd256-2.c: Likewise.
* gcc.target/i386/avx2-vpabsw256-1.c: Likewise.
* gcc.target/i386/avx2-vpabsw256-2.c: Likewise.
* gcc.target/i386/avx2-vpackssdw-1.c: Likewise.
* gcc.target/i386/avx2-vpackssdw-2.c: Likewise.
* gcc.target/i386/avx2-vpacksswb-1.c: Likewise.
* gcc.target/i386/avx2-vpacksswb-2.c: Likewise.
* gcc.target/i386/avx2-vpackusdw-1.c: Likewise.
* gcc.target/i386/avx2-vpackusdw-2.c: Likewise.
* gcc.target/i386/avx2-vpackuswb-1.c: Likewise.
* gcc.target/i386/avx2-vpackuswb-2.c: Likewise.
* gcc.target/i386/avx2-vpaddb-1.c: Likewise.
* gcc.target/i386/avx2-vpaddb-2.c: Likewise.
* gcc.target/i386/avx2-vpaddd-1.c: Likewise.
* gcc.target/i386/avx2-vpaddd-2.c: Likewise.
* gcc.target/i386/avx2-vpaddq-1.c: Likewise.
* gcc.target/i386/avx2-vpaddq-2.c: Likewise.
* gcc.target/i386/avx2-vpaddsb-1.c: Likewise.
* gcc.target/i386/avx2-vpaddsb-2.c: Likewise.
* gcc.target/i386/avx2-vpaddsw-1.c: Likewise.
* gcc.target/i386/avx2-vpaddsw-2.c: Likewise.
* gcc.target/i386/avx2-vpaddusb-1.c: Likewise.
* gcc.target/i386/avx2-vpaddusb-2.c: Likewise.
* gcc.target/i386/avx2-vpaddusw-1.c: Likewise.
* gcc.target/i386/avx2-vpaddusw-2.c: Likewise.
* gcc.target/i386/avx2-vpaddw-1.c: Likewise.
* gcc.target/i386/avx2-vpaddw-2.c: Likewise.
* gcc.target/i386/avx2-vpalignr256-1.c: Likewise.
* gcc.target/i386/avx2-vpalignr256-2.c: Likewise.
* gcc.target/i386/avx2-vpand-1.c: Likewise.
* gcc.target/i386/avx2-vpand-2.c: Likewise.
* gcc.target/i386/avx2-vpandn-1.c: Likewise.
* gcc.target/i386/avx2-vpandn-2.c: Likewise.
* gcc.target/i386/avx2-vpavgb-1.c: Likewise.
* gcc.target/i386/avx2-vpavgb-2.c: Likewise.
* gcc.target/i386/avx2-vpavgw-1.c: Likewise.
* gcc.target/i386/avx2-vpavgw-2.c: Likewise.
* gcc.target/i386/avx2-vpblendd128-1.c: Likewise.
* gcc.target/i386/avx2-vpblendd128-2.c: Likewise.
* gcc.target/i386/avx2-vpblendd256-1.c: Likewise.
* gcc.target/i386/avx2-vpblendd256-2.c: Likewise.
* gcc.target/i386/avx2-vpblendvb-1.c: Likewise.
* gcc.target/i386/avx2-vpblendvb-2.c: Likewise.
* gcc.target/i386/avx2-vpblendw-1.c: Likewise.
* gcc.target/i386/avx2-vpblendw-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastb128-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastb128-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastb256-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastb256-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastd128-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastd128-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastd256-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastd256-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastq128-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastq128-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastq256-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastq256-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastw128-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastw128-2.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastw256-1.c: Likewise.
* gcc.target/i386/avx2-vpbroadcastw256-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqb-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqb-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqd-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqd-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqq-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqq-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqw-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpeqw-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtb-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtb-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtd-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtd-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtq-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtq-2.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtw-1.c: Likewise.
* gcc.target/i386/avx2-vpcmpgtw-2.c: Likewise.
* gcc.target/i386/avx2-vperm2i128-1.c: Likewise.
* gcc.target/i386/avx2-vperm2i128-2.c: Likewise.
* gcc.target/i386/avx2-vpermd-1.c: Likewise.
* gcc.target/i386/avx2-vpermd-2.c: Likewise.
* gcc.target/i386/avx2-vpermpd-1.c: Likewise.
* gcc.target/i386/avx2-vpermpd-2.c: Likewise.
* gcc.target/i386/avx2-vpermps-1.c: Likewise.
* gcc.target/i386/avx2-vpermps-2.c: Likewise.
* gcc.target/i386/avx2-vpermq-1.c: Likewise.
* gcc.target/i386/avx2-vpermq-2.c: Likewise.
* gcc.target/i386/avx2-vphaddd-1.c: Likewise.
* gcc.target/i386/avx2-vphaddd-2.c: Likewise.
* gcc.target/i386/avx2-vphaddsw-1.c: Likewise.
* gcc.target/i386/avx2-vphaddsw-2.c: Likewise.
* gcc.target/i386/avx2-vphaddw-1.c: Likewise.
* gcc.target/i386/avx2-vphaddw-2.c: Likewise.
* gcc.target/i386/avx2-vphsubd-1.c: Likewise.
* gcc.target/i386/avx2-vphsubd-2.c: Likewise.
* gcc.target/i386/avx2-vphsubsw-1.c: Likewise.
* gcc.target/i386/avx2-vphsubsw-2.c: Likewise.
* gcc.target/i386/avx2-vphsubw-1.c: Likewise.
* gcc.target/i386/avx2-vpmaddubsw-1.c: Likewise.
* gcc.target/i386/avx2-vpmaddubsw-2.c: Likewise.
* gcc.target/i386/avx2-vpmaddwd-1.c: Likewise.
* gcc.target/i386/avx2-vpmaddwd-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadd-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadd-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadd256-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadd256-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadq-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadq-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadq256-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskloadq256-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskstored-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskstored-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskstored256-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskstored256-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskstoreq-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskstoreq-2.c: Likewise.
* gcc.target/i386/avx2-vpmaskstoreq256-1.c: Likewise.
* gcc.target/i386/avx2-vpmaskstoreq256-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxsb-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxsb-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxsd-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxsd-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxsw-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxsw-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxub-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxub-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxud-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxud-2.c: Likewise.
* gcc.target/i386/avx2-vpmaxuw-1.c: Likewise.
* gcc.target/i386/avx2-vpmaxuw-2.c: Likewise.
* gcc.target/i386/avx2-vpminsb-1.c: Likewise.
* gcc.target/i386/avx2-vpminsb-2.c: Likewise.
* gcc.target/i386/avx2-vpminsd-1.c: Likewise.
* gcc.target/i386/avx2-vpminsd-2.c: Likewise.
* gcc.target/i386/avx2-vpminsw-1.c: Likewise.
* gcc.target/i386/avx2-vpminsw-2.c: Likewise.
* gcc.target/i386/avx2-vpminub-1.c: Likewise.
* gcc.target/i386/avx2-vpminub-2.c: Likewise.
* gcc.target/i386/avx2-vpminud-1.c: Likewise.
* gcc.target/i386/avx2-vpminud-2.c: Likewise.
* gcc.target/i386/avx2-vpminuw-1.c: Likewise.
* gcc.target/i386/avx2-vpminuw-2.c: Likewise.
* gcc.target/i386/avx2-vpmovmskb-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbd-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbd-2.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbq-2.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbw-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxbw-2.c: Likewise.
* gcc.target/i386/avx2-vpmovsxdq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxdq-2.c: Likewise.
* gcc.target/i386/avx2-vpmovsxwd-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxwd-2.c: Likewise.
* gcc.target/i386/avx2-vpmovsxwq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovsxwq-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbd-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbd-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbq-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbw-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxbw-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxdq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxdq-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxwd-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxwd-2.c: Likewise.
* gcc.target/i386/avx2-vpmovzxwq-1.c: Likewise.
* gcc.target/i386/avx2-vpmovzxwq-2.c: Likewise.
* gcc.target/i386/avx2-vpmuldq-1.c: Likewise.
* gcc.target/i386/avx2-vpmuldq-2.c: Likewise.
* gcc.target/i386/avx2-vpmulhrsw-1.c: Likewise.
* gcc.target/i386/avx2-vpmulhrsw-2.c: Likewise.
* gcc.target/i386/avx2-vpmulhuw-1.c: Likewise.
* gcc.target/i386/avx2-vpmulhuw-2.c: Likewise.
* gcc.target/i386/avx2-vpmulhw-1.c: Likewise.
* gcc.target/i386/avx2-vpmulhw-2.c: Likewise.
* gcc.target/i386/avx2-vpmulld-1.c: Likewise.
* gcc.target/i386/avx2-vpmulld-2.c: Likewise.
* gcc.target/i386/avx2-vpmullw-1.c: Likewise.
* gcc.target/i386/avx2-vpmullw-2.c: Likewise.
* gcc.target/i386/avx2-vpmuludq-1.c: Likewise.
* gcc.target/i386/avx2-vpmuludq-2.c: Likewise.
* gcc.target/i386/avx2-vpor-1.c: Likewise.
* gcc.target/i386/avx2-vpor-2.c: Likewise.
* gcc.target/i386/avx2-vpsadbw-1.c: Likewise.
* gcc.target/i386/avx2-vpsadbw-2.c: Likewise.
* gcc.target/i386/avx2-vpshufb-1.c: Likewise.
* gcc.target/i386/avx2-vpshufb-2.c: Likewise.
* gcc.target/i386/avx2-vpshufd-1.c: Likewise.
* gcc.target/i386/avx2-vpshufd-2.c: Likewise.
* gcc.target/i386/avx2-vpshufhw-1.c: Likewise.
* gcc.target/i386/avx2-vpshufhw-2.c: Likewise.
* gcc.target/i386/avx2-vpshuflw-1.c: Likewise.
* gcc.target/i386/avx2-vpshuflw-2.c: Likewise.
* gcc.target/i386/avx2-vpsignb-1.c: Likewise.
* gcc.target/i386/avx2-vpsignb-2.c: Likewise.
* gcc.target/i386/avx2-vpsignd-1.c: Likewise.
* gcc.target/i386/avx2-vpsignd-2.c: Likewise.
* gcc.target/i386/avx2-vpsignw-1.c: Likewise.
* gcc.target/i386/avx2-vpsignw-2.c: Likewise.
* gcc.target/i386/avx2-vpslld-1.c: Likewise.
* gcc.target/i386/avx2-vpslld-2.c: Likewise.
* gcc.target/i386/avx2-vpslldi-1.c: Likewise.
* gcc.target/i386/avx2-vpslldi-2.c: Likewise.
* gcc.target/i386/avx2-vpslldq-1.c: Likewise.
* gcc.target/i386/avx2-vpslldq-2.c: Likewise.
* gcc.target/i386/avx2-vpsllq-1.c: Likewise.
* gcc.target/i386/avx2-vpsllq-2.c: Likewise.
* gcc.target/i386/avx2-vpsllqi-1.c: Likewise.
* gcc.target/i386/avx2-vpsllqi-2.c: Likewise.
* gcc.target/i386/avx2-vpsllvd128-1.c: Likewise.
* gcc.target/i386/avx2-vpsllvd128-2.c: Likewise.
* gcc.target/i386/avx2-vpsllvd256-1.c: Likewise.
* gcc.target/i386/avx2-vpsllvd256-2.c: Likewise.
* gcc.target/i386/avx2-vpsllvq128-1.c: Likewise.
* gcc.target/i386/avx2-vpsllvq128-2.c: Likewise.
* gcc.target/i386/avx2-vpsllvq256-1.c: Likewise.
* gcc.target/i386/avx2-vpsllvq256-2.c: Likewise.
* gcc.target/i386/avx2-vpsllw-1.c: Likewise.
* gcc.target/i386/avx2-vpsllw-2.c: Likewise.
* gcc.target/i386/avx2-vpsllwi-1.c: Likewise.
* gcc.target/i386/avx2-vpsllwi-2.c: Likewise.
* gcc.target/i386/avx2-vpsrad-1.c: Likewise.
* gcc.target/i386/avx2-vpsrad-2.c: Likewise.
* gcc.target/i386/avx2-vpsradi-1.c: Likewise.
* gcc.target/i386/avx2-vpsradi-2.c: Likewise.
* gcc.target/i386/avx2-vpsravd128-1.c: Likewise.
* gcc.target/i386/avx2-vpsravd128-2.c: Likewise.
* gcc.target/i386/avx2-vpsravd256-1.c: Likewise.
* gcc.target/i386/avx2-vpsravd256-2.c: Likewise.
* gcc.target/i386/avx2-vpsraw-1.c: Likewise.
* gcc.target/i386/avx2-vpsraw-2.c: Likewise.
* gcc.target/i386/avx2-vpsrawi-1.c: Likewise.
* gcc.target/i386/avx2-vpsrawi-2.c: Likewise.
* gcc.target/i386/avx2-vpsrld-1.c: Likewise.
* gcc.target/i386/avx2-vpsrld-2.c: Likewise.
* gcc.target/i386/avx2-vpsrldi-1.c: Likewise.
* gcc.target/i386/avx2-vpsrldi-2.c: Likewise.
* gcc.target/i386/avx2-vpsrldq-1.c: Likewise.
* gcc.target/i386/avx2-vpsrldq-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlq-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlq-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlqi-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlqi-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlvd128-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlvd128-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlvd256-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlvd256-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlvq128-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlvq128-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlvq256-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlvq256-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlw-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlw-2.c: Likewise.
* gcc.target/i386/avx2-vpsrlwi-1.c: Likewise.
* gcc.target/i386/avx2-vpsrlwi-2.c: Likewise.
* gcc.target/i386/avx2-vpsubb-1.c: Likewise.
* gcc.target/i386/avx2-vpsubb-2.c: Likewise.
* gcc.target/i386/avx2-vpsubd-1.c: Likewise.
* gcc.target/i386/avx2-vpsubd-2.c: Likewise.
* gcc.target/i386/avx2-vpsubq-1.c: Likewise.
* gcc.target/i386/avx2-vpsubq-2.c: Likewise.
* gcc.target/i386/avx2-vpsubsb-1.c: Likewise.
* gcc.target/i386/avx2-vpsubsb-2.c: Likewise.
* gcc.target/i386/avx2-vpsubsw-1.c: Likewise.
* gcc.target/i386/avx2-vpsubsw-2.c: Likewise.
* gcc.target/i386/avx2-vpsubusb-1.c: Likewise.
* gcc.target/i386/avx2-vpsubusb-2.c: Likewise.
* gcc.target/i386/avx2-vpsubusw-1.c: Likewise.
* gcc.target/i386/avx2-vpsubusw-2.c: Likewise.
* gcc.target/i386/avx2-vpunpckhbw-1.c: Likewise.
* gcc.target/i386/avx2-vpunpckhbw-2.c: Likewise.
* gcc.target/i386/avx2-vpunpckhdq-1.c: Likewise.
* gcc.target/i386/avx2-vpunpckhdq-2.c: Likewise.
* gcc.target/i386/avx2-vpunpckhqdq-1.c: Likewise.
* gcc.target/i386/avx2-vpunpckhqdq-2.c: Likewise.
* gcc.target/i386/avx2-vpunpckhwd-1.c: Likewise.
* gcc.target/i386/avx2-vpunpckhwd-2.c: Likewise.
* gcc.target/i386/avx2-vpunpcklbw-1.c: Likewise.
* gcc.target/i386/avx2-vpunpcklbw-2.c: Likewise.
* gcc.target/i386/avx2-vpunpckldq-1.c: Likewise.
* gcc.target/i386/avx2-vpunpckldq-2.c: Likewise.
* gcc.target/i386/avx2-vpunpcklqdq-1.c: Likewise.
* gcc.target/i386/avx2-vpunpcklqdq-2.c: Likewise.
* gcc.target/i386/avx2-vpunpcklwd-1.c: Likewise.
* gcc.target/i386/avx2-vpunpcklwd-2.c: Likewise.
* gcc.target/i386/avx2-vpxor-1.c: Likewise.
* gcc.target/i386/avx2-vpxor-2.c: Likewise.
* gcc.target/i386/testimm-9.c: Likewise.
From-SVN: r178006
2011-08-23 12:29:54 -07:00
Mark Heffernan
a3a704a495
re PR middle-end/38509 (Bogus "attempt to free a non-heap object" warning)
...
2011-08-23 Mark Heffernan <meheff@google.com>
PR middle-end/38509
* common.opt (Wfree-nonheap-object): New option.
* doc/invoke.texi (Warning options): Document -Wfree-nonheap-object.
* builtins.c (maybe_emit_free_warning): Add OPT_Wfree_nonheap_object
to warning.
(expand_builtin): Make warning conditional.
From-SVN: r178004
2011-08-23 18:06:42 +00:00