This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/83604] New: [8 Regression] ICE in copy_to_mode_reg, at explow.c:630


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83604

            Bug ID: 83604
           Summary: [8 Regression] ICE in copy_to_mode_reg, at
                    explow.c:630
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Keywords: ice-on-invalid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: jakub at gcc dot gnu.org, kyukhin at gcc dot gnu.org
  Target Milestone: ---
              Host: x86_64-linux-gnu
            Target: x86_64-linux-gnu
             Build: x86_64-linux-gnu

Starting from r255572 we ICE on:

$ gcc /home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c
In file included from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/immintrin.h:105,
                 from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/x86intrin.h:48,
                 from
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c:680:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/vaesintrin.h:
In function ‘_mm256_aesdec_epi128’:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/vaesintrin.h:12:1:
note: The ABI for passing parameters with 32-byte alignment has changed in GCC
4.6
 _mm256_aesdec_epi128 (__m256i __A, __m256i __B)
 ^~~~~~~~~~~~~~~~~~~~
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c: In
function ‘_mm256_aesenclast_epi128’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c:680:
warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
 #include <x86intrin.h>

In file included from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/immintrin.h:103,
                 from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/x86intrin.h:48,
                 from
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c:680:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/gfniintrin.h:
In function ‘_mm_mask_gf2p8mul_epi8’:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/gfniintrin.h:132:20:
error: ‘__builtin_ia32_vgf2p8mulb_v16qi_mask’ needs isa option -m32 -mgfni
-mavx512bw
   return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi_mask ((__v16qi) __C,
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         (__v16qi) __D,
         ~~~~~~~~~~~~~~
         (__v16qi)__A, __B);
         ~~~~~~~~~~~~~~~~~~
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/gfniintrin.h:
In function ‘_mm_maskz_gf2p8mul_epi8’:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/gfniintrin.h:141:20:
error: ‘__builtin_ia32_vgf2p8mulb_v16qi_mask’ needs isa option -m32 -mgfni
-mavx512bw
   return (__m128i) __builtin_ia32_vgf2p8mulb_v16qi_mask ((__v16qi) __B,
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    (__v16qi) __C, (__v16qi) _mm_setzero_si128 (), __A);
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
during RTL pass: expand
In file included from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/immintrin.h:105,
                 from
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/x86intrin.h:48,
                 from
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/i386/sse-13.c:680:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/vaesintrin.h:
In function ‘_mm256_aesdec_epi128’:
/home/marxin/bin/gcc/lib64/gcc/x86_64-pc-linux-gnu/8.0.0/include/vaesintrin.h:14:19:
internal compiler error: in copy_to_mode_reg, at explow.c:630
   return (__m256i)__builtin_ia32_vaesdec_v32qi ((__v32qi) __A, (__v32qi) __B);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0x84a72b copy_to_mode_reg(machine_mode, rtx_def*)
        ../../gcc/explow.c:630
0x5c1f91 ix86_expand_binop_builtin
        ../../gcc/config/i386/i386.c:32703
0x5c1f91 ix86_expand_args_builtin
        ../../gcc/config/i386/i386.c:33622
0xf6242f ix86_expand_builtin
        ../../gcc/config/i386/i386.c:37504
0x71fe0a expand_builtin(tree_node*, rtx_def*, rtx_def*, machine_mode, int)
        ../../gcc/builtins.c:6611
0x864643 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
        ../../gcc/expr.c:10910
0x870553 store_expr_with_bounds(tree_node*, rtx_def*, int, bool, bool,
tree_node*)
        ../../gcc/expr.c:5577
0x871d77 expand_assignment(tree_node*, tree_node*, bool)
        ../../gcc/expr.c:5345
0x7466b1 expand_call_stmt
        ../../gcc/cfgexpand.c:2677
0x7466b1 expand_gimple_stmt_1
        ../../gcc/cfgexpand.c:3613
0x7466b1 expand_gimple_stmt
        ../../gcc/cfgexpand.c:3779
0x7488b7 expand_gimple_basic_block
        ../../gcc/cfgexpand.c:5796
0x74e5ce execute
        ../../gcc/cfgexpand.c:6402

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]