public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Recent patch craters vector tests on powerpc64le-linux-gnu
@ 2015-11-11 23:12 Bill Schmidt
  2015-11-12  9:48 ` James Greenhalgh
  2015-11-12  9:54 ` Andreas Schwab
  0 siblings, 2 replies; 4+ messages in thread
From: Bill Schmidt @ 2015-11-11 23:12 UTC (permalink / raw)
  To: enkovich.gnu; +Cc: gcc-patches

Hi Ilya,

The patch committed as r230098 has caused a number of ICEs on
powerpc64le-linux-gnu.  The gcc/ChangeLog entry for that patch is:

2015-11-10  Ilya Enkovich  <enkovich.gnu@gmail.com>

        * expr.c (do_store_flag): Use expand_vec_cmp_expr for mask
results.
        (const_vector_mask_from_tree): New.
        (const_vector_from_tree): Use const_vector_mask_from_tree
        for boolean vectors.
        * optabs-query.h (get_vec_cmp_icode): New.
        * optabs-tree.c (expand_vec_cmp_expr_p): New.
        * optabs-tree.h (expand_vec_cmp_expr_p): New.
        * optabs.c (vector_compare_rtx): Add OPNO arg.
        (expand_vec_cond_expr): Adjust to vector_compare_rtx change.
        (expand_vec_cmp_expr): New.
        * optabs.def (vec_cmp_optab): New.
        (vec_cmpu_optab): New.
        * optabs.h (expand_vec_cmp_expr): New.
        * tree-vect-generic.c (expand_vector_comparison): Add vector
        comparison optabs check.
        * tree-vect-loop.c (vect_determine_vectorization_factor):
Ignore mask
        operations for VF.  Add mask type computation.
        * tree-vect-stmts.c (get_mask_type_for_scalar_type): New.
        (vectorizable_comparison): New.
        (vect_analyze_stmt): Add vectorizable_comparison.
        (vect_transform_stmt): Likewise.
        (vect_init_vector): Support boolean vector invariants.
        (vect_get_vec_def_for_operand): Add VECTYPE arg.
        (vectorizable_condition): Directly provide vectype for
invariants
        used in comparison.
        * tree-vectorizer.h (get_mask_type_for_scalar_type): New.
        (enum vect_var_kind): Add vect_mask_var.
        (enum stmt_vec_info_type): Add comparison_vec_info_type.
        (vectorizable_comparison): New.
        (vect_get_vec_def_for_operand): Add VECTYPE arg.
        * tree-vect-data-refs.c (vect_get_new_vect_var): Support
vect_mask_var.
        (vect_create_destination_var): Likewise.
        * tree-vect-patterns.c (check_bool_pattern): Check fails
        if we can vectorize comparison directly.
        (search_type_for_mask): New.
        (vect_recog_bool_pattern): Support cases when bool pattern
        check fails.
        * tree-vect-slp.c (vect_build_slp_tree_1): Allow
        comparison statements.
        (vect_get_constant_vectors): Support boolean vector
        constants.
        * config/i386/i386-protos.h (ix86_expand_mask_vec_cmp): New.
        (ix86_expand_int_vec_cmp): New.
        (ix86_expand_fp_vec_cmp): New.
        * config/i386/i386.c (ix86_expand_sse_cmp): Allow NULL for
        op_true and op_false.
        (ix86_int_cmp_code_to_pcmp_immediate): New.
        (ix86_fp_cmp_code_to_pcmp_immediate): New.
        (ix86_cmp_code_to_pcmp_immediate): New.
        (ix86_expand_mask_vec_cmp): New.
        (ix86_expand_fp_vec_cmp): New.
        (ix86_expand_int_sse_cmp): New.
        (ix86_expand_int_vcond): Use ix86_expand_int_sse_cmp.
        (ix86_expand_int_vec_cmp): New.
        (ix86_get_mask_mode): New.
        (TARGET_VECTORIZE_GET_MASK_MODE): New.
        * config/i386/sse.md (avx512fmaskmodelower): New.
        (vec_cmp<mode><avx512fmaskmodelower>): New.
        (vec_cmp<mode><sseintvecmodelower>): New.
        (vec_cmpv2div2di): New.
        (vec_cmpu<mode><avx512fmaskmodelower>): New.
        (vec_cmpu<mode><sseintvecmodelower>): New.
        (vec_cmpuv2div2di): New.

Here is a list of regressions that were caused by the patch:

