diff options
author | Richard Biener <rguenther@suse.de> | 2025-04-30 10:01:47 +0200 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2025-04-30 14:15:38 +0200 |
commit | a85b89e26b1f50997701eb428c2dd71668f216ff (patch) | |
tree | 4f37b51ecbd8042618014f0fe967f53983ba205a /libjava | |
parent | 1a13684dfc7286139064f7d7341462c9995cbd1c (diff) | |
download | gcc-a85b89e26b1f50997701eb428c2dd71668f216ff.zip gcc-a85b89e26b1f50997701eb428c2dd71668f216ff.tar.gz gcc-a85b89e26b1f50997701eb428c2dd71668f216ff.tar.bz2 |
ipa/120006 - wrong code with IPA PTA
When PTA gets support for special-handling more builtins in
find_func_aliases the corresponding code in find_func_clobbers
needs updating as well since for unhandled cases it assumes
the former will populate ESCAPED accordingly. The following
fixes a few omissions, the testcase runs into the missing strdup
handling. I believe the more advanced handling using modref
results and fnspecs opened a larger gap, the proper fix is to
merge both functions, gating the clobber/use part on a parameter
to avoid diverging.
PR ipa/120006
* tree-ssa-structalias.cc (find_func_clobbers): Handle
strdup, strndup, realloc, index, strchr, strrchr, memchr,
strstr, strpbrk builtins like find_func_aliases does.
* gcc.dg/torture/pr120006.c: New testcase.
Diffstat (limited to 'libjava')
0 files changed, 0 insertions, 0 deletions