public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038
@ 2020-08-24 11:39 asolokha at gmx dot com
  2020-08-24 11:52 ` [Bug analyzer/96764] " dmalcolm at gcc dot gnu.org
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: asolokha at gmx dot com @ 2020-08-24 11:39 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 96764
           Summary: [11 Regression] ICE in
                    fold_convert_const_int_from_real, at fold-const.c:2038
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---

gcc-11.0.0-alpha20200823 snapshot (g:87c753ac241f25d222d46ba1ac66ceba89d6a200)
ICEs when compiling the following testcase, reduced from
gcc/testsuite/gcc.c-torture/execute/pr36343.c, w/ -fanalyzer:

void
ar (int *hd)
{
  int **zv = &hd;
  *(double *) zv = 0.0;
}

% gcc-11.0.0 -fanalyzer -c akrcmvle.c
during IPA pass: analyzer
akrcmvle.c: In function 'ar':
akrcmvle.c:5:18: internal compiler error: in fold_convert_const_int_from_real,
at fold-const.c:2038
    5 |   *(double *) zv = 0.0;
      |   ~~~~~~~~~~~~~~~^~~~~
0x62f411 fold_convert_const_int_from_real
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/fold-const.c:2038
0x62f411 fold_convert_const
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/fold-const.c:2284
0xa711ad fold_unary_loc(unsigned int, tree_code, tree_node*, tree_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/fold-const.c:8732
0x1125ecc ana::region_model_manager::maybe_fold_unaryop(tree_node*, tree_code,
ana::svalue const*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model-manager.cc:369
0x1125fd8 ana::region_model_manager::get_or_create_unaryop(tree_node*,
tree_code, ana::svalue const*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model-manager.cc:382
0x1125fd8 ana::region_model_manager::get_or_create_cast(tree_node*, ana::svalue
const*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/region-model-manager.cc:404
0x114c203 ana::initial_svalue::implicitly_live_p(hash_set<ana::svalue const*,
false, default_hash_traits<ana::svalue const*> > const&, ana::region_model
const*) const
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/svalue.cc:529
0x114c203 ana::initial_svalue::implicitly_live_p(hash_set<ana::svalue const*,
false, default_hash_traits<ana::svalue const*> > const&, ana::region_model
const*) const
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/svalue.cc:518
0x1105d59 ana::program_state::detect_leaks(ana::program_state const&,
ana::program_state const&, ana::svalue const*, ana::extrinsic_state const&,
ana::region_model_context*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/program-state.cc:1028
0x10f607a ana::exploded_graph::process_node(ana::exploded_node*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:2538
0x10f6aca ana::exploded_graph::process_worklist()
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:2341
0x10f8bff ana::impl_run_checkers(ana::logger*)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:4107
0x10f981c ana::run_checkers()
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/engine.cc:4175
0x10ee1d8 execute
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200823/work/gcc-11-20200823/gcc/analyzer/analyzer-pass.cc:84

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

* [Bug analyzer/96764] [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038
  2020-08-24 11:39 [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038 asolokha at gmx dot com
@ 2020-08-24 11:52 ` dmalcolm at gcc dot gnu.org
  2020-08-25 11:46 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2020-08-24 11:52 UTC (permalink / raw)
  To: gcc-bugs

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

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2020-08-24

--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
Thanks for filing this; confirmed.

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

* [Bug analyzer/96764] [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038
  2020-08-24 11:39 [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038 asolokha at gmx dot com
  2020-08-24 11:52 ` [Bug analyzer/96764] " dmalcolm at gcc dot gnu.org
@ 2020-08-25 11:46 ` rguenth at gcc dot gnu.org
  2020-08-31 20:07 ` cvs-commit at gcc dot gnu.org
  2020-08-31 20:12 ` dmalcolm at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: rguenth at gcc dot gnu.org @ 2020-08-25 11:46 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |11.0

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

* [Bug analyzer/96764] [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038
  2020-08-24 11:39 [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038 asolokha at gmx dot com
  2020-08-24 11:52 ` [Bug analyzer/96764] " dmalcolm at gcc dot gnu.org
  2020-08-25 11:46 ` rguenth at gcc dot gnu.org
@ 2020-08-31 20:07 ` cvs-commit at gcc dot gnu.org
  2020-08-31 20:12 ` dmalcolm at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-08-31 20:07 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by David Malcolm <dmalcolm@gcc.gnu.org>:

https://gcc.gnu.org/g:ecdb93224c56189a129e97c556fe6b78e1b15a63

commit r11-2952-gecdb93224c56189a129e97c556fe6b78e1b15a63
Author: David Malcolm <dmalcolm@redhat.com>
Date:   Thu Aug 27 18:20:24 2020 -0400

    analyzer: fix ICE on casting float to pointer [PR96764]

    gcc/analyzer/ChangeLog:
            PR analyzer/96764
            * region-model-manager.cc
            (region_model_manager::maybe_fold_unaryop): Handle
VIEW_CONVERT_EXPR.
            (region_model_manager::get_or_create_cast): Move logic for
            real->integer casting to...
            (get_code_for_cast): ...this new function, and add logic for
            real->non-integer casts.
            (region_model_manager::maybe_fold_sub_svalue): Handle
            VIEW_CONVERT_EXPR.
            * region-model.cc
            (region_model::add_any_constraints_from_gassign): Likewise.
            * svalue.cc (svalue::maybe_undo_cast): Likewise.
            (unaryop_svalue::dump_to_pp): Likewise.

    gcc/testsuite/ChangeLog:
            PR analyzer/96764
            * gcc.dg/analyzer/pr96764.c: New test.

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

* [Bug analyzer/96764] [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038
  2020-08-24 11:39 [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038 asolokha at gmx dot com
                   ` (2 preceding siblings ...)
  2020-08-31 20:07 ` cvs-commit at gcc dot gnu.org
@ 2020-08-31 20:12 ` dmalcolm at gcc dot gnu.org
  3 siblings, 0 replies; 5+ messages in thread
From: dmalcolm at gcc dot gnu.org @ 2020-08-31 20:12 UTC (permalink / raw)
  To: gcc-bugs

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

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
Should be fixed by above commit.

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

end of thread, other threads:[~2020-08-31 20:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-24 11:39 [Bug analyzer/96764] New: [11 Regression] ICE in fold_convert_const_int_from_real, at fold-const.c:2038 asolokha at gmx dot com
2020-08-24 11:52 ` [Bug analyzer/96764] " dmalcolm at gcc dot gnu.org
2020-08-25 11:46 ` rguenth at gcc dot gnu.org
2020-08-31 20:07 ` cvs-commit at gcc dot gnu.org
2020-08-31 20:12 ` dmalcolm 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).