aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorjeanPerier <jperier@nvidia.com>2023-10-09 09:27:08 +0200
committerGitHub <noreply@github.com>2023-10-09 09:27:08 +0200
commit87b2682ad22bdaa2d8a95cb94a24603cf39a4c1f (patch)
tree96afe205ac34687cef676d5db21ad07ae68e22cd /clang/lib/Frontend/CompilerInvocation.cpp
parentf47914a7cd733751d6ae4dcb9c240520c34ec492 (diff)
downloadllvm-87b2682ad22bdaa2d8a95cb94a24603cf39a4c1f.zip
llvm-87b2682ad22bdaa2d8a95cb94a24603cf39a4c1f.tar.gz
llvm-87b2682ad22bdaa2d8a95cb94a24603cf39a4c1f.tar.bz2
[flang][hlfir] use fir.type_info to skip runtime call if nofinal is set (#68397)
HLFIR was always calling Destroy runtime when doing derived type scalar assignments because the IR did not contain the info of whether finalization was needed or not. This info is now available in fir.type_info which allow skipping the runtime call when not needed. Also, when finalization is needed, simply use Assign runtime. This makes no difference from a semantic point of view with the current code that generated a call to Destroy and did the assignment inline, but if some piece of runtime must be called anyway, it is simpler to just call Assign that deals with everything.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions