public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
@ 2021-11-02 18:24 marxin at gcc dot gnu.org
  2021-11-02 18:29 ` [Bug tree-optimization/103050] " hubicka at gcc dot gnu.org
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 18:24 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 103050
           Summary: [12 Regression] 520.omnetpp_r miscompiled after
                    r12-4787-gb8ef019ab938471f
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: hubicka at gcc dot gnu.org
  Target Milestone: ---

The benchmark crashes with:

****************************************
Contents of omnetpp.General-0.err
****************************************
munmap_chunk(): invalid pointer

with -march=znver1 (or znver3) -O3 -flto

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
@ 2021-11-02 18:29 ` hubicka at gcc dot gnu.org
  2021-11-02 18:32 ` marxin at gcc dot gnu.org
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-02 18:29 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Martin,
do we know that the retslot change is the bad commit?  I proofread the patch
and did not see anything obviously wrong, however as seen in PR103040 the
previous behaviour that made return slots to escape could easily make some bad
code to not be misoptimized...

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
  2021-11-02 18:29 ` [Bug tree-optimization/103050] " hubicka at gcc dot gnu.org
@ 2021-11-02 18:32 ` marxin at gcc dot gnu.org
  2021-11-02 18:39 ` marxin at gcc dot gnu.org
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 18:32 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2021-11-02
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
Isolating right now..

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
  2021-11-02 18:29 ` [Bug tree-optimization/103050] " hubicka at gcc dot gnu.org
  2021-11-02 18:32 ` marxin at gcc dot gnu.org
@ 2021-11-02 18:39 ` marxin at gcc dot gnu.org
  2021-11-02 18:41 ` marxin at gcc dot gnu.org
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 18:39 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
First valgrind error happens here:

Loading NED files from a SPEC directory 13
==22550== Conditional jump or move depends on uninitialised value(s)
==22550==    at 0x53DF91: Cmdenv::sputn(char const*, int) (cmdenv.cc:572)
==22550==    by 0x44EEF5: UnknownInlinedFun (cenvir.cc:39)
==22550==    by 0x44EEF5: UnknownInlinedFun (cenvir.cc:47)
==22550==    by 0x44EEF5: UnknownInlinedFun (streambuf:456)
==22550==    by 0x44EEF5: cEnvir::printf(char const*, ...) (cenvir.cc:108)
==22550==    by 0x49C4F7: EnvirBase::setup() (envirbase.cc:397)
==22550==    by 0x49CAEE: EnvirBase::run(int, char**, cConfiguration*)
(envirbase.cc:229)
==22550==    by 0x54F88C: setupUserInterface(int, char**, cConfiguration*)
[clone .constprop.0] (startup.cc:234)
==22550==    by 0x43394C: main (main.cc:39)
==22550==

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2021-11-02 18:39 ` marxin at gcc dot gnu.org
@ 2021-11-02 18:41 ` marxin at gcc dot gnu.org
  2021-11-02 18:47 ` marxin at gcc dot gnu.org
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 18:41 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #3)
> First valgrind error happens here:
> 
> Loading NED files from a SPEC directory 13
> ==22550== Conditional jump or move depends on uninitialised value(s)
> ==22550==    at 0x53DF91: Cmdenv::sputn(char const*, int) (cmdenv.cc:572)
> ==22550==    by 0x44EEF5: UnknownInlinedFun (cenvir.cc:39)
> ==22550==    by 0x44EEF5: UnknownInlinedFun (cenvir.cc:47)
> ==22550==    by 0x44EEF5: UnknownInlinedFun (streambuf:456)
> ==22550==    by 0x44EEF5: cEnvir::printf(char const*, ...) (cenvir.cc:108)
> ==22550==    by 0x49C4F7: EnvirBase::setup() (envirbase.cc:397)
> ==22550==    by 0x49CAEE: EnvirBase::run(int, char**, cConfiguration*)
> (envirbase.cc:229)
> ==22550==    by 0x54F88C: setupUserInterface(int, char**, cConfiguration*)
> [clone .constprop.0] (startup.cc:234)
> ==22550==    by 0x43394C: main (main.cc:39)
> ==22550==

Sorry, this happens also with -O0. Searching more..

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2021-11-02 18:41 ` marxin at gcc dot gnu.org
@ 2021-11-02 18:47 ` marxin at gcc dot gnu.org
  2021-11-02 19:53 ` marxin at gcc dot gnu.org
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 18:47 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
This one is real:

Running simulation...
** Event #1   T=0   Elapsed: 0.000s (0m 00s)  0% completed   ev/sec=0
** Event #2160226   T=0.003   Elapsed: 0.000s (0m 00s)  100% completed  
ev/sec=0

<!> Simulation time limit reached -- simulation stopped.


Calling finish() at end of Run #0...
==24978== Invalid free() / delete / delete[] / realloc()
==24978==    at 0x4841685: operator delete(void*, unsigned long)
(vg_replace_malloc.c:814)
==24978==    by 0x48FA61: UnknownInlinedFun (new_allocator.h:157)
==24978==    by 0x48FA61: UnknownInlinedFun (alloc_traits.h:496)
==24978==    by 0x48FA61: UnknownInlinedFun (basic_string.h:247)
==24978==    by 0x48FA61: UnknownInlinedFun (basic_string.h:242)
==24978==    by 0x48FA61: UnknownInlinedFun (basic_string.h:675)
==24978==    by 0x48FA61: sRunData::writeRunData(_IO_FILE*, opp_string)
(runattributes.cc:85)
==24978==    by 0x43F227: cFileOutputScalarManager::init()
(fileoutscalarmgr.cc:115)
==24978==    by 0x43F764: cFileOutputScalarManager::recordScalar(cComponent*,
char const*, double, opp_string_map*) (fileoutscalarmgr.cc:162)
==24978==    by 0x527EBA: UnknownInlinedFun (ccomponent.cc:232)
==24978==    by 0x527EBA: MACRelayUnitNP::finish() (MACRelayUnitNP.cc:205)
==24978==    by 0x46E9CA: cModule::callFinish() (cmodule.cc:1151)
==24978==    by 0x46E97B: cModule::callFinish() (cmodule.cc:1144)
==24978==    by 0x46E97B: cModule::callFinish() (cmodule.cc:1144)
==24978==    by 0x42C73E: UnknownInlinedFun (csimulation.cc:425)
==24978==    by 0x42C73E: Cmdenv::run() [clone .cold] (cmdenv.cc:273)
==24978==    by 0x4610AE: EnvirBase::run(int, char**, cConfiguration*)
(envirbase.cc:230)
==24978==    by 0x5373CC: setupUserInterface(int, char**, cConfiguration*)
[clone .constprop.0] (startup.cc:234)
==24978==    by 0x433B2C: main (main.cc:39)
==24978==  Address 0x1ffefff5e0 is on thread 1's stack
==24978==  in frame #1, created by sRunData::writeRunData(_IO_FILE*,
opp_string) (new_allocator.h:81)

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2021-11-02 18:47 ` marxin at gcc dot gnu.org
@ 2021-11-02 19:53 ` marxin at gcc dot gnu.org
  2021-11-02 19:58 ` marxin at gcc dot gnu.org
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 19:53 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
I was able to track that to ltrans0, where one needs 2 optimizations to happen:
-fdbg-cnt=ipa_mod_ref_pta:1296-1296:1482-1482

then optimized dump differs (good vs. bad) in:

void recordScalar (struct cFileOutputScalarManager * const this, struct
cComponent * component, const char * name, double value, struct opp_string_map
* attributes)
{
...
   <bb 56> [local count: 84297948]:
   _152 = D.31174._M_dataplus._M_p;
-  if (&D.31174.D.4725._M_local_buf != _152)
-    goto <bb 57>; [53.47%]
-  else
-    goto <bb 58>; [46.53%]
-
-  <bb 57> [local count: 45074110]:
...
   _202 = D.31174._M_dataplus._M_p;
-  if (&D.31174.D.4725._M_local_buf != _202)
-    goto <bb 125>; [0.00%]
-  else
-    goto <bb 126>; [0.00%]
-
-  <bb 125> [count: 0]:
   _203 = D.31174.D.4725._M_allocated_capacity;
   _204 = _203 + 1;
   operator delete (_202, _204);

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2021-11-02 19:53 ` marxin at gcc dot gnu.org
@ 2021-11-02 19:58 ` marxin at gcc dot gnu.org
  2021-11-02 20:06 ` marxin at gcc dot gnu.org
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 19:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Martin Liška <marxin at gcc dot gnu.org> ---
$ grep dbgcnt omn*
omnetpp_r.ltrans0.ltrans.140t.pre:***dbgcnt: lower limit 1296 reached for
ipa_mod_ref_pta.***
omnetpp_r.ltrans0.ltrans.140t.pre:***dbgcnt: upper limit 1296 reached for
ipa_mod_ref_pta.***
omnetpp_r.ltrans0.ltrans.212t.modref2:***dbgcnt: lower limit 1482 reached for
ipa_mod_ref_pta.***
omnetpp_r.ltrans0.ltrans.212t.modref2:***dbgcnt: upper limit 1482 reached for
ipa_mod_ref_pta.***