FAIL: c-c++-common/opaque-vector.c  -std=c++11 (internal compiler error)
FAIL: c-c++-common/opaque-vector.c  -std=c++11 (test for excess errors)
FAIL: c-c++-common/opaque-vector.c  -std=c++14 (internal compiler error)
FAIL: c-c++-common/opaque-vector.c  -std=c++14 (test for excess errors)
FAIL: c-c++-common/opaque-vector.c  -std=c++98 (internal compiler error)
FAIL: c-c++-common/opaque-vector.c  -std=c++98 (test for excess errors)
FAIL: c-c++-common/opaque-vector.c  -Wc++-compat  (internal compiler
error)
FAIL: c-c++-common/opaque-vector.c  -Wc++-compat  (test for excess
errors)
FAIL: c-c++-common/torture/vector-compare-1.c   -O0  (internal compiler
error)
FAIL: c-c++-common/torture/vector-compare-1.c   -O0  (internal compiler
error)
FAIL: c-c++-common/torture/vector-compare-1.c   -O0  (test for excess
errors)
FAIL: c-c++-common/torture/vector-compare-1.c   -O0  (test for excess
errors)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++11 (internal compiler
error)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++11 (test for excess
errors)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++14 (internal compiler
error)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++14 (test for excess
errors)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++98 (internal compiler
error)
FAIL: c-c++-common/vector-compare-2.c  -std=gnu++98 (test for excess
errors)
FAIL: c-c++-common/vector-compare-2.c  -Wc++-compat  (internal compiler
error)
FAIL: c-c++-common/vector-compare-2.c  -Wc++-compat  (test for excess
errors)
FAIL: c-c++-common/vector-scalar.c  -std=c++11 (internal compiler error)
FAIL: c-c++-common/vector-scalar.c  -std=c++11 (test for excess errors)
FAIL: c-c++-common/vector-scalar.c  -std=c++14 (internal compiler error)
FAIL: c-c++-common/vector-scalar.c  -std=c++14 (test for excess errors)
FAIL: c-c++-common/vector-scalar.c  -std=c++98 (internal compiler error)
FAIL: c-c++-common/vector-scalar.c  -std=c++98 (test for excess errors)
FAIL: c-c++-common/vector-scalar.c  -Wc++-compat  (internal compiler
error)
FAIL: c-c++-common/vector-scalar.c  -Wc++-compat  (test for excess
errors)
FAIL: gcc.c-torture/compile/pr53410-2.c   -O0  (internal compiler error)
FAIL: gcc.c-torture/compile/pr53410-2.c   -O0  (test for excess errors)
FAIL: gcc.c-torture/execute/builtin-bitops-1.c   -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
-finline-functions  (internal compiler error)
FAIL: gcc.c-torture/execute/builtin-bitops-1.c   -O3
-fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer
-finline-functions  (test for excess errors)
FAIL: gcc.c-torture/execute/builtin-bitops-1.c   -O3 -g  (internal
compiler error)
FAIL: gcc.c-torture/execute/builtin-bitops-1.c   -O3 -g  (test for
excess errors)
FAIL: gcc.dg/vect/bb-slp-32.c -flto -ffat-lto-objects  scan-tree-dump
slp2 "vectorization is not profitable"
FAIL: gcc.dg/vect/bb-slp-32.c scan-tree-dump slp2 "vectorization is not
profitable"
FAIL: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects (internal compiler
error)
FAIL: gcc.dg/vect/pr58508.c -flto -ffat-lto-objects (test for excess
errors)
FAIL: gcc.dg/vect/pr58508.c (internal compiler error)
FAIL: gcc.dg/vect/pr58508.c (test for excess errors)
FAIL: gcc.dg/vect/vect-cond-reduc-1.c -flto -ffat-lto-objects (internal
compiler error)
FAIL: gcc.dg/vect/vect-cond-reduc-1.c -flto -ffat-lto-objects (test for
excess errors)
FAIL: gcc.dg/vect/vect-cond-reduc-1.c (internal compiler error)
FAIL: gcc.dg/vect/vect-cond-reduc-1.c (test for excess errors)
FAIL: gcc.dg/vect/vect-sdivmod-1.c -flto -ffat-lto-objects (internal
compiler error)
FAIL: gcc.dg/vect/vect-sdivmod-1.c -flto -ffat-lto-objects
scan-tree-dump-times vect "vectorized 1 loops" 4
FAIL: gcc.dg/vect/vect-sdivmod-1.c -flto -ffat-lto-objects (test for
excess errors)
FAIL: gcc.dg/vect/vect-sdivmod-1.c (internal compiler error)
FAIL: gcc.dg/vect/vect-sdivmod-1.c scan-tree-dump-times vect "vectorized
1 loops" 4
FAIL: gcc.dg/vect/vect-sdivmod-1.c (test for excess errors)
FAIL: g++.dg/ext/vector27.C  -std=c++11 (internal compiler error)
FAIL: g++.dg/ext/vector27.C  -std=c++11 (test for excess errors)
FAIL: g++.dg/ext/vector27.C  -std=c++14 (internal compiler error)
FAIL: g++.dg/ext/vector27.C  -std=c++14 (test for excess errors)
FAIL: g++.dg/ext/vector27.C  -std=c++98 (internal compiler error)
FAIL: g++.dg/ext/vector27.C  -std=c++98 (test for excess errors)
FAIL: g++.dg/ext/vector28.C  -std=c++11 (internal compiler error)
FAIL: g++.dg/ext/vector28.C  -std=c++11 (test for excess errors)
FAIL: g++.dg/ext/vector28.C  -std=c++14 (internal compiler error)
FAIL: g++.dg/ext/vector28.C  -std=c++14 (test for excess errors)
FAIL: g++.dg/ext/vector28.C  -std=c++98 (internal compiler error)
FAIL: g++.dg/ext/vector28.C  -std=c++98 (test for excess errors)
FAIL: g++.dg/other/vector-compare.C  -std=gnu++11 (internal compiler
error)
FAIL: g++.dg/other/vector-compare.C  -std=gnu++11 (test for excess
errors)
FAIL: g++.dg/other/vector-compare.C  -std=gnu++14 (internal compiler
error)
FAIL: g++.dg/other/vector-compare.C  -std=gnu++14 (test for excess
errors)
FAIL: libgomp.c/simd-14.c (internal compiler error)
FAIL: libgomp.c/simd-14.c (test for excess errors)
FAIL: libgomp.c/simd-15.c (internal compiler error)
FAIL: libgomp.c/simd-15.c (test for excess errors)
FAIL: libgomp.c/simd-16.c (internal compiler error)
FAIL: libgomp.c/simd-16.c (test for excess errors)
FAIL: libgomp.c/simd-17.c (internal compiler error)
FAIL: libgomp.c/simd-17.c (test for excess errors)

