https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97445
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |hubicka at gcc dot gnu.org,
| |rguenth at gcc dot gnu.org
--- Comment #16 from Martin Liška <marxin at gcc dot gnu.org> ---
The following happens:
get_order is called by kmalloc_large which is called in kmalloc. And kmalloc
calls the function for larger allocations. Problem is that we eliminate all
calls to get_order late
pipe.i.108t.thread1:;; Function get_order (get_order, funcdef_no=295,
decl_uid=4528, cgraph_uid=300, symbol_order=303)
pipe.i.108t.thread1:get_order (long unsigned int size)
pipe.i.108t.thread1: _125 = get_order (_114);
pipe.i.108t.thread1: _67 = get_order (_56);
pipe.i.109t.cdce:;; Function get_order (get_order, funcdef_no=295,
decl_uid=4396, cgraph_uid=300, symbol_order=303)
pipe.i.109t.cdce:get_order (long unsigned int size)
so remove_unreachable_nodes is not called any more.