There are the 2 logs:
https://splichal.eu/tmp/omne.tar.zst

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2021-11-02 19:58 ` marxin at gcc dot gnu.org
@ 2021-11-02 20:06 ` marxin at gcc dot gnu.org
  2021-11-02 20:08 ` marxin at gcc dot gnu.org
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 20:06 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Martin Liška <marxin at gcc dot gnu.org> ---
So the only 2 transform happen here:

(gdb) bt
#0  gimple_call_retslot_flags (stmt=0x7ffff4543b40) at
/home/marxin/Programming/gcc/gcc/gimple.c:1644
#1  0x0000000000ff6128 in handle_rhs_call (stmt=0x7ffff4543b40,
results=0x7fffffffc750, implicit_eaf_flags=0, writes_global_memory=<optimized
out>, reads_global_memory=<optimized out>) at
/home/marxin/Programming/gcc/gcc/tree-ssa-structalias.c:4266
#2  0x0000000000ff9103 in find_func_aliases_for_call (t=<optimized out>,
fn=<optimized out>) at
/home/marxin/Programming/gcc/gcc/tree-ssa-structalias.c:4921
#3  find_func_aliases (fn=<optimized out>, origt=<optimized out>) at
/home/marxin/Programming/gcc/gcc/tree-ssa-structalias.c:5024
#4  0x0000000000ffac9b in compute_points_to_sets () at
/home/marxin/Programming/gcc/gcc/tree-ssa-structalias.c:7440
#5  compute_may_aliases () at
/home/marxin/Programming/gcc/gcc/tree-ssa-structalias.c:7948
#6  0x0000000000cf2f2d in execute_function_todo (fn=0x7ffff7133f00,
data=<optimized out>) at /home/marxin/Programming/gcc/gcc/passes.c:2014
#7  0x0000000000cf347c in execute_todo (flags=1572864) at
/home/marxin/Programming/gcc/gcc/passes.c:2096
#8  0x0000000000cf60fe in execute_one_pass (pass=0x282cae0) at
/home/marxin/Programming/gcc/gcc/passes.c:2560
#9  0x0000000000cf6a13 in execute_pass_list_1 (pass=0x282cae0) at
/home/marxin/Programming/gcc/gcc/passes.c:2656
#10 0x0000000000cf6a25 in execute_pass_list_1 (pass=0x282ba00) at
/home/marxin/Programming/gcc/gcc/passes.c:2657
#11 0x0000000000cf6a56 in execute_pass_list (fn=0x7ffff7133f00, pass=<optimized
out>) at /home/marxin/Programming/gcc/gcc/passes.c:2667
#12 0x00000000009424f5 in cgraph_node::expand (this=0x7ffff730ddd0) at
/home/marxin/Programming/gcc/gcc/context.h:48
#13 cgraph_node::expand (this=0x7ffff730ddd0) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:1781
#14 0x0000000000943b6f in expand_all_functions () at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:1992
#15 symbol_table::compile (this=0x7ffff765a000) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:2356
#16 symbol_table::compile (this=0x7ffff765a000) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:2267
#17 0x0000000000896c80 in lto_main () at
/home/marxin/Programming/gcc/gcc/lto/lto.c:653
#18 0x0000000000ddcd24 in compile_file () at
/home/marxin/Programming/gcc/gcc/toplev.c:452
#19 0x000000000086d91b in do_compile (no_backend=false) at
/home/marxin/Programming/gcc/gcc/toplev.c:2154
#20 toplev::main (this=this@entry=0x7fffffffccfe, argc=<optimized out>,
argc@entry=198, argv=<optimized out>, argv@entry=0x7fffffffce48) at
/home/marxin/Programming/gcc/gcc/toplev.c:2306
#21 0x0000000000870fd5 in main (argc=198, argv=0x7fffffffce48) at
/home/marxin/Programming/gcc/gcc/main.c:39

(gdb) p debug_gimple_stmt(stmt)
# .MEM_271 = VDEF <.MEM_270>
D.31174 = opp_quotestr (name_22); [return slot optimization]

(gdb) p debug_function(cfun->decl, 0)
void recordScalar (struct cFileOutputScalarManager * const this, struct
cComponent * component, const char * name, double value, struct opp_string_map
* attributes)
{
  const char * s;
  const char * s;
  struct _Rb_tree_node_base * const it$_M_node;
  struct string D.31180;
  struct string D.31179;
  struct string D.31178;
  struct string D.31177;
  struct string D.31176;
  struct string D.31175;
  struct string D.31174;
  struct string D.31173;
  struct basic_string D.31172;
  struct basic_string D.31171;
  bool _1;
  struct FILE * _2;
  char _3;
  int (*__vtbl_ptr_type) () * _4;
  int (*__vtbl_ptr_type) () _5;
  int (*__vtbl_ptr_type) () * _6;
  int (*__vtbl_ptr_type) () _7;
  struct cConfigOption * _8;
  struct cObject * _9;
  int (*__vtbl_ptr_type) () * _11;
  int (*__vtbl_ptr_type) () _12;
  int _13;
  int (*__vtbl_ptr_type) () * _14;
  int (*__vtbl_ptr_type) () _15;
  int (*__vtbl_ptr_type) () * _16;
  int (*__vtbl_ptr_type) () _17;
  int (*__vtbl_ptr_type) () * _18;
  int (*__vtbl_ptr_type) () _19;
  struct FILE * _20;
  struct FILE * _21;
  const char * _23;
  bool _24;
  const char * _25;
  bool _26;
  bool _27;
  bool _28;
  bool _29;
  bool _30;
  const char * _31;
  bool _32;
  bool _33;
  const char * _34;
  bool _35;
  bool _36;
  char * _67;
  struct cConfiguration * _69;
  long unsigned int _74;
  bool _76;
  bool _81;
  long unsigned int _83;
  bool _86;
  char * _88;
  char * _90;
  char * _92;
  int _95;
  struct cEnvir * _102;
  char * _103;
  char * _104;
  char * _107;
  long unsigned int _108;
  long unsigned int _109;
  long unsigned int _110;
  long unsigned int _112;
  bool _114;
  char * _115;
  char * _116;
  long unsigned int _117;
  long unsigned int _119;
  int _121;
  void * _126;
  char * _127;
  void * _133;
  char * _134;
  long unsigned int _144;
  long unsigned int _145;
  char * _146;
  long unsigned int _147;
  long unsigned int _148;
  char * _149;
  long unsigned int _150;
  long unsigned int _151;
  char * _152;
  long unsigned int _153;
  long unsigned int _154;
  char * _155;
  const char * _156;
  struct _Rb_tree_node_base * _157;
  char * _158;
  char * _162;
  char * _165;
  char _167;
  char * _169;
  char * _171;
  long unsigned int _172;
  long unsigned int _173;
  char * _174;
  long unsigned int _175;
  long unsigned int _176;
  char * _177;
  const char * _178;
  struct _Rb_tree_node_base * _179;
  char * _181;
  long unsigned int _182;
  long unsigned int _183;
  char * _184;
  long unsigned int _185;
  long unsigned int _186;
  char * _187;
  long unsigned int _188;
  long unsigned int _189;
  char * _190;
  long unsigned int _191;
  long unsigned int _192;
  char * _193;
  long unsigned int _194;
  long unsigned int _195;
  char * _196;
  long unsigned int _197;
  long unsigned int _198;
  char * _199;
  long unsigned int _200;
  long unsigned int _201;
  char * _202;
  long unsigned int _203;
  long unsigned int _204;
  char * _205;
  long unsigned int _206;
  long unsigned int _207;
  char * _208;
  long unsigned int _209;
  long unsigned int _210;
  struct _Rb_tree_node_base * _239;
  bool _259;
  void * PROF_336;
  struct cConfiguration * _338;
  struct cConfiguration * _340;
  char * _344;
  const char[16] * _345;
  uint128_t _346;
  long unsigned int _347;
  long unsigned int _348;
  long unsigned int _350;
  char _351;
  struct basic_string & _352;
  bool _354;
  char _355;
  char * _356;
  const char[16] * _357;
  uint128_t _358;
  long unsigned int _359;
  long unsigned int _360;
  long unsigned int _361;
  long unsigned int _362;
  long unsigned int _363;
  struct basic_string & _364;
  bool _366;
  bool _367;
  char _369;
  unsigned char _370;
  int _371;
  int _372;
  int _373;
  bool _379;
  bool _380;
  char _381;
  unsigned char _382;
  int _383;
  int _384;
  int _385;
  char _416;
  bool _422;
  const char * _425;
  bool _426;
  const char * _427;
  bool _428;

  <bb 2> [local count: 624228568]:
  _1 = this_64(D)->run.initialized;
  if (_1 != 0)
    goto <bb 4>; [67.00%]
  else
    goto <bb 3>; [33.00%]

  <bb 3> [local count: 205995424]:
  init (this_64(D));

  <bb 4> [local count: 624228568]:
  _2 = this_64(D)->f;
  if (_2 == 0B)
    goto <bb 98>; [18.09%]
  else
    goto <bb 5>; [81.91%]

  <bb 5> [local count: 511305619]:
  if (name_66(D) == 0B)
    goto <bb 7>; [30.00%]
  else
    goto <bb 6>; [70.00%]

  <bb 6> [local count: 357913935]:
  _3 = *name_66(D);
  if (_3 == 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 332348652]:

  <bb 8> [local count: 511305619]:
  # name_22 = PHI <name_66(D)(6), "(unnamed)"(7)>
  _102 = evPtr;
  _4 = _102->_vptr.cEnvir;
  _5 = MEM[(int (*__vtbl_ptr_type) () *)_4 + 248B];
  PROF_336 = [obj_type_ref] OBJ_TYPE_REF(_5;(struct cEnvir)_102->31);
  if (PROF_336 == getConfig)
    goto <bb 9>; [80.00%]
  else
    goto <bb 10>; [20.00%]

  <bb 9> [local count: 409044496]:
  _340 = MEM[(struct EnvirBase *)_102].cfg;
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 102261128]:
  _338 = OBJ_TYPE_REF(_5;(struct cEnvir)_102->31) (_102);

  <bb 11> [local count: 511305619]:
  # _69 = PHI <_338(10), _340(9)>
  _6 = _69->D.4955._vptr.cObject;
  _7 = MEM[(int (*__vtbl_ptr_type) () *)_6 + 264B];
  _8 = CFGID_SCALAR_RECORDING;
  _9 = &component_70(D)->D.5106.D.5083.D.4983.D.4767.D.4758;
  _11 = component_70(D)->D.5106.D.5083.D.4983.D.4767.D.4758._vptr.cObject;
  _12 = MEM[(int (*__vtbl_ptr_type) () *)_11 + 64B];
  D.31173 = OBJ_TYPE_REF(_12;(struct cObject)_9->8) (_9); [return slot
optimization]
  _350 = D.31173._M_string_length;
  if (_350 == 4611686018427387903)
    goto <bb 12>; [0.04%]
  else
    goto <bb 13>; [99.96%]

  <bb 12> [local count: 204523]:
  __throw_length_error ("basic_string::append");

  <bb 13> [local count: 511101096]:
  _352 = _M_append (&D.31173, ".", 1);

  <bb 14> [local count: 511101096]:
  MEM[(struct _Alloc_hider *)&D.31172]._M_p = &MEM <char[16]> [(void *)&D.31172
+ 16B];
  _344 = MEM[(const struct basic_string *)_352]._M_dataplus._M_p;
  _345 = &MEM[(const struct basic_string *)_352].D.4725._M_local_buf;
  if (_344 == _345)
    goto <bb 15>; [30.00%]
  else
    goto <bb 16>; [70.00%]

  <bb 15> [local count: 153330329]:
  _346 = MEM <uint128_t> [(char * {ref-all})_352 + 16B];
  MEM <uint128_t> [(char * {ref-all})&D.31172 + 16B] = _346;
  goto <bb 17>; [100.00%]

  <bb 16> [local count: 357770767]:
  D.31172._M_dataplus._M_p = _344;
  _347 = *_352.D.4725._M_allocated_capacity;
  D.31172.D.4725._M_allocated_capacity = _347;

  <bb 17> [local count: 511101096]:
  _348 = MEM[(const struct basic_string *)_352]._M_string_length;
  D.31172._M_string_length = _348;
  *_352._M_dataplus._M_p = _345;
  *_352._M_string_length = 0;
  MEM[(char_type &)_352 + 16] = 0;
  _361 = __builtin_strlen (name_22);
  _362 = D.31172._M_string_length;
  _363 = 4611686018427387903 - _362;
  if (_361 > _363)
    goto <bb 18>; [0.04%]
  else
    goto <bb 19>; [99.96%]

  <bb 18> [local count: 204439]:
  __throw_length_error ("basic_string::append");

  <bb 19> [local count: 510896657]:
  _364 = _M_append (&D.31172, name_22, _361);

  <bb 20> [local count: 510896657]:
  MEM[(struct _Alloc_hider *)&D.31171]._M_p = &MEM <char[16]> [(void *)&D.31171
+ 16B];
  _356 = MEM[(const struct basic_string *)_364]._M_dataplus._M_p;
  _357 = &MEM[(const struct basic_string *)_364].D.4725._M_local_buf;
  if (_356 == _357)
    goto <bb 21>; [30.00%]
  else
    goto <bb 22>; [70.00%]

  <bb 21> [local count: 153268996]:
  _358 = MEM <uint128_t> [(char * {ref-all})_364 + 16B];
  MEM <uint128_t> [(char * {ref-all})&D.31171 + 16B] = _358;
  goto <bb 23>; [100.00%]

  <bb 22> [local count: 357627661]:
  D.31171._M_dataplus._M_p = _356;
  _359 = *_364.D.4725._M_allocated_capacity;
  D.31171.D.4725._M_allocated_capacity = _359;

  <bb 23> [local count: 510896657]:
  _360 = MEM[(const struct basic_string *)_364]._M_string_length;
  D.31171._M_string_length = _360;
  *_364._M_dataplus._M_p = _357;
  *_364._M_string_length = 0;
  MEM[(char_type &)_364 + 16] = 0;
  _127 = D.31171._M_dataplus._M_p;
  _76 = OBJ_TYPE_REF(_7;(struct cConfiguration)_69->33) (_69, _127, _8, 0);

  <bb 24> [local count: 510896657]:
  _107 = D.31171._M_dataplus._M_p;
  if (&D.31171.D.4725._M_local_buf != _107)
    goto <bb 25>; [53.47%]
  else
    goto <bb 26>; [46.53%]

  <bb 25> [local count: 273176442]:
  _110 = D.31171.D.4725._M_allocated_capacity;
  _109 = _110 + 1;
  operator delete (_107, _109);

  <bb 26> [local count: 510896657]:
  D.31171 ={v} {CLOBBER};
  D.31171 ={v} {CLOBBER};
  _116 = D.31172._M_dataplus._M_p;
  if (&D.31172.D.4725._M_local_buf != _116)
    goto <bb 27>; [53.47%]
  else
    goto <bb 28>; [46.53%]

  <bb 27> [local count: 273176442]:
  _112 = D.31172.D.4725._M_allocated_capacity;
  _108 = _112 + 1;
  operator delete (_116, _108);

  <bb 28> [local count: 510896657]:
  D.31172 ={v} {CLOBBER};
  D.31172 ={v} {CLOBBER};
  _115 = D.31173._M_dataplus._M_p;
  if (&D.31173.D.4725._M_local_buf != _115)
    goto <bb 29>; [53.47%]
  else
    goto <bb 30>; [46.53%]

  <bb 29> [local count: 273176442]:
  _119 = D.31173.D.4725._M_allocated_capacity;
  _117 = _119 + 1;
  operator delete (_115, _117);

  <bb 30> [local count: 510896657]:
  D.31173 ={v} {CLOBBER};
  D.31173 ={v} {CLOBBER};
  if (_76 != 0)
    goto <bb 31>; [33.00%]
  else
    goto <bb 98>; [67.00%]

  <bb 31> [local count: 168595896]:
  _13 = this_64(D)->prec;
  _81 = opp_needsquotes (name_22);
  if (_81 != 0)
    goto <bb 32>; [33.00%]
  else
    goto <bb 33>; [67.00%]

  <bb 32> [local count: 55636644]:
  D.31174 = opp_quotestr (name_22); [return slot optimization]
  _104 = D.31174._M_dataplus._M_p;

  <bb 33> [local count: 168595896]:
  # _23 = PHI <name_22(31), _104(32)>
  # _24 = PHI <0(31), 1(32)>
  _14 = component_70(D)->D.5106.D.5083.D.4983.D.4767.D.4758._vptr.cObject;
  _15 = MEM[(int (*__vtbl_ptr_type) () *)_14 + 64B];
  D.31175 = OBJ_TYPE_REF(_15;(struct cObject)_9->8) (_9); [return slot
optimization]

  <bb 34> [local count: 168595896]:
  _103 = D.31175._M_dataplus._M_p;
  _86 = opp_needsquotes (_103);
  if (_86 != 0)
    goto <bb 35>; [50.00%]
  else
    goto <bb 38>; [50.00%]

  <bb 35> [local count: 84297948]:
  _16 = component_70(D)->D.5106.D.5083.D.4983.D.4767.D.4758._vptr.cObject;
  _17 = MEM[(int (*__vtbl_ptr_type) () *)_16 + 64B];
  D.31177 = OBJ_TYPE_REF(_17;(struct cObject)_9->8) (_9); [return slot
optimization]

  <bb 36> [local count: 84297948]:
  _134 = D.31177._M_dataplus._M_p;
  D.31176 = opp_quotestr (_134); [return slot optimization]

  <bb 37> [local count: 84297948]:
  _88 = D.31176._M_dataplus._M_p;
  goto <bb 40>; [100.00%]

  <bb 38> [local count: 84297948]:
  _18 = component_70(D)->D.5106.D.5083.D.4983.D.4767.D.4758._vptr.cObject;
  _19 = MEM[(int (*__vtbl_ptr_type) () *)_18 + 64B];
  D.31178 = OBJ_TYPE_REF(_19;(struct cObject)_9->8) (_9); [return slot
optimization]

  <bb 39> [local count: 84297948]:
  _92 = D.31178._M_dataplus._M_p;

  <bb 40> [local count: 168595896]:
  # _25 = PHI <_88(37), _92(39)>
  # _26 = PHI <1(37), 0(39)>
  # _29 = PHI <0(37), 1(39)>
  _20 = this_64(D)->f;
  _95 = fprintf (_20, "scalar %s \t%s \t%.*g\n", _25, _23, _13, value_93(D));

  <bb 41> [local count: 168595896]:
  if (_29 != 0)
    goto <bb 42>; [50.00%]
  else
    goto <bb 45>; [50.00%]

  <bb 42> [local count: 84297948]:
  _90 = D.31178._M_dataplus._M_p;
  if (&D.31178.D.4725._M_local_buf != _90)
    goto <bb 43>; [53.47%]
  else
    goto <bb 44>; [46.53%]

  <bb 43> [local count: 45074110]:
  _83 = D.31178.D.4725._M_allocated_capacity;
  _74 = _83 + 1;
  operator delete (_90, _74);

  <bb 44> [local count: 84297948]:
  D.31178 ={v} {CLOBBER};

  <bb 45> [local count: 168595896]:
  D.31178 ={v} {CLOBBER};
  if (_26 != 0)
    goto <bb 47>; [50.00%]
  else
    goto <bb 46>; [50.00%]

  <bb 46> [local count: 84297948]:
  D.31176 ={v} {CLOBBER};
  goto <bb 52>; [100.00%]

  <bb 47> [local count: 84297948]:
  _67 = D.31176._M_dataplus._M_p;
  if (&D.31176.D.4725._M_local_buf != _67)
    goto <bb 48>; [53.47%]
  else
    goto <bb 49>; [46.53%]

  <bb 48> [local count: 45074110]:
  _144 = D.31176.D.4725._M_allocated_capacity;
  _145 = _144 + 1;
  operator delete (_67, _145);

  <bb 49> [local count: 84297948]:
  D.31176 ={v} {CLOBBER};
  D.31176 ={v} {CLOBBER};
  _146 = D.31177._M_dataplus._M_p;
  if (&D.31177.D.4725._M_local_buf != _146)
    goto <bb 50>; [53.47%]
  else
    goto <bb 51>; [46.53%]

  <bb 50> [local count: 45074110]:
  _147 = D.31177.D.4725._M_allocated_capacity;
  _148 = _147 + 1;
  operator delete (_146, _148);

  <bb 51> [local count: 84297948]:
  D.31177 ={v} {CLOBBER};

  <bb 52> [local count: 168595896]:
  D.31177 ={v} {CLOBBER};
  _149 = D.31175._M_dataplus._M_p;
  if (&D.31175.D.4725._M_local_buf != _149)
    goto <bb 53>; [53.47%]
  else
    goto <bb 54>; [46.53%]

  <bb 53> [local count: 90148226]:
  _150 = D.31175.D.4725._M_allocated_capacity;
  _151 = _150 + 1;
  operator delete (_149, _151);

  <bb 54> [local count: 168595896]:
  D.31175 ={v} {CLOBBER};
  D.31175 ={v} {CLOBBER};
  if (_24 != 0)
    goto <bb 55>; [50.00%]
  else
    goto <bb 58>; [50.00%]

  <bb 55> [local count: 84297948]:
  _152 = D.31174._M_dataplus._M_p;
  if (&D.31174.D.4725._M_local_buf != _152)
    goto <bb 56>; [53.47%]
  else
    goto <bb 57>; [46.53%]

  <bb 56> [local count: 45074110]:
  _153 = D.31174.D.4725._M_allocated_capacity;
  _154 = _153 + 1;
  operator delete (_152, _154);

  <bb 57> [local count: 84297948]:
  D.31174 ={v} {CLOBBER};

  <bb 58> [local count: 168595896]:
  D.31174 ={v} {CLOBBER};
  if (_95 < 0)
    goto <bb 59>; [0.00%]
  else
    goto <bb 63>; [100.00%]

  <bb 59> [count: 0]:
  _133 = __cxa_allocate_exception (128);
  _155 = MEM[(const struct opp_string *)this_64(D) + 120B].str;
  if (_155 != 0B)
    goto <bb 61>; [0.00%]
  else
    goto <bb 60>; [0.00%]

  <bb 60> [count: 0]:

  <bb 61> [count: 0]:
  # _156 = PHI <""(60), _155(59)>
  __ct_comp  (_133, "Cannot write output scalar file `%s\'", _156);

  <bb 62> [count: 0]:
  __cxa_throw (_133, &_ZTI13cRuntimeError, __dt_comp );

  <bb 63> [local count: 168595896]:
  if (attributes_101(D) != 0B)
    goto <bb 64>; [70.00%]
  else
    goto <bb 98>; [30.00%]

  <bb 64> [local count: 118017131]:
  _157 = MEM[(struct _Rb_tree
*)attributes_101(D)]._M_impl.D.5999._M_header._M_left;
  _239 = &MEM[(struct _Rb_tree *)attributes_101(D)]._M_impl.D.5999._M_header;
  if (_157 != _239)
    goto <bb 152>; [89.00%]
  else
    goto <bb 98>; [11.00%]

  <bb 152> [local count: 105035247]:

  <bb 65> [local count: 954866036]:
  # it$_M_node_246 = PHI <_179(153), _157(152)>
  _158 = MEM[(const struct opp_string *)it$_M_node_246 + 40B].str;
  if (_158 != 0B)
    goto <bb 66>; [70.00%]
  else
    goto <bb 72>; [30.00%]

  <bb 66> [local count: 668406230]:
  _416 = MEM[(const char *)_158];
  if (_416 == 0)
    goto <bb 72>; [34.00%]
  else
    goto <bb 67>; [66.00%]

  <bb 67> [local count: 441148109]:

  <bb 68> [local count: 5855175980]:
  # _351 = PHI <_369(155), _416(67)>
  # s_349 = PHI <s_375(155), _158(67)>
  _370 = (unsigned char) _351;
  _371 = (int) _370;
  _372 = isspace (_371);
  _114 = _351 == 92;
  _380 = _372 != 0;
  _426 = _114 | _380;
  _366 = _351 == 34;
  _354 = _366 | _426;
  if (_354 != 0)
    goto <bb 71>; [6.46%]
  else
    goto <bb 69>; [93.54%]

  <bb 69> [local count: 5477173733]:
  _373 = iscntrl (_371);
  if (_373 != 0)
    goto <bb 71>; [2.20%]
  else
    goto <bb 70>; [97.80%]

  <bb 70> [local count: 5545739396]:
  s_375 = s_349 + 1;
  _369 = *s_375;
  if (_369 != 0)
    goto <bb 155>; [97.80%]
  else
    goto <bb 71>; [2.20%]

  <bb 155> [local count: 5423733130]:
  goto <bb 68>; [100.00%]

  <bb 71> [local count: 620506333]:
  # _367 = PHI <1(69), 0(70), 1(68)>
  if (_367 != 0)
    goto <bb 72>; [50.79%]
  else
    goto <bb 74>; [49.21%]

  <bb 72> [local count: 477433021]:
  # _425 = PHI <_158(71), _158(66), ""(65)>
  D.31179 = opp_quotestr (_425); [return slot optimization]

  <bb 73> [local count: 477433021]:
  _162 = D.31179._M_dataplus._M_p;

  <bb 74> [local count: 954866047]:
  # _31 = PHI <_162(73), _158(71)>
  # _32 = PHI <1(73), 0(71)>
  _165 = MEM[(const struct opp_string *)it$_M_node_246 + 32B].str;
  if (_165 != 0B)
    goto <bb 75>; [70.00%]
  else
    goto <bb 81>; [30.00%]

  <bb 75> [local count: 668406236]:
  _355 = MEM[(const char *)_165];
  if (_355 == 0)
    goto <bb 81>; [34.00%]
  else
    goto <bb 76>; [66.00%]

  <bb 76> [local count: 441148113]:

  <bb 77> [local count: 5855176046]:
  # _167 = PHI <_381(154), _355(76)>
  # s_463 = PHI <s_387(154), _165(76)>
  _382 = (unsigned char) _167;
  _383 = (int) _382;
  _384 = isspace (_383);
  _428 = _167 == 92;
  _259 = _384 != 0;
  _27 = _259 | _428;
  _28 = _167 == 34;
  _30 = _27 | _28;
  if (_30 != 0)
    goto <bb 80>; [6.46%]
  else
    goto <bb 78>; [93.54%]

  <bb 78> [local count: 5477173800]:
  _385 = iscntrl (_383);
  if (_385 != 0)
    goto <bb 80>; [2.20%]
  else
    goto <bb 79>; [97.80%]

  <bb 79> [local count: 5545739454]:
  s_387 = s_463 + 1;
  _381 = *s_387;
  if (_381 != 0)
    goto <bb 154>; [97.80%]
  else
    goto <bb 80>; [2.20%]

  <bb 154> [local count: 5423733187]:
  goto <bb 77>; [100.00%]

  <bb 80> [local count: 620506340]:
  # _379 = PHI <1(78), 0(79), 1(77)>
  if (_379 != 0)
    goto <bb 81>; [50.79%]
  else
    goto <bb 83>; [49.21%]

  <bb 81> [local count: 477433026]:
  # _427 = PHI <_165(80), _165(75), ""(74)>
  D.31180 = opp_quotestr (_427); [return slot optimization]

  <bb 82> [local count: 477433026]:
  _169 = D.31180._M_dataplus._M_p;

  <bb 83> [local count: 954866058]:
  # _34 = PHI <_169(82), _165(80)>
  # _35 = PHI <1(82), 0(80)>
  _21 = this_64(D)->f;
  _121 = fprintf (_21, "attr %s  %s\n", _34, _31);

  <bb 84> [local count: 954866058]:
  if (_35 != 0)
    goto <bb 85>; [50.00%]
  else
    goto <bb 88>; [50.00%]

  <bb 85> [local count: 477433026]:
  _171 = D.31180._M_dataplus._M_p;
  if (&D.31180.D.4725._M_local_buf != _171)
    goto <bb 86>; [53.47%]
  else
    goto <bb 87>; [46.53%]

  <bb 86> [local count: 255283437]:
  _172 = D.31180.D.4725._M_allocated_capacity;
  _173 = _172 + 1;
  operator delete (_171, _173);

  <bb 87> [local count: 477433026]:
  D.31180 ={v} {CLOBBER};

  <bb 88> [local count: 954866058]:
  D.31180 ={v} {CLOBBER};
  if (_32 != 0)
    goto <bb 89>; [50.00%]
  else
    goto <bb 92>; [50.00%]

  <bb 89> [local count: 477433026]:
  _174 = D.31179._M_dataplus._M_p;
  if (&D.31179.D.4725._M_local_buf != _174)
    goto <bb 90>; [53.47%]
  else
    goto <bb 91>; [46.53%]

  <bb 90> [local count: 255283437]:
  _175 = D.31179.D.4725._M_allocated_capacity;
  _176 = _175 + 1;
  operator delete (_174, _176);

  <bb 91> [local count: 477433026]:
  D.31179 ={v} {CLOBBER};

  <bb 92> [local count: 954866058]:
  D.31179 ={v} {CLOBBER};
  if (_121 < 0)
    goto <bb 93>; [0.00%]
  else
    goto <bb 97>; [100.00%]

  <bb 93> [count: 0]:
  _126 = __cxa_allocate_exception (128);
  _177 = MEM[(const struct opp_string *)this_64(D) + 120B].str;
  if (_177 != 0B)
    goto <bb 95>; [0.00%]
  else
    goto <bb 94>; [0.00%]

  <bb 94> [count: 0]:

  <bb 95> [count: 0]:
  # _178 = PHI <""(94), _177(93)>
  __ct_comp  (_126, "Cannot write output scalar file `%s\'", _178);

  <bb 96> [count: 0]:
  __cxa_throw (_126, &_ZTI13cRuntimeError, __dt_comp );

  <bb 97> [local count: 954866058]:
  _179 = _Rb_tree_increment (it$_M_node_246);
  if (_179 != _239)
    goto <bb 153>; [89.00%]
  else
    goto <bb 98>; [11.00%]

  <bb 153> [local count: 849830792]:
  goto <bb 65>; [100.00%]

  <bb 98> [local count: 623819628]:
  return;

  <bb 99> [count: 0]:
