2005-09-26 Richard Guenther <rguenther@suse.de>
commit0d707271171a610f96aacfed02aeb1b0d69bb8bc
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Sep 2005 08:38:29 +0000 (26 08:38 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 26 Sep 2005 08:38:29 +0000 (26 08:38 +0000)
tree6826afed42e7bcac33317919741d34240ac343da
parente3359949c0b20f572d11b6d18ae28917b9bb50cd
2005-09-26  Richard Guenther  <rguenther@suse.de>

PR middle-end/15855
* gcse.c: Include hashtab.h, define ldst entry hashtable.
(pre_ldst_expr_hash, pre_ldst_expr_eq): New functions.
(ldst_entry): Use the hashtable instead of list-walking.
(find_rtx_in_ldst): Likewise.
(free_ldst_entry): Free the hashtable.
(compute_ld_motion_mems): Create the hashtable.
(trim_ld_motion_mems): Remove entry from hashtable if
removing it from list.
(compute_store_table): Likewise^2.
(store_motion): Free hashtable in case we did not see
any stores.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@104641 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gcse.c