llvm-project
8870ce1a - [flang][docs] Add note about Cray pointers and the TARGET attribute (#137993)

Commit
244 days ago
[flang][docs] Add note about Cray pointers and the TARGET attribute (#137993) We found some tests checking for loops assigning between Cray pointer handles and their pointees which produced "incorrect" results with optimizations enabled; this is because the compiler expects Cray pointers not to alias with any other entity. [The HPE documentation for Cray Fortran extensions specifies:](https://support.hpe.com/hpesc/public/docDisplay?docId=a00113911en_us&docLocale=en_US&page=Types.html#cray-poiter-type) > the compiler assumes that the storage of a pointee is > never overlaid on the storage of another variable Jean pointed out that if a user's code uses entities that alias via Cray pointers, they may add the TARGET attribute to inform Flang of this aliasing, but that Flang's behavior is in line with Cray's own documentation and we should not make any changes to our alias analysis to try and detect this case. Updating documentation so that users that encounter this situation have a way to allow their code to compile as they intend.
Parents
Loading