<L0>:
  _181 = D.31171._M_dataplus._M_p;
  if (&D.31171.D.4725._M_local_buf != _181)
    goto <bb 100>; [0.00%]
  else
    goto <bb 101>; [0.00%]

  <bb 100> [count: 0]:
  _182 = D.31171.D.4725._M_allocated_capacity;
  _183 = _182 + 1;
  operator delete (_181, _183);

  <bb 101> [count: 0]:
  D.31171 ={v} {CLOBBER};
  resx 6

  <bb 102> [count: 0]:
<L1>:
  D.31171 ={v} {CLOBBER};
  _184 = D.31172._M_dataplus._M_p;
  if (&D.31172.D.4725._M_local_buf != _184)
    goto <bb 103>; [0.00%]
  else
    goto <bb 104>; [0.00%]

  <bb 103> [count: 0]:
  _185 = D.31172.D.4725._M_allocated_capacity;
  _186 = _185 + 1;
  operator delete (_184, _186);

  <bb 104> [count: 0]:
  D.31172 ={v} {CLOBBER};
  resx 4

  <bb 105> [count: 0]:
<L2>:
  D.31172 ={v} {CLOBBER};
  _187 = D.31173._M_dataplus._M_p;
  if (&D.31173.D.4725._M_local_buf != _187)
    goto <bb 106>; [0.00%]
  else
    goto <bb 107>; [0.00%]

  <bb 106> [count: 0]:
  _188 = D.31173.D.4725._M_allocated_capacity;
  _189 = _188 + 1;
  operator delete (_187, _189);

  <bb 107> [count: 0]:
  D.31173 ={v} {CLOBBER};
  resx 2

  <bb 108> [count: 0]:
