https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103584

--- Comment #1 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
This is (probably bit preliminary) optimization in tree-ssa-structalias.c:

/* Create constraints for the builtin call T.  Return true if the call
   was handled, otherwise false.  */

static bool
find_func_aliases_for_builtin_call (struct function *fn, gcall *t)
{
  tree fndecl = gimple_call_fndecl (t);
  auto_vec<ce_s, 2> lhsc;
  auto_vec<ce_s, 4> rhsc;
  varinfo_t fi;

  if (gimple_call_builtin_p (t, BUILT_IN_NORMAL))
    /* ???  All builtins that are handled here need to be handled
       in the alias-oracle query functions explicitly!  */
    switch (DECL_FUNCTION_CODE (fndecl))
      {
      /* All the following functions return a pointer to the same object
         as their first argument points to.  The functions do not add
         to the ESCAPED solution.  The functions make the first argument
         pointed to memory point to what the second argument pointed to
         memory points to.  */

as ??? is saying the function does not bother to build proper USE/CLOBBER
points-to sets and relies on tree-ssa-alias checking the right thing.

Reply via email to