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.

Thanks,
- Tom

Reply via email to