<L14>:
  resx 22

  <bb 109> [count: 0]:
<L13>:
  D.31178 ={v} {CLOBBER};
  resx 20

  <bb 110> [count: 0]:
<L19>:
  D.31176 ={v} {CLOBBER};
  goto <bb 131>; [100.00%]

  <bb 111> [count: 0]:
<L16>:
  resx 22

  <bb 112> [count: 0]:
<L15>:
  D.31178 ={v} {CLOBBER};
  resx 20

  <bb 113> [count: 0]:
<L18>:
  D.31176 ={v} {CLOBBER};
  goto <bb 131>; [100.00%]

  <bb 114> [count: 0]:
<L17>:
  resx 22

  <bb 115> [count: 0]:
<L20>:
  D.31178 ={v} {CLOBBER};
  resx 20

  <bb 116> [count: 0]:
<L21>:
  D.31176 ={v} {CLOBBER};
  goto <bb 128>; [100.00%]

  <bb 117> [count: 0]:
<L3>:
  if (_29 != 0)
    goto <bb 118>; [0.00%]
  else
    goto <bb 121>; [0.00%]

  <bb 118> [count: 0]:
  _190 = D.31178._M_dataplus._M_p;
  if (&D.31178.D.4725._M_local_buf != _190)
    goto <bb 119>; [0.00%]
  else
    goto <bb 120>; [0.00%]

  <bb 119> [count: 0]:
  _191 = D.31178.D.4725._M_allocated_capacity;
  _192 = _191 + 1;
  operator delete (_190, _192);

  <bb 120> [count: 0]:
  D.31178 ={v} {CLOBBER};

  <bb 121> [count: 0]:
  resx 22

  <bb 122> [count: 0]:
