]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/builtins.c
PR optimization/8423
authorsayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 23 Jan 2003 02:57:26 +0000 (02:57 +0000)
committersayle <sayle@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 23 Jan 2003 02:57:26 +0000 (02:57 +0000)
commitc7926a824cfe7ee75d14440282d6d15d83dcd6f8
treee350e7cda96af13a3c7a7347f5f121cef549541c
parent45baea8bdc127498d928bff521be446e7d595dff
PR optimization/8423
* cse.c (fold_rtx): Only eliminate a CONSTANT_P_RTX to 1 when
its argument is constant, or 0 if !flag_gcse.
* simplify-rtx.c (simplify_rtx): Convert CONSTANT_P_RTX to 1
if it's argument is constant.
* gcse.c (want_to_gcse_p): Ignore CONSTANT_P_RTX nodes.
(hash_scan_set): Don't record CONSTANT_P_RTX expressions.
(do_local_cprop): Don't propagate CONSTANT_P_RTX constants.
* builtins.c (purge_builtin_constant_p): New function to force
instantiation of any remaining CONSTANT_P_RTX nodes.
* rtl.h (purge_builtin_constant_p): Prototype here.
* toplev.c (rest_of_compilation): Invoke purge_builtin_constant_p
pass after GCSE and before loop.
(flag_gcse): No longer static.
* flags.h (flag_gcse): Prototype here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61642 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/builtins.c
gcc/cse.c
gcc/flags.h
gcc/gcse.c
gcc/rtl.h
gcc/simplify-rtx.c
gcc/toplev.c