Could you please either revert the patch or fix these issues?

Thanks!

Bill

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Recent patch craters vector tests on powerpc64le-linux-gnu
  2015-11-11 23:12 Recent patch craters vector tests on powerpc64le-linux-gnu Bill Schmidt
@ 2015-11-12  9:48 ` James Greenhalgh
  2015-11-12  9:58   ` Ilya Enkovich
  2015-11-12  9:54 ` Andreas Schwab
  1 sibling, 1 reply; 4+ messages in thread
From: James Greenhalgh @ 2015-11-12  9:48 UTC (permalink / raw)
  To: Bill Schmidt; +Cc: enkovich.gnu, gcc-patches, richard.guenther, law

On Wed, Nov 11, 2015 at 05:12:29PM -0600, Bill Schmidt wrote:
> Hi Ilya,
> 
> The patch committed as r230098 has caused a number of ICEs on
> powerpc64le-linux-gnu.

And arm-none-linux-gnueabihf, and aarch64-none-linux-gnu.

> Could you please either revert the patch or fix these issues?
 
Thanks,
James

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Recent patch craters vector tests on powerpc64le-linux-gnu
  2015-11-11 23:12 Recent patch craters vector tests on powerpc64le-linux-gnu Bill Schmidt
  2015-11-12  9:48 ` James Greenhalgh
@ 2015-11-12  9:54 ` Andreas Schwab
  1 sibling, 0 replies; 4+ messages in thread
From: Andreas Schwab @ 2015-11-12  9:54 UTC (permalink / raw)
  To: Bill Schmidt; +Cc: enkovich.gnu, gcc-patches

Bill Schmidt <wschmidt@linux.vnet.ibm.com> writes:

> The patch committed as r230098 has caused a number of ICEs on
> powerpc64le-linux-gnu.

This is PR68296.

Andreas.

-- 
Andreas Schwab, SUSE Labs, schwab@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Recent patch craters vector tests on powerpc64le-linux-gnu
  2015-11-12  9:48 ` James Greenhalgh
@ 2015-11-12  9:58   ` Ilya Enkovich
  0 siblings, 0 replies; 4+ messages in thread
From: Ilya Enkovich @ 2015-11-12  9:58 UTC (permalink / raw)
  To: James Greenhalgh; +Cc: Bill Schmidt, gcc-patches, Richard Biener, Jeff Law

2015-11-12 12:48 GMT+03:00 James Greenhalgh <james.greenhalgh@arm.com>:
> On Wed, Nov 11, 2015 at 05:12:29PM -0600, Bill Schmidt wrote:
>> Hi Ilya,
>>
>> The patch committed as r230098 has caused a number of ICEs on
>> powerpc64le-linux-gnu.
>
> And arm-none-linux-gnueabihf, and aarch64-none-linux-gnu.
>
>> Could you please either revert the patch or fix these issues?
>
> Thanks,
> James
>

Sorry for the breakage. I sent a patch to fix it.

https://gcc.gnu.org/ml/gcc-patches/2015-11/msg01467.html

Thanks,
Ilya

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-11-12  9:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-11 23:12 Recent patch craters vector tests on powerpc64le-linux-gnu Bill Schmidt
2015-11-12  9:48 ` James Greenhalgh
2015-11-12  9:58   ` Ilya Enkovich
2015-11-12  9:54 ` Andreas Schwab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).