aboutsummaryrefslogtreecommitdiff
path: root/flang/unittests/Frontend/CodeGenActionTest.cpp
diff options
context:
space:
mode:
authorGreg Roth <grroth@microsoft.com>2024-09-17 11:09:42 -0600
committerGitHub <noreply@github.com>2024-09-17 10:09:42 -0700
commita729e706de3fc6ebee49ede3c50afb47f2e29191 (patch)
treeec1e8d8b1ec96d8036e70ae9e1eb31a3c91e3c8e /flang/unittests/Frontend/CodeGenActionTest.cpp
parentc23d6df60d62f971d957e730f6fe55ea89541f6b (diff)
downloadllvm-a729e706de3fc6ebee49ede3c50afb47f2e29191.zip
llvm-a729e706de3fc6ebee49ede3c50afb47f2e29191.tar.gz
llvm-a729e706de3fc6ebee49ede3c50afb47f2e29191.tar.bz2
[HLSL] set alwaysinline on HLSL functions (#106588)
HLSL inlines all its functions by default. This uses the alwaysinline attribute to make the alwaysinliner pass inline any function not explicitly marked noinline by the user or autogeneration. The alwayslinline marking takes place in `SetLLVMFunctionAttributesForDefinitions` where all other inlining interactions are determined. The outermost entry function is marked noinline because there's no reason to inline it. Any user calls to an entry function will instead call the internal mangled version of the entry function. Adds tests for function and constructor inlining and augments some existing tests to verify correct inlining of implicitly created functions as well. Incidentally restore RUN line that I believe was mistakenly removed as part of #88918 Fixes #89282
Diffstat (limited to 'flang/unittests/Frontend/CodeGenActionTest.cpp')
0 files changed, 0 insertions, 0 deletions