https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91157
Bug ID: 91157 Summary: [10 Regression] ICE: verify_gimple failed (error: position plus size exceeds size of referenced object in 'bit_field_ref') Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: asolokha at gmx dot com Target Milestone: --- Target: x86_64-unknown-linux-gnu gcc-10.0.0-alpha20190707 snapshot (r273184) ICEs when compiling the following testcase w/ -mavx512vbmi -fexceptions -fnon-call-exceptions -fsignaling-nans: typedef long double __attribute__ ((vector_size (4 * sizeof (long double)))) v4ldbl; v4ldbl uc (v4ldbl gl) { return gl == 0; } % x86_64-unknown-linux-gnu-gcc-10.0.0-alpha20190707 -mavx512vbmi -fexceptions -fnon-call-exceptions -fsignaling-nans -c naoatmj5.c naoatmj5.c: In function 'uc': naoatmj5.c:5:1: error: position plus size exceeds size of referenced object in 'bit_field_ref' 5 | uc (v4ldbl gl) | ^~ _8 = BIT_FIELD_REF <_1, 128, 0>; naoatmj5.c:5:1: error: position plus size exceeds size of referenced object in 'bit_field_ref' _11 = BIT_FIELD_REF <_1, 128, 128>; naoatmj5.c:5:1: error: position plus size exceeds size of referenced object in 'bit_field_ref' _14 = BIT_FIELD_REF <_1, 128, 256>; naoatmj5.c:5:1: error: position plus size exceeds size of referenced object in 'bit_field_ref' _17 = BIT_FIELD_REF <_1, 128, 384>; during GIMPLE pass: veclower naoatmj5.c:5:1: internal compiler error: verify_gimple failed 0xd94a7e verify_gimple_in_cfg(function*, bool) /var/tmp/portage/sys-devel/gcc-10.0.0_alpha20190707/work/gcc-10-20190707/gcc/tree-cfg.c:5426 0xc6e519 execute_function_todo /var/tmp/portage/sys-devel/gcc-10.0.0_alpha20190707/work/gcc-10-20190707/gcc/passes.c:1963 0xc6f2c6 execute_todo /var/tmp/portage/sys-devel/gcc-10.0.0_alpha20190707/work/gcc-10-20190707/gcc/passes.c:2017 Older branches of gcc reject this code but don't ICE.