public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` @ 2023-10-22 2:48 141242068 at smail dot nju.edu.cn 2023-10-22 2:55 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with " pinskia at gcc dot gnu.org ` (6 more replies) 0 siblings, 7 replies; 8+ messages in thread From: 141242068 at smail dot nju.edu.cn @ 2023-10-22 2:48 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 Bug ID: 111915 Summary: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: 141242068 at smail dot nju.edu.cn Target Milestone: --- When compile this program, GCC crashes: ``` void foo (int * __restrict a, int * __restrict b, int * __restrict w) { for (int i = 0; i < 16; ++i) { *a += w[2*i+0]; *b += w[2*i&1]; } } int main() { int w[32]; int a = 0, b = 0; foo (&a, b, w); return 0; } ``` Compiler Explorer: https://gcc.godbolt.org/z/8oYjE3e9j The crash seems to be triggered solely under specific conditions: when the -fno-tree-vrp, -fno-tree-dominator-opts, and -fno-tree-ccp options are enabled, in conjunction with an optimization level of -O2 or higher. However, I'm uncertain whether this combination of settings violates on any internal conventions or requirements tied to these options. The full stack dump: ``` <source>: In function 'main': <source>:15:12: warning: passing argument 2 of 'foo' makes pointer from integer without a cast [-Wint-conversion] 15 | foo (&a, b, w); | ^ | | | int <source>:2:43: note: expected 'int * restrict' but argument is of type 'int' 2 | foo (int * __restrict a, int * __restrict b, int * __restrict w) | ~~~~~~~~~~~~~~~~~^ <source>: In function 'foo': <source>:2:1: error: definition in block 3 follows the use 2 | foo (int * __restrict a, int * __restrict b, int * __restrict w) | ^~~ for SSA_NAME: _12 in statement: vect_cst__35 = {_12, _12, _12, _12}; during GIMPLE pass: vect <source>:2:1: internal compiler error: verify_ssa failed 0x231f49e internal_error(char const*, ...) ???:0 0x139c15e verify_ssa(bool, bool) ???:0 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. ``` ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn @ 2023-10-22 2:55 ` pinskia at gcc dot gnu.org 2023-10-22 2:57 ` pinskia at gcc dot gnu.org ` (5 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-10-22 2:55 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2023-10-22 Target Milestone|--- |14.0 Status|UNCONFIRMED |NEW Ever confirmed|0 |1 Keywords| |needs-bisection Summary|GCC: ICEs on a program with |[14 Regression] ICE in vect |__restrict and option `-O2 |with option `-O2 |-fno-tree-vrp |-fno-tree-vrp |-fno-tree-dominator-opts |-fno-tree-dominator-opts |-fno-tree-ccp` |-fno-tree-ccp` --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Confirmed. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn 2023-10-22 2:55 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with " pinskia at gcc dot gnu.org @ 2023-10-22 2:57 ` pinskia at gcc dot gnu.org 2023-10-22 2:59 ` pinskia at gcc dot gnu.org ` (4 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-10-22 2:57 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Maybe one of richi's recent SLP related patches: GCC 13: /app/example.cpp:5:21: missed: Build SLP failed: not grouped load _12 = *_11; /app/example.cpp:5:21: note: SLP discovery for node 0x4cdbb68 failed /app/example.cpp:5:21: note: SLP discovery for node 0x4cdbae8 failed /app/example.cpp:5:21: note: SLP discovery failed But GCC 14: /app/example.cpp:5:21: note: Build SLP for _6 = *_5; /app/example.cpp:5:21: note: precomputed vectype: vector(4) int /app/example.cpp:5:21: note: nunits = 4 /app/example.cpp:5:21: note: SLP discovery for node 0x4802428 succeeded ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn 2023-10-22 2:55 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with " pinskia at gcc dot gnu.org 2023-10-22 2:57 ` pinskia at gcc dot gnu.org @ 2023-10-22 2:59 ` pinskia at gcc dot gnu.org 2023-10-22 22:05 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 sjames at gcc dot gnu.org ` (3 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-10-22 2:59 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note the reasoning for the extra options is still get: _2 = i_26 * 2; _23 = _2 & 1; _9 = (long unsigned int) _23; In the IR. Otherwise _23 would be 0. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn ` (2 preceding siblings ...) 2023-10-22 2:59 ` pinskia at gcc dot gnu.org @ 2023-10-22 22:05 ` sjames at gcc dot gnu.org 2023-10-23 9:17 ` rguenth at gcc dot gnu.org ` (2 subsequent siblings) 6 siblings, 0 replies; 8+ messages in thread From: sjames at gcc dot gnu.org @ 2023-10-22 22:05 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 Sam James <sjames at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|[14 Regression] ICE in vect |[14 Regression] ICE in vect |with option `-O2 |with option `-O2 |-fno-tree-vrp |-fno-tree-vrp |-fno-tree-dominator-opts |-fno-tree-dominator-opts |-fno-tree-ccp` |-fno-tree-ccp` since | |r14-2117-gdd86a5a69cbda4 CC| |rguenth at gcc dot gnu.org, | |sjames at gcc dot gnu.org --- Comment #4 from Sam James <sjames at gcc dot gnu.org> --- dd86a5a69cbda40cf76388a65d3317c91cb2b501 is the first bad commit commit dd86a5a69cbda40cf76388a65d3317c91cb2b501 Author: Richard Biener <rguenther@suse.de> Date: Thu Jun 22 11:40:46 2023 +0200 tree-optimization/96208 - SLP of non-grouped loads -> r14-2117-gdd86a5a69cbda4 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn ` (3 preceding siblings ...) 2023-10-22 22:05 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 sjames at gcc dot gnu.org @ 2023-10-23 9:17 ` rguenth at gcc dot gnu.org 2023-10-23 13:33 ` cvs-commit at gcc dot gnu.org 2023-10-23 13:33 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2023-10-23 9:17 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P3 |P1 Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- I will have a look. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn ` (4 preceding siblings ...) 2023-10-23 9:17 ` rguenth at gcc dot gnu.org @ 2023-10-23 13:33 ` cvs-commit at gcc dot gnu.org 2023-10-23 13:33 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: cvs-commit at gcc dot gnu.org @ 2023-10-23 13:33 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 --- Comment #6 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:00eb0812e6464307f9f971d2a743d720015e70cf commit r14-4865-g00eb0812e6464307f9f971d2a743d720015e70cf Author: Richard Biener <rguenther@suse.de> Date: Mon Oct 23 13:42:53 2023 +0200 tree-optimization/111915 - mixing grouped and non-grouped accesses The change to allow SLP of non-grouped accesses failed to check for the case of mixing with grouped accesses. PR tree-optimization/111915 * tree-vect-slp.cc (vect_build_slp_tree_1): Check all accesses are either grouped or not. * gcc.dg/vect/pr111915.c: New testcase. ^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn ` (5 preceding siblings ...) 2023-10-23 13:33 ` cvs-commit at gcc dot gnu.org @ 2023-10-23 13:33 ` rguenth at gcc dot gnu.org 6 siblings, 0 replies; 8+ messages in thread From: rguenth at gcc dot gnu.org @ 2023-10-23 13:33 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111915 Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|ASSIGNED |RESOLVED --- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> --- Fixed. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-10-23 13:33 UTC | newest] Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-10-22 2:48 [Bug c/111915] New: GCC: ICEs on a program with __restrict and option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` 141242068 at smail dot nju.edu.cn 2023-10-22 2:55 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with " pinskia at gcc dot gnu.org 2023-10-22 2:57 ` pinskia at gcc dot gnu.org 2023-10-22 2:59 ` pinskia at gcc dot gnu.org 2023-10-22 22:05 ` [Bug tree-optimization/111915] [14 Regression] ICE in vect with option `-O2 -fno-tree-vrp -fno-tree-dominator-opts -fno-tree-ccp` since r14-2117-gdd86a5a69cbda4 sjames at gcc dot gnu.org 2023-10-23 9:17 ` rguenth at gcc dot gnu.org 2023-10-23 13:33 ` cvs-commit at gcc dot gnu.org 2023-10-23 13:33 ` 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).