Introduce VIRTUAL_REGISTER_P and VIRTUAL_REGISTER_NUM_P predicates
commit258aecd7021b15c23a067323c00f1450dca0a506
authorUros Bizjak <ubizjak@gmail.com>
Wed, 19 Apr 2023 13:38:31 +0000 (19 15:38 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Wed, 19 Apr 2023 13:39:53 +0000 (19 15:39 +0200)
treeaee37ed57359e6e82742839794a55df8f54c3e6c
parent4c9f8cd69435f4f50d8874a1603aafa5c2e7b8ce
Introduce VIRTUAL_REGISTER_P and VIRTUAL_REGISTER_NUM_P predicates

These two predicates are similar to existing HARD_REGISTER_P and
HARD_REGISTER_NUM_P predicates and return 1 if the given register
corresponds to a virtual register.

gcc/ChangeLog:

* rtl.h (VIRTUAL_REGISTER_P): New predicate.
(VIRTUAL_REGISTER_NUM_P): Ditto.
(REGNO_PTR_FRAME_P): Use VIRTUAL_REGISTER_NUM_P predicate.
* expr.cc (force_operand): Use VIRTUAL_REGISTER_P predicate.
* function.cc (instantiate_decl_rtl): Ditto.
* rtlanal.cc (rtx_addr_can_trap_p_1): Ditto.
(nonzero_address_p): Ditto.
(refers_to_regno_p): Use VIRTUAL_REGISTER_NUM_P predicate.
gcc/expr.cc
gcc/function.cc
gcc/rtl.h
gcc/rtlanal.cc