https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92123
--- Comment #19 from Richard Biener <rguenth at gcc dot gnu.org> --- There is also tree-core.h: /* Call argument flags. */ /* Nonzero if the argument is not dereferenced recursively, thus only directly reachable memory is read or written. */ #define EAF_DIRECT (1 << 0) /* Nonzero if memory reached by the argument is not clobbered. */ #define EAF_NOCLOBBER (1 << 1) /* Nonzero if the argument does not escape. */ #define EAF_NOESCAPE (1 << 2) /* Nonzero if the argument is not used by the function. */ #define EAF_UNUSED (1 << 3) /* Call return flags. */ /* Mask for the argument number that is returned. Lower two bits of the return flags, encodes argument slots zero to three. */ #define ERF_RETURN_ARG_MASK (3) /* Nonzero if the return value is equal to the argument number flags & ERF_RETURN_ARG_MASK. */ #define ERF_RETURNS_ARG (1 << 2) but eventually specifying some terminology and then consistently using that might help... Eventually the documentation bits could go to the internals manual somewhere ('no vops' is also not documented).