Thanks for the info. > On Sep 14, 2023, at 10:06 AM, Richard Biener <richard.guent...@gmail.com> > wrote: > > On Thu, Sep 14, 2023 at 3:42 PM Qing Zhao via Gcc-patches > <gcc-patches@gcc.gnu.org> wrote: >> >> Hi, >> >> I have several questions on these options: >> >> 1.are pointers treated as signed integers in general? (I thought that >> pointers are addresses to the memory, should be treated as unsigned integer…) >> 2. If Yes, why? >> 3. why a separate option for pointesr -fwrapv-pointer in addition to -fwrapv >> if they are treated as signed integers? > > Pointers are unsigned, they might sign-extend to Pmode though. If they are unsigned, why they are sign-extend to Pmode? Is there any special reason for this? In another word, can we consistently treat pointers as unsigned?
> -fwrapv-pointer is to enable wrapping over zero, If we always treat pointers are unsigned, then we don’t need the -fwrapv-pointer anymore, right? > we don't have many places using this, ISTR kernel folks requested to > disable specific folding - digging in history > might reveal the case/PR. Do you mean that this -fwrapv-pointer was introduced for kernel? I will try to dig a little bit here. thanks. Qing > > Richard. > >> Thanks for your help. >> >> Qing >>