aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/CloneFunction.cpp
diff options
context:
space:
mode:
authorpeter klausler <pklausler@nvidia.com>2021-10-06 14:03:48 -0700
committerpeter klausler <pklausler@nvidia.com>2021-10-12 09:24:24 -0700
commitf05c95f10fc1d8171071735af8ad3a9e87633120 (patch)
tree26df77c5413b6fe96bc98ef8e4592c81f0fb59ad /llvm/lib/Transforms/Utils/CloneFunction.cpp
parent57b40b5f34383634949d1639e64a5c2acd0dc5f6 (diff)
downloadllvm-f05c95f10fc1d8171071735af8ad3a9e87633120.zip
llvm-f05c95f10fc1d8171071735af8ad3a9e87633120.tar.gz
llvm-f05c95f10fc1d8171071735af8ad3a9e87633120.tar.bz2
[flang] More work on SYSTEM_CLOCK runtime API and implementation
To get proper wrap-around behavior for the various kind parameter values of the optional COUNT= and COUNT_MAX= dummy arguments to the intrinsic subroutine SYSTEM_CLOCK, add an extra argument to the APIs for lowering to pass the integer kind of the actual argument. Avoid confusion by requiring that both actual arguments have the same kind when both are present. The results of the runtime functions remain std::int64_t and lowering should still convert them before storing to the actual argument variables. Rework the implementation a bit to accomodate the dynamic specification of the kind parameter, and to clean up some coding issues with preprocessing and templates. Use the kind of the COUNT=/COUNT_MAX= actual arguments to determine the clock's resolution, where possible, in conformance with other Fortran implementations. Differential Revision: https://reviews.llvm.org/D111281
Diffstat (limited to 'llvm/lib/Transforms/Utils/CloneFunction.cpp')
0 files changed, 0 insertions, 0 deletions