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

            Bug ID: 70858
           Summary: __builtin_ia32_bextr_u64 ICE with '-m32
                    -march=core-avx2'
           Product: gcc
           Version: 6.1.0
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: steven at uplinklabs dot net
  Target Milestone: ---

$ gcc -v
Using built-in specs.
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-unknown-linux-gnu/6.1.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /build/gcc-multilib/src/gcc-6.1.0/configure
--host=x86_64-unknown-linux-gnu --build=x86_64-unknown-linux-gnu
--target=x86_64-unknown-linux-gnu --prefix=/usr --libdir=/usr/lib
--libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info
--with-bugurl=https://www.uplinklabs.net/
--enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --disable-libssp
--disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror
--enable-checking=release --enable-clocale=gnu --enable-__cxa_atexit
--enable-gnu-indirect-function --enable-gnu-unique-object
--enable-install-libiberty --enable-libmpx --enable-linker-build-id
--enable-lto --enable-multilib --enable-plugin --enable-shared
--enable-threads=posix --with-isl --with-linker-hash-style=gnu
--with-multilib-list=m32,m64,mx32 --with-system-zlib
Thread model: posix
gcc version 6.1.0 (GCC)


Reduced testcase via creduce:

$ cat test.i
int a, b, c;
int d() { c = __builtin_ia32_bextr_u64(a, b); }

$ gcc -m32 -march=core-avx2 -c test.i
test.i: In function ā€˜dā€™:
test.i:2:1: error: unrecognizable insn:
 int d() { c = __builtin_ia32_bextr_u64(a, b); }
 ^~~
(insn 9 8 10 2 (parallel [
            (set (reg:DI 91 [ _6 ])
                (unspec:DI [
                        (reg:DI 90 [ _5 ])
                        (reg:DI 88 [ _3 ])
                    ] UNSPEC_BEXTR))
            (clobber (reg:CC 17 flags))
        ]) test.i:2 -1
     (nil))
test.i:2:1: internal compiler error: in extract_insn, at recog.c:2287

Reply via email to