aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
diff options
context:
space:
mode:
authorPeter Klausler <pklausler@nvidia.com>2022-02-16 13:26:44 -0800
committerPeter Klausler <pklausler@nvidia.com>2022-02-28 16:13:22 -0800
commit73b193aec21d5203bde76c76bd0a29c6f77daf36 (patch)
tree7f5b73b177b0c3f9c45f46fb111f34bf4c63c632 /llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
parent6d751c410d6f5400c2c26d47e5033679fbd736d6 (diff)
downloadllvm-73b193aec21d5203bde76c76bd0a29c6f77daf36.zip
llvm-73b193aec21d5203bde76c76bd0a29c6f77daf36.tar.gz
llvm-73b193aec21d5203bde76c76bd0a29c6f77daf36.tar.bz2
[flang] Allow more concurrently open NEWUNIT= values, with recycling
Add a header-only implementation of Briggs & Torczon's fast small integer set data structure to flang/include/flang/Common, and use it in the runtime to manage a pool of Fortran unit numbers with recycling. This replaces the bit set previously used for that purpose. The set is initialized on demand with the negations of all the NEWUNIT= unit numbers that can be returned to any kind of integer variable. For programs that require more concurrently open NEWUNIT= unit numbers than the pool can hold, they are now allocated with a non-recycling counter. This allows as many open units as the operating system provides. Many of the top-line comments in flang/unittests/Runtime had the wrong path name. I noticed this while adding a unit test for the fast integer set data structure, and cleaned them up. Differential Revision: https://reviews.llvm.org/D120685
Diffstat (limited to 'llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp')
0 files changed, 0 insertions, 0 deletions