public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 @ 2021-09-16 8:56 marxin at gcc dot gnu.org 2021-09-16 8:56 ` [Bug tree-optimization/102360] " marxin at gcc dot gnu.org ` (3 more replies) 0 siblings, 4 replies; 5+ messages in thread From: marxin at gcc dot gnu.org @ 2021-09-16 8:56 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102360 Bug ID: 102360 Summary: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 Product: gcc Version: 12.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: qing.zhao at oracle dot com Target Milestone: --- Host: x86_64-linux-gnu Target: aarch64-linux-gnu The following fails: $ aarch64-linux-gnu-g++ /home/marxin/Programming/gcc/gcc/testsuite/g++.dg/pr71294.C -fno-tree-dse -O1 -ftrivial-auto-var-init=pattern -c during RTL pass: expand /home/marxin/Programming/gcc/gcc/testsuite/g++.dg/pr71294.C: In function ‘void fn1()’: /home/marxin/Programming/gcc/gcc/testsuite/g++.dg/pr71294.C:58:19: internal compiler error: Segmentation fault 58 | B<double, 4, 1> d; | ^ 0xda6f3f crash_signal /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/toplev.c:328 0x7ffff786239f ??? ../sysdeps/unix/sysv/linux/sigaction.c:10 0xaaec00 can_native_interpret_type_p(tree_node*) /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/fold-const.c:8800 0xb614c6 expand_DEFERRED_INIT /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/internal-fn.c:3054 0x9885b7 expand_call_stmt /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:2749 0x9885b7 expand_gimple_stmt_1 /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:3876 0x9885b7 expand_gimple_stmt /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:4040 0x98d112 expand_gimple_basic_block /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:6082 0x98ef66 execute /home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:6808 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug tree-optimization/102360] ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 2021-09-16 8:56 [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 marxin at gcc dot gnu.org @ 2021-09-16 8:56 ` marxin at gcc dot gnu.org 2021-09-16 9:18 ` rguenth at gcc dot gnu.org ` (2 subsequent siblings) 3 siblings, 0 replies; 5+ messages in thread From: marxin at gcc dot gnu.org @ 2021-09-16 8:56 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102360 Martin Liška <marxin at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |rguenth at gcc dot gnu.org Target Milestone|--- |12.0 Priority|P3 |P1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug tree-optimization/102360] ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 2021-09-16 8:56 [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 marxin at gcc dot gnu.org 2021-09-16 8:56 ` [Bug tree-optimization/102360] " marxin at gcc dot gnu.org @ 2021-09-16 9:18 ` rguenth at gcc dot gnu.org 2021-09-16 11:23 ` cvs-commit at gcc dot gnu.org 2021-09-16 11:23 ` rguenth at gcc dot gnu.org 3 siblings, 0 replies; 5+ messages in thread From: rguenth at gcc dot gnu.org @ 2021-09-16 9:18 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102360 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org Last reconfirmed| |2021-09-16 --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. Program received signal SIGSEGV, Segmentation fault. 0x00000000012f2e6b in can_native_interpret_type_p (type=<tree 0x0>) at ../../src/trunk/gcc/fold-const.c:8800 8800 switch (TREE_CODE (type)) 3049 if (!can_native_interpret_type_p (var_type)) 3050 { 3051 alt_type 3052 = lang_hooks.types.type_for_mode (TYPE_MODE (var_type), 3053 TYPE_UNSIGNED (var_type)); 3054 gcc_assert (can_native_interpret_type_p (alt_type)); 3055 } alt_type doesn't need to exist. TYPE_MODE is OImode here. Another issue will be that native_interpret_int refuses to interpret types bigger than 128bit. So using alt_type = build_nonstandard_integer_type (GET_MODE_BITSIZE (TYPE_MODE (var_type)), 1); will likely not help. But if we know we're using an integer type we can natively interpret ourselves. Note there's another hole with variable-size and SVE vector modes I think. I'm testing something. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug tree-optimization/102360] ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 2021-09-16 8:56 [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 marxin at gcc dot gnu.org 2021-09-16 8:56 ` [Bug tree-optimization/102360] " marxin at gcc dot gnu.org 2021-09-16 9:18 ` rguenth at gcc dot gnu.org @ 2021-09-16 11:23 ` cvs-commit at gcc dot gnu.org 2021-09-16 11:23 ` rguenth at gcc dot gnu.org 3 siblings, 0 replies; 5+ messages in thread From: cvs-commit at gcc dot gnu.org @ 2021-09-16 11:23 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102360 --- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>: https://gcc.gnu.org/g:8d6b12b2233dabf3573383a15ccc67fdb925e5b3 commit r12-3578-g8d6b12b2233dabf3573383a15ccc67fdb925e5b3 Author: Richard Biener <rguenther@suse.de> Date: Thu Sep 16 11:19:14 2021 +0200 middle-end/102360 - adjust .DEFERRED_INIT expansion This avoids using native_interpret_type when we cannot do it with the original type of the variable, instead use an integer type for the initialization and side-step the size limitation of native_interpret_int. 2021-09-16 Richard Biener <rguenther@suse.de> PR middle-end/102360 * internal-fn.c (expand_DEFERRED_INIT): Make pattern-init of non-memory more robust. * g++.dg/pr102360.C: New testcase. ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Bug tree-optimization/102360] ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 2021-09-16 8:56 [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 marxin at gcc dot gnu.org ` (2 preceding siblings ...) 2021-09-16 11:23 ` cvs-commit at gcc dot gnu.org @ 2021-09-16 11:23 ` rguenth at gcc dot gnu.org 3 siblings, 0 replies; 5+ messages in thread From: rguenth at gcc dot gnu.org @ 2021-09-16 11:23 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102360 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED --- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- Fixed. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-09-16 11:23 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-09-16 8:56 [Bug tree-optimization/102360] New: ICE in can_native_interpret_type_p at gcc/fold-const.c:8800 marxin at gcc dot gnu.org 2021-09-16 8:56 ` [Bug tree-optimization/102360] " marxin at gcc dot gnu.org 2021-09-16 9:18 ` rguenth at gcc dot gnu.org 2021-09-16 11:23 ` cvs-commit at gcc dot gnu.org 2021-09-16 11:23 ` 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).