[ HPF Home | Versions | Compilers | Projects | Publications | Applications | Benchmarks | Events | Contact ]



Next:
Storage Association Discussion Up: Storage Association Previous: Sequence Directives

Storage Association Rules

  1. A sequence-directive with an empty association-name-list is treated as if it contained the name of all implicitly mapped variables and COMMON blocks in the scoping unit which cannot otherwise be determined to be sequential or nonsequential by their language context.

  2. A sequential variable may not be explicitely mapped unless it is a scalar or rank-one array, and is an aggregate cover. If there is more than one aggregate cover for an aggregate variable group, only one may be explicitly mapped.

  3. If a COMMON block is nonsequential, then all of the following must hold:

    1. Every occurrence of the COMMON block has exactly the same number of components with each corresponding component having a storage sequence of exactly the same size;

    2. If a component is a nonsequential variable in any occurrence of the COMMON block, then it must be nonsequential with identical type, shape, and mapping attributes in every occurrence of the COMMON block;

    3. If a component is sequential and explicitly mapped (either a variable or an aggregate variable group with an explicitly mapped aggregate cover) in any occurrence of the COMMON block, then it must be sequential and explicitly mapped with identical mapping attributes in every occurrence of the COMMON block. In addition, the type and shape of the explicitly mapped variable must be identical in all occurrences; and

    4. Every occurrence of the COMMON block must be nonsequential.



©2000-2006 Rice University [ Contact Us | HiPerSoft | Computer Science ]

paula@erc.msstate.edu
Thu Dec 8 16:17:11 CST 1994