public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/108268] New: [13 Regression] Build failure on cross from powerpc64le-linux to nvptx-none
@ 2023-01-02 20:29 jakub at gcc dot gnu.org
  2023-01-02 20:29 ` [Bug middle-end/108268] " jakub at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: jakub at gcc dot gnu.org @ 2023-01-02 20:29 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 108268
           Summary: [13 Regression] Build failure on cross from
                    powerpc64le-linux to nvptx-none
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

../configure --disable-bootstrap --disable-sjlj-exceptions
--enable-newlib-io-long-long
--with-build-time-tools=/builddir/build/BUILD/gcc-13.0.0-20230102/obji/usr/nvptx-none/bin
--
target nvptx-none --enable-as-accelerator-for=ppc64le-redhat-linux
--enable-languages=c,c++,fortran,lto --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --with-bugurl=
http://bugzilla.redhat.com/bugzilla --enable-checking=release
--with-system-zlib --with-gcc-major-version-only --without-isl
configured GCC ICEs on compilation of all C/C++ files.
The problem is that c_cpp_builtins function has &c_global_trees[0] value stored
in $r30
register, but when it calls
1525            int value = dwarf_reg_sizes_constant ();
the $r30 value is saved into stack frame and partially overwritten by buffer
overflow.
Before it is 0x0000000011939cb0 and after returning from that function
0x11930008.  This is because DWARF_FRAME_RETURN_COLUMN macro defaults to
DWARF_FRAME_REGISTERS, nvptx.h doesn't override it (it is a target without
register allocation nor debug info), dwarf_reg_sizes_constant allocates
343       poly_uint16 *sizes = XALLOCAVEC (poly_uint16, DWARF_FRAME_REGISTERS);
and then generate_dwarf_reg_sizes stores:
326       if (!init_state.wrote_return_column)
327         sizes[DWARF_FRAME_RETURN_COLUMN] = GET_MODE_SIZE (Pmode);

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

end of thread, other threads:[~2023-01-06 11:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-02 20:29 [Bug middle-end/108268] New: [13 Regression] Build failure on cross from powerpc64le-linux to nvptx-none jakub at gcc dot gnu.org
2023-01-02 20:29 ` [Bug middle-end/108268] " jakub at gcc dot gnu.org
2023-01-02 20:34 ` pinskia at gcc dot gnu.org
2023-01-03 11:02 ` jakub at gcc dot gnu.org
2023-01-06 11:47 ` jakub 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).