public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
@ 2024-05-03  1:19 sjames at gcc dot gnu.org
  2024-05-03  1:40 ` [Bug ipa/114930] " sjames at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: sjames at gcc dot gnu.org @ 2024-05-03  1:19 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 114930
           Summary: ICE in fld_incomplete_type_of when building libwebp
                    with -std=c23 -flto
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sjames at gcc dot gnu.org
  Target Milestone: ---

Created attachment 58093
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=58093&action=edit
libwebpdecode_la-vp8l_dec.i.xz

```
$ gcc -c libwebpdecode_la-vp8l_dec.i -std=c23 -flto
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:
In function ‘CopySmallPattern8b’:
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:908:10:
warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  908 |   while ((uintptr_t)dst & 3) {
      |          ^
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:
In function ‘CopySmallPattern32b’:
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:977:7:
warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  977 |   if ((uintptr_t)dst & 4) {           // Align 'dst' to 8-bytes
boundary.
      |       ^
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:
In function ‘CopyBlock32b’:
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:994:36:
warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  994 |   if (dist <= 2 && length >= 4 && ((uintptr_t)dst & 3) == 0) {
      |                                    ^
during IPA pass: *free_lang_data
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:
At top level:
/var/tmp/portage/media-libs/libwebp-1.3.2/work/libwebp-1.3.2/src/dec/vp8l_dec.c:1744:1:
internal compiler error: in fld_incomplete_type_of, at
ipa-free-lang-data.cc:257
 1744 | }
      | ^
0x5564762f6448 fld_incomplete_type_of
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:257
0x5564778ff8fd fld_simplified_type
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:344
0x5564778ff8fd free_lang_data_in_type
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:439
0x556477fd53b0 free_lang_data_in_cgraph
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:1072
0x556477fd53b0 free_lang_data
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:1109
0x556477fd53b0 execute
       
/usr/src/debug/sys-devel/gcc-14.0.1_pre20240430/gcc-14.1.0-RC-20240430/gcc/ipa-free-lang-data.cc:1176
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://bugs.gentoo.org/> for instructions.
```

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

* [Bug ipa/114930] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
@ 2024-05-03  1:40 ` sjames at gcc dot gnu.org
  2024-05-03  1:41 ` pinskia at gcc dot gnu.org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: sjames at gcc dot gnu.org @ 2024-05-03  1:40 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Sam James <sjames at gcc dot gnu.org> ---
reduced:
```
typedef struct WebPPicture WebPPicture;
typedef int (*WebPProgressHook)(const WebPPicture *);
WebPProgressHook progress_hook;
struct WebPPicture {
} WebPGetColorPalette(const struct WebPPicture *);
```

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

* [Bug ipa/114930] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
  2024-05-03  1:40 ` [Bug ipa/114930] " sjames at gcc dot gnu.org
@ 2024-05-03  1:41 ` pinskia at gcc dot gnu.org
  2024-05-03  2:55 ` [Bug ipa/114930] [14/15 regression] " sjames at gcc dot gnu.org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2024-05-03  1:41 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=114927

--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Sam James from comment #1)
> reduced:
> ```
> typedef struct WebPPicture WebPPicture;
> typedef int (*WebPProgressHook)(const WebPPicture *);
> WebPProgressHook progress_hook;
> struct WebPPicture {
> } WebPGetColorPalette(const struct WebPPicture *);
> ```

This looks almost the same issue as PR 114927.

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

* [Bug ipa/114930] [14/15 regression] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
  2024-05-03  1:40 ` [Bug ipa/114930] " sjames at gcc dot gnu.org
  2024-05-03  1:41 ` pinskia at gcc dot gnu.org
@ 2024-05-03  2:55 ` sjames at gcc dot gnu.org
  2024-05-03  6:32 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: sjames at gcc dot gnu.org @ 2024-05-03  2:55 UTC (permalink / raw)
  To: gcc-bugs

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

Sam James <sjames at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|ICE in                      |[14/15 regression] ICE in
                   |fld_incomplete_type_of when |fld_incomplete_type_of when
                   |building libwebp with       |building libwebp with
                   |-std=c23 -flto              |-std=c23 -flto

--- Comment #3 from Sam James <sjames at gcc dot gnu.org> ---
c2x in GCC 13 was fine

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

* [Bug ipa/114930] [14/15 regression] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2024-05-03  2:55 ` [Bug ipa/114930] [14/15 regression] " sjames at gcc dot gnu.org
@ 2024-05-03  6:32 ` rguenth at gcc dot gnu.org
  2024-05-07  7:46 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-05-03  6:32 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-checking,
                   |                            |ice-on-valid-code
   Target Milestone|---                         |14.0

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

* [Bug ipa/114930] [14/15 regression] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2024-05-03  6:32 ` rguenth at gcc dot gnu.org
@ 2024-05-07  7:46 ` rguenth at gcc dot gnu.org
  2024-05-18 15:44 ` sjames at gcc dot gnu.org
  2024-05-21  8:50 ` rguenth at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-05-07  7:46 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|14.0                        |14.2

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 14.1 is being released, retargeting bugs to GCC 14.2.

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

* [Bug ipa/114930] [14/15 regression] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2024-05-07  7:46 ` rguenth at gcc dot gnu.org
@ 2024-05-18 15:44 ` sjames at gcc dot gnu.org
  2024-05-21  8:50 ` rguenth at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: sjames at gcc dot gnu.org @ 2024-05-18 15:44 UTC (permalink / raw)
  To: gcc-bugs

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

Sam James <sjames at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu.org

--- Comment #5 from Sam James <sjames at gcc dot gnu.org> ---
This one is still an issue (unlike PR114927 which is fixed).

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

* [Bug ipa/114930] [14/15 regression] ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto
  2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2024-05-18 15:44 ` sjames at gcc dot gnu.org
@ 2024-05-21  8:50 ` rguenth at gcc dot gnu.org
  6 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2024-05-21  8:50 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hubicka at gcc dot gnu.org

--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> ---
Likely an issue in fld_incomplete_type_of with how C23 lays out types and/or
how we set up their canonical types.  What we try to do for LTO is to
turn pointer types to pointer types to pointer to "incomplete" type variants,
thus for arrays to [] and for structs to structs with no fields.

Somebody needs to see how it goes wrong, the assert makes sense and is required
for correctness.

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

end of thread, other threads:[~2024-05-21  8:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-05-03  1:19 [Bug ipa/114930] New: ICE in fld_incomplete_type_of when building libwebp with -std=c23 -flto sjames at gcc dot gnu.org
2024-05-03  1:40 ` [Bug ipa/114930] " sjames at gcc dot gnu.org
2024-05-03  1:41 ` pinskia at gcc dot gnu.org
2024-05-03  2:55 ` [Bug ipa/114930] [14/15 regression] " sjames at gcc dot gnu.org
2024-05-03  6:32 ` rguenth at gcc dot gnu.org
2024-05-07  7:46 ` rguenth at gcc dot gnu.org
2024-05-18 15:44 ` sjames at gcc dot gnu.org
2024-05-21  8:50 ` rguenth at gcc dot gnu.org

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).