<L4>:
  D.31178 ={v} {CLOBBER};
  if (_26 != 0)
    goto <bb 123>; [0.00%]
  else
    goto <bb 126>; [0.00%]

  <bb 123> [count: 0]:
  _193 = D.31176._M_dataplus._M_p;
  if (&D.31176.D.4725._M_local_buf != _193)
    goto <bb 124>; [0.00%]
  else
    goto <bb 125>; [0.00%]

  <bb 124> [count: 0]:
  _194 = D.31176.D.4725._M_allocated_capacity;
  _195 = _194 + 1;
  operator delete (_193, _195);

  <bb 125> [count: 0]:
  D.31176 ={v} {CLOBBER};

  <bb 126> [count: 0]:
  # _422 = PHI <_26(122), 1(125)>
  resx 20

  <bb 127> [count: 0]:
<L5>:
  D.31176 ={v} {CLOBBER};
  if (_422 != 0)
    goto <bb 128>; [0.00%]
  else
    goto <bb 131>; [0.00%]

  <bb 128> [count: 0]:
  _196 = D.31177._M_dataplus._M_p;
  if (&D.31177.D.4725._M_local_buf != _196)
    goto <bb 129>; [0.00%]
  else
    goto <bb 130>; [0.00%]

  <bb 129> [count: 0]:
  _197 = D.31177.D.4725._M_allocated_capacity;
  _198 = _197 + 1;
  operator delete (_196, _198);

  <bb 130> [count: 0]:
  D.31177 ={v} {CLOBBER};

  <bb 131> [count: 0]:
  resx 18

  <bb 132> [count: 0]:
