[Chapel Merge] Add future for GMP RVF/broadcast bug

Branch: refs/heads/main
Revision: 90ddfa6
Author: ronawho
Link: Add future for GMP RVF/broadcast bug by ronawho · Pull Request #19625 · chapel-lang/chapel · GitHub
Log Message:

Merge pull request #19625 from ronawho/future/gmp-rvf

Add future for GMP RVF/broadcast bug

[contributed by @aconsroe-hpe, reviewed/merged by @ronawho]

Here, we get a bad interaction with RVF/broadcast and C
pointers. There is a shadow copy of x in the innermost on clause which
has a mismatch between this.localeId and the underlying locale
field of the struct chpl____wide__ref that holds the C pointer.

I found this unresolved when digging through old issues and didn't want to
drop it on the floor with no time to fix.

Modified Files:
A test/optimizations/remoteValueForwarding/gmp/nestedOn.bad

A test/optimizations/remoteValueForwarding/gmp/nestedOn.chpl
A test/optimizations/remoteValueForwarding/gmp/nestedOn.compopts
A test/optimizations/remoteValueForwarding/gmp/nestedOn.future
A test/optimizations/remoteValueForwarding/gmp/nestedOn.good
A test/optimizations/remoteValueForwarding/gmp/nestedOn.numlocales
A test/optimizations/remoteValueForwarding/gmp/nestedOn.skipif

Compare: https://github.com/chapel-lang/chapel/compare/fee51cfc57dd...90ddfa64c791