]> git.ipfire.org Git - thirdparty/gcc.git/commit
Initialize value in bit_value_unop.
authorAldy Hernandez <aldyh@redhat.com>
Tue, 25 Jul 2023 16:25:30 +0000 (12:25 -0400)
committerAldy Hernandez <aldyh@redhat.com>
Wed, 26 Jul 2023 08:37:24 +0000 (10:37 +0200)
commit7a48d8d28cc683974057ce9fdfd3fb224ff76641
tree160bd176585f92afb77c166bbe632cc38438a1bb
parentad0dde0af107aaf6a91e37f3aa31249e34df6ce0
Initialize value in bit_value_unop.

bit_value_binop initializes VAL regardless of the final mask.  It even
has a comment to that effect:

  /* Ensure that VAL is initialized (to any value).  */

However, bit_value_unop, which in theory shares the same API, does not.
This causes range-ops to choke on uninitialized VALs for some inputs to
ABS.

Instead of fixing the callers, it's cleaner to make bit_value_unop and
bit_value_binop consistent.

gcc/ChangeLog:

* tree-ssa-ccp.cc (bit_value_unop): Initialize val when appropriate.
gcc/tree-ssa-ccp.cc