<L6>:
  D.31177 ={v} {CLOBBER};
  _199 = D.31175._M_dataplus._M_p;
  if (&D.31175.D.4725._M_local_buf != _199)
    goto <bb 133>; [0.00%]
  else
    goto <bb 134>; [0.00%]

  <bb 133> [count: 0]:
  _200 = D.31175.D.4725._M_allocated_capacity;
  _201 = _200 + 1;
  operator delete (_199, _201);

  <bb 134> [count: 0]:
  D.31175 ={v} {CLOBBER};
  resx 16

  <bb 135> [count: 0]:
<L7>:
  D.31175 ={v} {CLOBBER};
  if (_24 != 0)
    goto <bb 136>; [0.00%]
  else
    goto <bb 139>; [0.00%]

  <bb 136> [count: 0]:
  _202 = D.31174._M_dataplus._M_p;
  if (&D.31174.D.4725._M_local_buf != _202)
    goto <bb 137>; [0.00%]
  else
    goto <bb 138>; [0.00%]

  <bb 137> [count: 0]:
  _203 = D.31174.D.4725._M_allocated_capacity;
  _204 = _203 + 1;
  operator delete (_202, _204);

  <bb 138> [count: 0]:
  D.31174 ={v} {CLOBBER};

  <bb 139> [count: 0]:
<L8>:
  resx 14

  <bb 140> [count: 0]:
<L9>:
  __cxa_free_exception (_133);
  resx 33

  <bb 141> [count: 0]:
  # _36 = PHI <0(81), _35(83)>
<L10>:
  if (_36 != 0)
    goto <bb 142>; [0.00%]
  else
    goto <bb 145>; [0.00%]

  <bb 142> [count: 0]:
  _205 = D.31180._M_dataplus._M_p;
  if (&D.31180.D.4725._M_local_buf != _205)
    goto <bb 143>; [0.00%]
  else
    goto <bb 144>; [0.00%]

  <bb 143> [count: 0]:
  _206 = D.31180.D.4725._M_allocated_capacity;
  _207 = _206 + 1;
  operator delete (_205, _207);

  <bb 144> [count: 0]:
  D.31180 ={v} {CLOBBER};

  <bb 145> [count: 0]:
  resx 39

  <bb 146> [count: 0]:
  # _33 = PHI <0(72), _32(145)>
<L11>:
  D.31180 ={v} {CLOBBER};
  if (_33 != 0)
    goto <bb 147>; [0.00%]
  else
    goto <bb 150>; [0.00%]

  <bb 147> [count: 0]:
  _208 = D.31179._M_dataplus._M_p;
  if (&D.31179.D.4725._M_local_buf != _208)
    goto <bb 148>; [0.00%]
  else
    goto <bb 149>; [0.00%]

  <bb 148> [count: 0]:
  _209 = D.31179.D.4725._M_allocated_capacity;
  _210 = _209 + 1;
  operator delete (_208, _210);

  <bb 149> [count: 0]:
  D.31179 ={v} {CLOBBER};

  <bb 150> [count: 0]:
  resx 37

  <bb 151> [count: 0]:
<L12>:
  __cxa_free_exception (_126);
  resx 44

}


and here:

(gdb) bt
#0  gimple_call_arg_flags (stmt=0x7ffff574dd10, arg=2) at
/home/marxin/Programming/gcc/gcc/gimple.c:1610
#1  0x0000000000b9883b in analyze_ssa_name_flags (name=0x7ffff5d38d80,
lattice=..., depth=3, ipa=false) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:1825
#2  0x0000000000b98bd5 in analyze_ssa_name_flags (name=0x7ffff5d38c60,
lattice=..., depth=2, ipa=false) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:1933
#3  0x0000000000b98ddb in analyze_ssa_name_flags (name=0x7ffff57cdc60,
lattice=..., depth=1, ipa=false) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:1940
#4  0x0000000000b98fc7 in merge_call_lhs_flags (call=<optimized out>,
arg=<optimized out>, index=<optimized out>, deref=<optimized out>, lattice=...,
depth=0, ipa=false) at /home/marxin/Programming/gcc/gcc/ipa-modref.c:1684
#5  0x0000000000b98829 in merge_call_lhs_flags (ipa=<optimized out>,
depth=<optimized out>, lattice=..., deref=<optimized out>, index=<optimized
out>, arg=<optimized out>, call=<optimized out>) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:1838
#6  analyze_ssa_name_flags (name=0x7ffff57cd750, lattice=..., depth=0,
ipa=false) at /home/marxin/Programming/gcc/gcc/ipa-modref.c:1859
#7  0x0000000000b9de6e in analyze_parms (ipa=<optimized out>, summary_lto=0x0,
summary=0x7ffff6eed9c0) at /home/marxin/Programming/gcc/gcc/ipa-modref.c:2051
#8  analyze_function (f=<optimized out>, ipa=<optimized out>) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:2227
#9  0x0000000000b9fa02 in (anonymous namespace)::pass_modref::execute
(this=<optimized out>, f=<optimized out>) at
/home/marxin/Programming/gcc/gcc/ipa-modref.c:3087
#10 0x0000000000cf611a in execute_one_pass (pass=0x282e820) at
/home/marxin/Programming/gcc/gcc/passes.c:2567
#11 0x0000000000cf6a13 in execute_pass_list_1 (pass=0x282e820) at
/home/marxin/Programming/gcc/gcc/passes.c:2656
#12 0x0000000000cf6a25 in execute_pass_list_1 (pass=0x282ba00) at
/home/marxin/Programming/gcc/gcc/passes.c:2657
#13 0x0000000000cf6a56 in execute_pass_list (fn=0x7ffff71339c0, pass=<optimized
out>) at /home/marxin/Programming/gcc/gcc/passes.c:2667
#14 0x00000000009424f5 in cgraph_node::expand (this=0x7ffff6f58880) at
/home/marxin/Programming/gcc/gcc/context.h:48
#15 cgraph_node::expand (this=0x7ffff6f58880) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:1781
#16 0x0000000000943b6f in expand_all_functions () at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:1992
#17 symbol_table::compile (this=0x7ffff765a000) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:2356
#18 symbol_table::compile (this=0x7ffff765a000) at
/home/marxin/Programming/gcc/gcc/cgraphunit.c:2267
#19 0x0000000000896c80 in lto_main () at
/home/marxin/Programming/gcc/gcc/lto/lto.c:653
#20 0x0000000000ddcd24 in compile_file () at
/home/marxin/Programming/gcc/gcc/toplev.c:452
#21 0x000000000086d91b in do_compile (no_backend=false) at
/home/marxin/Programming/gcc/gcc/toplev.c:2154
#22 toplev::main (this=this@entry=0x7fffffffccfe, argc=<optimized out>,
argc@entry=198, argv=<optimized out>, argv@entry=0x7fffffffce48) at
/home/marxin/Programming/gcc/gcc/toplev.c:2306
#23 0x0000000000870fd5 in main (argc=198, argv=0x7fffffffce48) at
/home/marxin/Programming/gcc/gcc/main.c:39

(gdb) p debug_gimple_stmt(stmt)
# .MEM_110 = VDEF <.MEM_68>
_M_construct.constprop (_30(D), s_88, _92);

