On 28/11/2023 06:06, Jeff Law wrote:
- Verify we have a SUBREG before looking at SUBREG_BYTE.

The amdgcn ICE I reported still exists:

conftest.c:16:1: internal compiler error: RTL check: expected code 'subreg', 
have 'reg' in ext_dce_process_uses, at ext-dce.cc:417
   16 | }
      | ^
0x8c7b21 rtl_check_failed_code1(rtx_def const*, rtx_code, char const*, int, 
char const*)
......./scratch/astubbs/omp/upA/gcnbuild/src/gcc-mainline/gcc/rtl.cc:770
0xa768e0 ext_dce_process_uses
......./scratch/astubbs/omp/upA/gcnbuild/src/gcc-mainline/gcc/ext-dce.cc:417
0x1aed4bc ext_dce_process_bb
......./scratch/astubbs/omp/upA/gcnbuild/src/gcc-mainline/gcc/ext-dce.cc:643
0x1aed4bc ext_dce
......./scratch/astubbs/omp/upA/gcnbuild/src/gcc-mainline/gcc/ext-dce.cc:794
0x1aed4bc execute
......./scratch/astubbs/omp/upA/gcnbuild/src/gcc-mainline/gcc/ext-dce.cc:862
Please submit a full bug report, with preprocessed source (by using 
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.
configure:3812: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "GNU C Runtime Library"
| #define PACKAGE_TARNAME "libgcc"
| #define PACKAGE_VERSION "1.0"
| #define PACKAGE_STRING "GNU C Runtime Library 1.0"
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL "http://www.gnu.org/software/libgcc/";
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }

I think the test is maybe backwards?

  /* ?!? How much of this should mirror SET handling, potentially
     being shared?   */
  if (SUBREG_BYTE (dst).is_constant () && SUBREG_P (dst))

Andrew

Reply via email to