[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-25 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 Jakub Jelinek changed: What|Removed |Added Status|NEW |RESOLVED Resolution|---

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-25 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #20 from prathamesh3492 at gcc dot gnu.org --- Author: prathamesh3492 Date: Fri Nov 25 08:03:51 2016 New Revision: 242858 URL: https://gcc.gnu.org/viewcvs?rev=242858&root=gcc&view=rev Log: 2016-11-25 Jakub Jelinek Prath

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #19 from prathamesh3492 at gcc dot gnu.org --- (In reply to Jakub Jelinek from comment #18) > Comment on attachment 40139 [details] > fix formatting of patch in comment 13 > > LGTM. Thanks, I have started bootstrap on x86_64-unknown-

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #18 from Jakub Jelinek --- Comment on attachment 40139 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40139 fix formatting of patch in comment 13 LGTM.

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #17 from prathamesh3492 at gcc dot gnu.org --- (In reply to Jakub Jelinek from comment #15) > For the tests, I think they would just pass on VMS. In one case you are > comparing if 0x7fffULL <= (unsigned int) something, th

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #16 from prathamesh3492 at gcc dot gnu.org --- Created attachment 40139 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40139&action=edit fix formatting of patch in comment 13 Done formatting changes in this version. Does it look

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #15 from Jakub Jelinek --- For the tests, I think they would just pass on VMS. In one case you are comparing if 0x7fffULL <= (unsigned int) something, that is for 32-bit int clearly never true and should be folded. And i

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #14 from Jakub Jelinek --- Comment on attachment 40137 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40137 check precision of ptrdiff_type_node and lhs type is equal Formatting is wrong. && should not be at the end of line, a

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #13 from prathamesh3492 at gcc dot gnu.org --- Created attachment 40137 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40137&action=edit check precision of ptrdiff_type_node and lhs type is equal Hi Jakub, Thanks for the suggest

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #12 from Jakub Jelinek --- Or perhaps check ptrdiff_type_node != NULL && TYPE_PRECISION (ptrdiff_type_node) == TYPE_PRECISION (size_type_node) before trying to optimize this? I mean, on VMS it might be fine if strlen returns 0xfff

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #11 from prathamesh3492 at gcc dot gnu.org --- (In reply to Jakub Jelinek from comment #10) > Comment on attachment 40136 [details] > move ptrdiff_type_node initialization to build_common_tree_nodes > > So, what do you want to do for

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #10 from Jakub Jelinek --- Comment on attachment 40136 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40136 move ptrdiff_type_node initialization to build_common_tree_nodes So, what do you want to do for VRP in the vms case whe

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #9 from prathamesh3492 at gcc dot gnu.org --- Created attachment 40136 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40136&action=edit move ptrdiff_type_node initialization to build_common_tree_nodes Hi Richard, Thanks for the

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #8 from Jakub Jelinek --- (In reply to Jakub Jelinek from comment #7) > case FMT_LEN_z: > dirtype = sign ? signed_type_for (size_type_node) : size_type_node; > break; > > case FMT_LEN_t: > dirtype = sign ? p

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #7 from Jakub Jelinek --- (In reply to Richard Biener from comment #3) > (In reply to prathamesh3492 from comment #2) > > Hi, > > From the trace, it seems ptrdiff_type_node is set to NULL for ada ? > > Either we can guard setting rang

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #6 from Richard Biener --- (In reply to Jakub Jelinek from comment #4) > Even for Fortran and other non-C FEs I think ptrdiff_type_node isn't what > you expect it to be. Wouldn't it be better to use signed_type_for (type) as > the ty

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #5 from Richard Biener --- Ugh, and lto does lto/lto-lang.c: ptrdiff_type_node = integer_type_node; (bogus, possibly causes wrong-code if it's ever used, make sure to remove that init as well)

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #4 from Jakub Jelinek --- Even for Fortran and other non-C FEs I think ptrdiff_type_node isn't what you expect it to be. Wouldn't it be better to use signed_type_for (type) as the type instead (where type is the type of strlen's lhs,

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-24 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #3 from Richard Biener --- (In reply to prathamesh3492 from comment #2) > Hi, > From the trace, it seems ptrdiff_type_node is set to NULL for ada ? > Either we can guard setting range for CFN_BUILTIN_STRLEN by checking > ptrtdiff_type

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-23 Thread prathamesh3492 at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 --- Comment #2 from prathamesh3492 at gcc dot gnu.org --- Hi, From the trace, it seems ptrdiff_type_node is set to NULL for ada ? Either we can guard setting range for CFN_BUILTIN_STRLEN by checking ptrtdiff_type_node is non null, or make vrp_val_

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-23 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 Dominique d'Humieres changed: What|Removed |Added Target|*-*-solaris2.* |*-*-solaris2.*

[Bug middle-end/78501] [7 regression] SEGV in vrp_val_max

2016-11-23 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78501 Rainer Orth changed: What|Removed |Added Target Milestone|--- |7.0