__attribute__((abi_tag ("cxx11")))
struct string getAsString (struct cConfiguration * const this, const char *
objectFullPath, struct cConfigOption * option, const char * fallbackValue)
{
  long int D.32273;
  const char * s;
  int (*__vtbl_ptr_type) () * _1;
  int (*__vtbl_ptr_type) () _2;
  int (*__vtbl_ptr_type) () * _3;
  int (*__vtbl_ptr_type) () _4;
  struct cNamedObject * _5;
  int (*__vtbl_ptr_type) () * _6;
  int (*__vtbl_ptr_type) () _7;
  void * _8;
  int (*__vtbl_ptr_type) () * _9;
  int (*__vtbl_ptr_type) () _10;
  const char * _11;
  struct cNamedObject * _12;
  int (*__vtbl_ptr_type) () * _13;
  int (*__vtbl_ptr_type) () _14;
  long unsigned int _22;
  const char * _24;
  const char * _26;
  const char * _29;
  struct string & _30(D);
  struct exception * _34;
  void * _36;
  const char * _39;
  char * _44;
  const char * _45;
  void * PROF_63;
  const char * _65;
  void * PROF_67;
  const char * _69;
  const char * _71;
  int (*__vtbl_ptr_type) () * _73;
  int (*__vtbl_ptr_type) () _74;
  const struct KeyValue2 & _75;
  const struct KeyValue1 * _76;
  int (*__vtbl_ptr_type) () * _77;
  int (*__vtbl_ptr_type) () _78;
  const char * _79;
  char * _80;
  void * PROF_82;
  const char * _84;
  char * _86;
  char _89;
  long unsigned int _91;
  const char * _92;
  char[16] * _99;
  long int _113;

  <bb 2> [local count: 1073741824]:
  assertType (option_19(D), 1, 3);
  _1 = this_21(D)->D.4954._vptr.cObject;
  _2 = MEM[(int (*__vtbl_ptr_type) () *)_1 + 152B];
  _22 = MEM[(const struct basic_string *)option_19(D) + 80B]._M_string_length;
  if (_22 == 0)
    goto <bb 43>; [29.00%]
  else
    goto <bb 3>; [71.00%]

  <bb 43> [local count: 311385128]:
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 762356697]:
  _44 = MEM[(const struct basic_string *)option_19(D) + 80B]._M_dataplus._M_p;

  <bb 4> [local count: 1073741824]:
  # _45 = PHI <0B(43), _44(3)>
  _24 = OBJ_TYPE_REF(_2;(struct cConfiguration)this_21(D)->19) (this_21(D),
_45);

  <bb 5> [local count: 1073741824]:
  _3 = this_21(D)->D.4954._vptr.cObject;
  _4 = MEM[(int (*__vtbl_ptr_type) () *)_3 + 176B];
  _5 = &option_19(D)->D.5508.D.4983.D.4767;
  _6 = option_19(D)->D.5508.D.4983.D.4767.D.4758._vptr.cObject;
  _7 = MEM[(int (*__vtbl_ptr_type) () *)_6 + 48B];
  PROF_63 = [obj_type_ref] OBJ_TYPE_REF(_7;(struct cNamedObject)_5->6);
  if (PROF_63 == getName)
    goto <bb 6>; [80.00%]
  else
    goto <bb 7>; [20.00%]

  <bb 6> [local count: 858993457]:
  _71 = MEM[(const struct cNamedObject *)option_19(D)].namep;
  if (_71 != 0B)
    goto <bb 44>; [70.00%]
  else
    goto <bb 9>; [30.00%]

  <bb 44> [local count: 601295422]:
  goto <bb 10>; [100.00%]

  <bb 7> [local count: 214748368]:
  _65 = OBJ_TYPE_REF(_7;(struct cNamedObject)_5->6) (_5);

  <bb 45> [local count: 214748368]:
  goto <bb 10>; [100.00%]

  <bb 8> [count: 0]:
<L6>:
  goto <bb 32>; [100.00%]

  <bb 9> [local count: 257698035]:

  <bb 10> [local count: 1073741824]:
  # _26 = PHI <_65(45), _71(44), ""(9)>
  PROF_67 = [obj_type_ref] OBJ_TYPE_REF(_4;(struct
cConfiguration)this_21(D)->22);
  if (PROF_67 == getPerObjectConfigValue)
    goto <bb 11>; [80.00%]
  else
    goto <bb 20>; [20.00%]

  <bb 11> [local count: 858993457]:
  _73 = MEM[(const struct SectionBasedConfiguration
*)this_21(D)].D.5740.D.4958.D.4955._vptr.cObject;
  _74 = MEM[(int (*__vtbl_ptr_type) () *)_73 + 184B];
  _75 = OBJ_TYPE_REF(_74;(struct SectionBasedConfiguration)this_21(D)->23)
(this_21(D), objectFullPath_27(D), _26);
  goto <bb 13>; [100.00%]

  <bb 12> [count: 0]:
<L7>:
  goto <bb 32>; [100.00%]

  <bb 13> [local count: 858993457]:
  _76 = &_75->D.10348;
  _77 = _75->D.10348.D.5862._vptr.KeyValue;
  _78 = MEM[(int (*__vtbl_ptr_type) () *)_77 + 16B];
  PROF_82 = [obj_type_ref] OBJ_TYPE_REF(_78;(struct KeyValue1)_76->2);
  if (PROF_82 == what)
    goto <bb 14>; [80.00%]
  else
    goto <bb 15>; [20.00%]

  <bb 14> [local count: 687194763]:
  _86 = MEM[(const struct basic_string *)_75 + 16B]._M_dataplus._M_p;
  goto <bb 17>; [100.00%]

  <bb 15> [local count: 171798694]:
  _84 = OBJ_TYPE_REF(_78;(struct KeyValue1)_76->2) (_76);
  goto <bb 46>; [100.00%]

  <bb 16> [count: 0]:
<L8>:
  goto <bb 32>; [100.00%]

  <bb 46> [local count: 171798694]:

  <bb 17> [local count: 858993457]:
  # _79 = PHI <_84(46), _86(14)>
  if (_79 != 0B)
    goto <bb 19>; [85.10%]
  else
    goto <bb 47>; [14.90%]

  <bb 47> [local count: 127990022]:

  <bb 18> [local count: 322122544]:
  if (_24 == 0B)
    goto <bb 23>; [17.43%]
  else
    goto <bb 48>; [82.57%]

  <bb 19> [local count: 731003435]:
  _80 = MEM[(const struct basic_string *)_75 + 48B]._M_dataplus._M_p;
  goto <bb 22>; [100.00%]

  <bb 20> [local count: 214748368]:
  _69 = OBJ_TYPE_REF(_4;(struct cConfiguration)this_21(D)->22) (this_21(D),
objectFullPath_27(D), _26);
  goto <bb 49>; [100.00%]

  <bb 21> [count: 0]:
<L9>:
  goto <bb 32>; [100.00%]

  <bb 49> [local count: 214748368]:

  <bb 22> [local count: 945751802]:
  # _29 = PHI <_69(49), _80(19)>
  if (_29 == 0B)
    goto <bb 50>; [19.04%]
  else
    goto <bb 51>; [80.96%]

  <bb 51> [local count: 765641716]:
  goto <bb 26>; [100.00%]

  <bb 50> [local count: 180110086]:
  goto <bb 18>; [100.00%]

  <bb 23> [local count: 56145959]:
  __ct_base .constprop (_30(D), fallbackValue_31(D));
  goto <bb 52>; [100.00%]

  <bb 24> [count: 0]:
<L10>:
  goto <bb 32>; [100.00%]

  <bb 52> [local count: 56145959]:

  <bb 25> [local count: 1073741825]:
  return _30(D);

  <bb 48> [local count: 265976585]:

  <bb 26> [local count: 1017595866]:
  # s_88 = PHI <_29(51), _24(48)>
  _89 = *s_88;
  if (_89 == 34)
    goto <bb 27>; [34.00%]
  else
    goto <bb 29>; [66.00%]

  <bb 27> [local count: 345982598]:
  *_30(D) = opp_parsequotedstr (s_88); [return slot optimization]

  <bb 53> [local count: 345982598]:
  goto <bb 25>; [100.00%]

  <bb 28> [count: 0]:
<L11>:
  goto <bb 32>; [100.00%]

  <bb 29> [local count: 671613268]:
  _99 = &MEM[(struct basic_string *)_30(D)].D.4725._M_local_buf;
  MEM[(struct _Alloc_hider *)_30(D)]._M_p = _99;
  _91 = __builtin_strlen (s_88);
  _92 = s_88 + _91;
  _M_construct.constprop (_30(D), s_88, _92);

  <bb 54> [local count: 671613268]:
  goto <bb 25>; [100.00%]

  <bb 30> [count: 0]:
<L12>:
  goto <bb 32>; [100.00%]

  <bb 31> [count: 0]:
<L5>:

  <bb 32> [count: 0]:
<L0>:
  _113 = __builtin_eh_filter (1);
  if (_113 == 1)
    goto <bb 34>; [0.00%]
  else
    goto <bb 33>; [0.00%]

  <bb 33> [count: 0]:
<L4>:
  resx 1

  <bb 34> [count: 0]:
