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

--- Comment #7 from Martin Uecker <muecker at gwdg dot de> ---
Am Mittwoch, dem 25.10.2023 um 11:08 +0000 schrieb siddhesh at gcc dot gnu.org:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96503
> 
> --- Comment #6 from Siddhesh Poyarekar <siddhesh at gcc dot gnu.org> ---
> So basically,
> 
>   __builtin_with_access(void *ptr, size_t size, int access)
> 
> where access ==
> 
> -1: Unknown access semantics
> 0: none
> 1: read_only
> 2: write_only
> 3: read_write
> 
> should address both access and alloc_size and even counted_by.  

Yes, sounds good.

> We would need
> to emit the builtin in the caller as well as callee of the function that has
> the access attribute while for alloc_size, we only need to emit this in the
> caller.

Yes, makes sense, although I guess caller part for "access"
is only for warning and not relevant for BDOS, so could 
potentially stay as it is for now.

For __builtin_with_access we probably only want to allow
reducing the object size, while the 'extend_size' workaround 
used by systemd (cf comment #4) would need to extend it. 
Maybe we need another flag?

Martin

Reply via email to