diff options
author | Doug Wyatt <doug@sonosphere.com> | 2024-06-24 00:51:31 -1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-24 12:51:31 +0200 |
commit | f03cb005eb4ba3c6fb645aca2228e907db8cd452 (patch) | |
tree | 1a9e035066e4429c2e0b0b872ebe6792436addbd /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 5a997c1d83845cd891c1e4662cb7ddb02c1eaecc (diff) | |
download | llvm-f03cb005eb4ba3c6fb645aca2228e907db8cd452.zip llvm-f03cb005eb4ba3c6fb645aca2228e907db8cd452.tar.gz llvm-f03cb005eb4ba3c6fb645aca2228e907db8cd452.tar.bz2 |
[Clang] Introduce `nonblocking`/`nonallocating` attributes (#84983)
Introduce `nonblocking` and `nonallocating` attributes. RFC is here:
https://discourse.llvm.org/t/rfc-nolock-and-noalloc-attributes/76837
This PR introduces the attributes, with some changes in Sema to deal
with them as extensions to function (proto)types.
There are some basic type checks, most importantly, a warning when
trying to spoof the attribute (implicitly convert a function without the
attribute to one that has it).
A second, follow-on pull request will introduce new caller/callee
verification.
---------
Co-authored-by: Doug Wyatt <dwyatt@apple.com>
Co-authored-by: Shafik Yaghmour <shafik.yaghmour@intel.com>
Co-authored-by: Aaron Ballman <aaron@aaronballman.com>
Co-authored-by: Sirraide <aeternalmail@gmail.com>
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions