This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Check that unlinked uses do not contain ssa-names when renaming.


On Thu, Oct 16, 2014 at 3:57 PM, Tom de Vries <Tom_deVries@mentor.com> wrote:
> On 16-10-14 14:20, Richard Biener wrote:
>>>
>>> Richard,
>>> >
>>> >I've implemented the changes listed above, and also made the message a
>>> > bit
>>> >more verbose:
>>> >...
>>> >kernels-2.c: In function âmainâ:
>>> >kernels-2.c:41:5: error: statement uses released SSA name
>>> >      for (COUNTERTYPE ii = 0; ii < N; ii++)
>>> >      ^
>>> ># .MEM_57 = VDEF <.MEM_79>
>>> >.omp_data_arr.10 ={v} {CLOBBER};
>>> >The use of .MEM_79 should have been replaced or marked for renaming
>>
>> ^^^ or marked for renaming is not correct, only replacing is
>>
>
> I've checked in the version with "should have been replaced".
>
> I was trying to mention both possibilities that you mentioned here:
> https://gcc.gnu.org/ml/gcc-patches/2011-10/msg00977.html:
> ...
> Whoever unlinks the vuse (by removing its definition) has to replace it with
> something valid, which is either the bare symbol .MEM, or the VUSE
> associated with the removed VDEF (thus, as unlink_stmt_vdef does).
> ...
>
> So, I hope better formulated this time, what I intended to state was:
> ...
> The use of .MEM_79 should have been replaced with either the underlying
> symbol or a valid SSA name.
> ...
>
> But perhaps that's not generally valid? I've browsed tree-into-ssa.c a bit,
> and I only find the 'replace with underlying symbol' for virtual operands.

Yeah, that's only valid for virtual operands.

Richard.

> Thanks,
> - Tom
>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]