https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85600
rdapp at linux dot ibm.com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rdapp at linux dot ibm.com
--- Comment #4 from rdapp at linux dot ibm.com ---
This also happens on s390x, even with -O0 and no new -march setting.
The following line in EtherMac.cc
delete outputbuffer.pop()
actually emits two calls to
cQueue::pop ().
On the second call, the queue is empty and the program terminates.
Already in the .original pass, a SAVE_EXPR that was there before is not present
anymore:
if (SAVE_EXPR <cQueue::pop [..]
vs.
if (cQueue::pop [..]
r259771 removes two checks like this:
- if (TREE_SIDE_EFFECTS (addr))
- addr = save_expr (addr);
Are they really redundant?