Fix updating of call_stmt_site_hash
authorJan Hubicka <jh@suse.cz>
Tue, 21 Jan 2020 15:33:43 +0000 (16:33 +0100)
committerJan Hubicka <jh@suse.cz>
Tue, 21 Jan 2020 15:33:43 +0000 (16:33 +0100)
commit28307164dfed294855bf3d55bed357de560f083b
tree0c424dd708b166a638eb9e71247de2b0e667c586
parent8158a4640819dbb3210326e37786fb874f450272
Fix updating of call_stmt_site_hash

This patch fixes ICE causes by call stmt site hash going out of sync.  For
speculative edges it is assumed to contain a direct call so if we are
removing it hashtable needs to be updated.  I realize that the code is ugly
but I will leave cleanup for next stage1.

Bootstrapped/regtested x86_64-linux. This patch makes it possible to build
Firefox again.

PR lto/93318
* cgraph.c (cgraph_edge::resolve_speculation,
cgraph_edge::redirect_call_stmt_to_callee): Fix update of
call_stmt_site_hash.
gcc/ChangeLog
gcc/cgraph.c
gcc/ipa.c