bpf: avoid potential NULL pointer dereference
authorDavid Faust <david.faust@oracle.com>
Tue, 7 Dec 2021 19:45:48 +0000 (11:45 -0800)
committerDavid Faust <david.faust@oracle.com>
Wed, 8 Dec 2021 18:36:30 +0000 (10:36 -0800)
If the result from SSA_NAME_DEF_STMT is NULL, we could try to
dereference it anyway and ICE. Avoid this.

gcc/ChangeLog:

* config/bpf/bpf.c (handle_attr_preserve): Avoid calling
is_gimple_assign with a NULL pointer.

gcc/config/bpf/bpf.c

index 9d2c0bb..c054c1e 100644 (file)
@@ -1482,7 +1482,7 @@ handle_attr_preserve (function *fn)
                      && TREE_CODE (TREE_OPERAND (expr, 0)) == SSA_NAME)
                    {
                      gimple *def_stmt = SSA_NAME_DEF_STMT (TREE_OPERAND (expr, 0));
-                     if (is_gimple_assign (def_stmt))
+                     if (def_stmt && is_gimple_assign (def_stmt))
                        expr = gimple_assign_rhs1 (def_stmt);
                    }