<L1>:
  _8 = __builtin_eh_pointer (1);
  _34 = __cxa_begin_catch (_8);
  _36 = __cxa_allocate_exception (128);
  _9 = _34->_vptr.exception;
  _10 = MEM[(int (*__vtbl_ptr_type) () *)_9 + 16B];
  _11 = OBJ_TYPE_REF(_10;(struct exception)_34->2) (_34);
  _12 = &option_19(D)->D.5508.D.4983.D.4767;
  _13 = option_19(D)->D.5508.D.4983.D.4767.D.4758._vptr.cObject;
  _14 = MEM[(int (*__vtbl_ptr_type) () *)_13 + 48B];
  _39 = OBJ_TYPE_REF(_14;(struct cNamedObject)_12->6) (_12);

  <bb 35> [count: 0]:
  __ct_comp  (_36, "Error getting option %s= from the configuration: %s", _39,
_11);
  goto <bb 37>; [0.00%]

  <bb 36> [count: 0]:
<L14>:
  goto <bb 39>; [100.00%]

  <bb 37> [count: 0]:
  __cxa_throw (_36, &_ZTI13cRuntimeError, __dt_comp );

  <bb 38> [count: 0]:
<L13>:

  <bb 39> [count: 0]:
<L2>:
  __cxa_free_exception (_36);
  resx 3

  <bb 40> [count: 0]:
<L16>:
  goto <bb 42>; [100.00%]

  <bb 41> [count: 0]:
<L15>:

  <bb 42> [count: 0]:
<L3>:
  __cxa_end_catch ();
  resx 2

}

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2021-11-02 20:06 ` marxin at gcc dot gnu.org
@ 2021-11-02 20:08 ` marxin at gcc dot gnu.org
  2021-11-02 20:35 ` marxin at gcc dot gnu.org
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 20:08 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Martin Liška <marxin at gcc dot gnu.org> ---
... where mod_ref_flags are:

(gdb) p modref_flags
$15 = 247

and

(gdb) p modref_flags
$18 = 22

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2021-11-02 20:08 ` marxin at gcc dot gnu.org
@ 2021-11-02 20:35 ` marxin at gcc dot gnu.org
  2021-11-02 20:35 ` marxin at gcc dot gnu.org
  2021-11-03  8:11 ` [Bug ipa/103050] " marxin at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 20:35 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Martin Liška <marxin at gcc dot gnu.org> ---
Alternatively, one can see the memory corruption during LTO bootstrap in Go
library build:

$ ../configure --enable-languages=c,c++,lto,go --disable-multilib
--disable-libsanitizer --with-build-config=bootstrap-lto
...
$ make -j100
...

free(): invalid pointer
go1: internal compiler error: Aborted
libtool: compile:  /home/mliska/Programming/gcc/objdir/./gcc/gccgo
-B/home/mliska/Programming/gcc/objdir/./gcc/
-B/usr/local/x86_64-pc-linux-gnu/bin/ -B/usr/local/x86_64-pc-linux-gnu/lib/
-isystem /usr/local/x86_64-pc-linux-gnu/include -isystem
/usr/local/x86_64-pc-linux-gnu/sys-include -minline-all-stringops -O2 -g -I .
-c -fgo-pkgpath=image/color/palette
../../../libgo/go/image/color/palette/generate.go
../../../libgo/go/image/color/palette/palette.go -o image/color/palette.o
>/dev/null 2>&1
libtool: compile:  /home/mliska/Programming/gcc/objdir/./gcc/gccgo
-B/home/mliska/Programming/gcc/objdir/./gcc/
-B/usr/local/x86_64-pc-linux-gnu/bin/ -B/usr/local/x86_64-pc-linux-gnu/lib/
-isystem /usr/local/x86_64-pc-linux-gnu/include -isystem
/usr/local/x86_64-pc-linux-gnu/sys-include -minline-all-stringops -O2 -g -I .
-c -fgo-pkgpath=math -mfancy-math-387 -ffp-contract=off -fno-math-errno
-fno-trapping-math ../../../libgo/go/math/abs.go
../../../libgo/go/math/acosh.go ../../../libgo/go/math/asin.go
../../../libgo/go/math/asinh.go ../../../libgo/go/math/atan.go
../../../libgo/go/math/atan2.go ../../../libgo/go/math/atanh.go
../../../libgo/go/math/bits.go ../../../libgo/go/math/cbrt.go
../../../libgo/go/math/const.go ../../../libgo/go/math/copysign.go
../../../libgo/go/math/dim.go ../../../libgo/go/math/dim_noasm.go
../../../libgo/go/math/erf.go ../../../libgo/go/math/erfinv.go
../../../libgo/go/math/exp.go ../../../libgo/go/math/exp2_noasm.go
../../../libgo/go/math/exp_amd64.go ../../../libgo/go/math/exp_noasm.go
../../../libgo/go/math/expm1.go ../../../libgo/go/math/floor.go
../../../libgo/go/math/floor_noasm.go ../../../libgo/go/math/fma.go
../../../libgo/go/math/frexp.go ../../../libgo/go/math/gamma.go
../../../libgo/go/math/hypot.go ../../../libgo/go/math/j0.go
../../../libgo/go/math/j1.go ../../../libgo/go/math/jn.go
../../../libgo/go/math/ldexp.go ../../../libgo/go/math/lgamma.go
../../../libgo/go/math/log.go ../../../libgo/go/math/log10.go
../../../libgo/go/math/log1p.go ../../../libgo/go/math/logb.go
../../../libgo/go/math/mod.go ../../../libgo/go/math/modf.go
../../../libgo/go/math/modf_noasm.go ../../../libgo/go/math/nextafter.go
../../../libgo/go/math/pow.go ../../../libgo/go/math/pow10.go
../../../libgo/go/math/remainder.go ../../../libgo/go/math/signbit.go
../../../libgo/go/math/sin.go ../../../libgo/go/math/sincos.go
../../../libgo/go/math/sinh.go ../../../libgo/go/math/sqrt.go
../../../libgo/go/math/stubs.go ../../../libgo/go/math/tan.go
../../../libgo/go/math/tanh.go ../../../libgo/go/math/trig_reduce.go
../../../libgo/go/math/unsafe.go -o math.o >/dev/null 2>&1
0xe694a3 crash_signal
        ../../gcc/toplev.c:322
0x9492cc Struct_type::write_to_c_header(std::basic_ostream<char,
std::char_traits<char> >&) const
        ../../gcc/go/gofrontend/types.cc:7055
0x8d16a3 Gogo::write_c_header()
        ../../gcc/go/gofrontend/gogo.cc:5382
0x8eea19 Gogo::do_exports()
        ../../gcc/go/gofrontend/gogo.cc:5251
0x8ef0e3 Gogo::do_exports()
        ../../gcc/go/gofrontend/gogo.cc:5204
0x8ef0e3 go_parse_input_files(char const**, unsigned int, bool, bool)
        ../../gcc/go/gofrontend/go.cc:159
0x8ad773 go_langhook_parse_file
        ../../gcc/go/go-lang.c:359

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

* [Bug tree-optimization/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2021-11-02 20:35 ` marxin at gcc dot gnu.org
@ 2021-11-02 20:35 ` marxin at gcc dot gnu.org
  2021-11-03  8:11 ` [Bug ipa/103050] " marxin at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-02 20:35 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
   Target Milestone|---                         |12.0

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

* [Bug ipa/103050] [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f
  2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2021-11-02 20:35 ` marxin at gcc dot gnu.org
@ 2021-11-03  8:11 ` marxin at gcc dot gnu.org
  11 siblings, 0 replies; 13+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-11-03  8:11 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

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

--- Comment #11 from Martin Liška <marxin at gcc dot gnu.org> ---
It's fixed now, likely with r12-4857-g62af7d9402f551fa708125fafed2950d8912b25e.

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

end of thread, other threads:[~2021-11-03  8:11 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-02 18:24 [Bug tree-optimization/103050] New: [12 Regression] 520.omnetpp_r miscompiled after r12-4787-gb8ef019ab938471f marxin at gcc dot gnu.org
2021-11-02 18:29 ` [Bug tree-optimization/103050] " hubicka at gcc dot gnu.org
2021-11-02 18:32 ` marxin at gcc dot gnu.org
2021-11-02 18:39 ` marxin at gcc dot gnu.org
2021-11-02 18:41 ` marxin at gcc dot gnu.org
2021-11-02 18:47 ` marxin at gcc dot gnu.org
2021-11-02 19:53 ` marxin at gcc dot gnu.org
2021-11-02 19:58 ` marxin at gcc dot gnu.org
2021-11-02 20:06 ` marxin at gcc dot gnu.org
2021-11-02 20:08 ` marxin at gcc dot gnu.org
2021-11-02 20:35 ` marxin at gcc dot gnu.org
2021-11-02 20:35 ` marxin at gcc dot gnu.org
2021-11-03  8:11 ` [Bug ipa/103050] " marxin 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).