[14/17] parloops: don't request insert that won't be completed
Commit Message
In take_address_of, we may refrain from completing a decl_address
INSERT if gsi is NULL, so dnn't even ask for an INSERT in this case.
Regstrapped on x86_64-linux-gnu. Ok to install?
for gcc/ChangeLog
* tree-parloops.cc (take_address_of): Skip INSERT if !gsi.
---
gcc/tree-parloops.cc | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
Comments
On 12/28/22 05:30, Alexandre Oliva via Gcc-patches wrote:
>
> In take_address_of, we may refrain from completing a decl_address
> INSERT if gsi is NULL, so dnn't even ask for an INSERT in this case.
>
> Regstrapped on x86_64-linux-gnu. Ok to install?
>
>
> for gcc/ChangeLog
>
> * tree-parloops.cc (take_address_of): Skip INSERT if !gsi.
OK
jeff
@@ -1221,8 +1221,11 @@ take_address_of (tree obj, tree type, edge entry,
uid = DECL_UID (TREE_OPERAND (TREE_OPERAND (*var_p, 0), 0));
int_tree_map elt;
elt.uid = uid;
- int_tree_map *slot = decl_address->find_slot (elt, INSERT);
- if (!slot->to)
+ int_tree_map *slot = decl_address->find_slot (elt,
+ gsi == NULL
+ ? NO_INSERT
+ : INSERT);
+ if (!slot || !slot->to)
{
if (gsi == NULL)
return NULL;