From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id DAF883858C66; Thu, 12 Jan 2023 13:53:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DAF883858C66 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1673531617; bh=ShPUsUk+wGWcOlY4YZ+Jp+JS3WEFcYueZP70Z1qm6JI=; h=From:To:Subject:Date:From; b=Ieo4I3ZXyyv0uj3Mf8i4Drw/NrVeNEpb+MmZjpejaFnL68PmGC/QTljPItYwZ20/h kJVFsSLy181k34mcW5pf5ia8vAXt47jT8H70B1DoyB8Gj8lg/jy/nlxADrjHBtCMyA k1jovNzct8Z413LAJyhjlg1iUswhmO3z1qCYNeIo= From: "eebssk1 at godaftwithebk dot pub" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/108383] New: g++ ICE with -O3 and -flto on simple function Date: Thu, 12 Jan 2023 13:53:36 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 12.2.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: eebssk1 at godaftwithebk dot pub X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D108383 Bug ID: 108383 Summary: g++ ICE with -O3 and -flto on simple function Product: gcc Version: 12.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: eebssk1 at godaftwithebk dot pub Target Milestone: --- Getting ICE with O3&flto when compiling a project. Using mingw32 cross compiler on linux. project url: https://github.com/doitsujin/dxvk x86_64-w64-mingw32-g++ -o src/dxgi/dxgi.dll src/dxgi/dxgi.dll.p/version.o src/dxgi/dxgi.dll.p/dxgi_adapter.cpp.obj src/dxgi/dxgi.dll.p/dxgi_enums.cpp= .obj src/dxgi/dxgi.dll.p/dxgi_factory.cpp.obj src/dxgi/dxgi.dll.p/dxgi_format.cpp.obj src/dxgi/dxgi.dll.p/dxgi_main.cpp.o= bj src/dxgi/dxgi.dll.p/dxgi_monitor.cpp.obj src/dxgi/dxgi.dll.p/dxgi_options.cpp.obj src/dxgi/dxgi.dll.p/dxgi_output.cpp.obj src/dxgi/dxgi.dll.p/dxgi_surface.cpp.obj src/dxgi/dxgi.dll.p/dxgi_swapchain.cpp.obj -Wl,--allow-shlib-undefined -Wl,= -O1 -shared ../src/dxgi/dxgi.def -Wl,--start-group -Wl,--out-implib=3Dsrc/dxgi/dxgi.dll.a -static -static-libgcc -static-libst= dc++ -Wl,--file-alignment=3D4096 src/dxvk/libdxvk.a src/util/libutil.a src/spirv/libspirv.a src/wsi/libwsi.a subprojects/libdisplay-info/libdisplay-info.a src/vulkan/libvkcommon.a -pth= read -lm -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -lu= uid -lcomdlg32 -ladvapi32 -Wl,--end-group lto-wrapper: warning: using serial compilation of 21 LTRANS jobs lto-wrapper: note: see the =E2=80=98-flto=E2=80=99 option documentation for= more information during GIMPLE pass: alias ../src/dxgi/dxgi_adapter.cpp: In member function =E2=80=98RegisterVideoMemoryBudgetChangeNotificationEvent=E2=80=99: ../src/dxgi/dxgi_adapter.cpp:402:61: internal compiler error: in binds_to_current_def_p, at symtab.cc:2494 402 | HRESULT STDMETHODCALLTYPE=20 DxgiAdapter::RegisterVideoMemoryBudgetChangeNotificationEvent( | ^ 0x62d5fd symtab_node::binds_to_current_def_p(symtab_node*) ../../gcc/symtab.cc:2494 0x84ddd7 gimple_call_arg_flags(gcall const*, unsigned int) ../../gcc/gimple.cc:1583 0xce9a84 handle_rhs_call ../../gcc/tree-ssa-structalias.cc:4335 0xcebe1a find_func_aliases_for_call ../../gcc/tree-ssa-structalias.cc:5010 0xcebe1a find_func_aliases ../../gcc/tree-ssa-structalias.cc:5113 0xcee3c6 compute_points_to_sets ../../gcc/tree-ssa-structalias.cc:7536 0xcee3c6 compute_may_aliases() ../../gcc/tree-ssa-structalias.cc:8044 0xa4ff5c execute_function_todo ../../gcc/passes.cc:2057 0xa50c9c do_per_function ../../gcc/passes.cc:1688 0xa50c9c execute_todo ../../gcc/passes.cc:2139 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See for instructions. lto-wrapper: fatal error: x86_64-w64-mingw32-g++ returned 1 exit status compilation terminated. and then ../src/dxgi/dxgi_adapter.cpp: In member function =E2=80=98RegisterVideoMemoryBudgetChangeNotificationEvent=E2=80=99: ../src/dxgi/dxgi_adapter.cpp:402:71: internal compiler error: in binds_to_current_def_p, at symtab.cc:2494 402 | HRESULT STDMETHODCALLTYPE __attribute__((optimize("no-tree-pta"))= )=20 DxgiAdapter::RegisterVideoMemoryBudgetChangeNotificationEvent( | = ^ 0x62d5fd symtab_node::binds_to_current_def_p(symtab_node*) ../../gcc/symtab.cc:2494 0x912baf merge_call_side_effects ../../gcc/ipa-modref.cc:1310 0x913671 analyze_call ../../gcc/ipa-modref.cc:1678 0x913671 analyze_stmt ../../gcc/ipa-modref.cc:1811 0x91a19a analyze ../../gcc/ipa-modref.cc:1900 0x91a19a analyze_function ../../gcc/ipa-modref.cc:3219 0x91c5da execute ../../gcc/ipa-modref.cc:4186 and then with __attribute__((optimize("no-tree-pta","no-ipa-modref"))) the code unit compiled without ICE. The optimizations are in O1, however if i simply use __attribute__((optimize(2))),then the code unit does compile too, which is really weired. There's similar(may be same?) issues in here: https://github.com/msys2/MINGW-packages/issues/11726 , ICE in same gcc code location (symtab.cc:2494), with different flags though.=