mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-01-14 20:22:30 +00:00
52711fb8da
Rearrange the contents of __builtin_* module files a little and make sure that semantics implicitly USEs the module __Fortran_builtins before processing each source file. This ensures that the special derived types for TEAM_TYPE, EVENT_TYPE, LOCK_TYPE, &c. exist in the symbol table where they will be available for use in coarray intrinsic function processing. Update IsTeamType() to exploit access to the __Fortran_builtins module rather than applying ad hoc name tests. Move it and some other utilities from Semantics/tools.* to Evaluate/tools.* to make them available to intrinsics processing. Add/correct the intrinsic table definitions for GET_TEAM, TEAM_NUMBER, and THIS_IMAGE to exercise the built-in TEAM_TYPE as an argument and as a result. Add/correct/extend tests accordingly. Differential Revision: https://reviews.llvm.org/D110356