This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: /f flag in RTL
- To: "Dragos Badea" <Dragos dot Badea at cs dot pub dot ro>
- Subject: Re: /f flag in RTL
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Thu, 04 May 2000 09:33:24 -0600
- cc: gcc at gcc dot gnu dot org
- Reply-To: law at cygnus dot com
In message <032201bfb5b6$18458db0$3725558d@cs.pub.ro>you write:
> I think this flag is not documented. I found it in a mem rtx
>
> (insn 34 31 37 (set (mem/f:SI (symbol_ref:SI ("val")) 0)
> (reg:SI 41)) 156 {movsi+1} (insn_list 29 (nil))
> (nil))
>
> Could you tell me please what does it stand for here and if it also carries
> info in other rtl expressions ?
Read the manual more closely (or maybe you just have an out of date version
of the manual).
@findex MEM_SCALAR_P
@cindex @code{mem} and @samp{/f}
@cindex @code{frame_related}, in@code{mem}
@cindex @samp{/f} in RTL dump
@item MEM_SCALAR_P (@var{x})
In @code{mem} expressions, nonzero for reference to a scalar known not
to be a member of a structure, union, or array. Zero for such
references and for indirections through pointers, even pointers pointing
to scalar types. If both this flag and MEM_STRUCT_P are clear, then we
don't know whether this MEM is in a structure or not. Both flags should
never be simultaneously set.