[clang] Add clang atomic control options and attribute (PR #114841)
Yaxun Liu via cfe-commits
cfe-commits at lists.llvm.org
Fri Jan 31 08:54:24 PST 2025
================
@@ -4972,3 +4972,59 @@ def NoTrivialAutoVarInit: InheritableAttr {
let Documentation = [NoTrivialAutoVarInitDocs];
let SimpleHandler = 1;
}
+
+def Atomic : StmtAttr {
+ let Spellings = [Clang<"atomic">];
+ let Args = [
+ EnumArgument<"NoRemoteMemory", "NoRemoteMemoryTy", /*IsString*/ false,
+ ["no_remote_memory", "!no_remote_memory", ""],
+ ["NoRemoteMemoryOn", "NoRemoteMemoryOff", "NoRemoteMemoryUnset"]>,
+ EnumArgument<"NoFineGrainedMemory", "NoFineGrainedMemoryTy", /*IsString*/ false,
+ ["no_fine_grained_memory", "!no_fine_grained_memory", ""],
+ ["NoFineGrainedMemoryOn", "NoFineGrainedMemoryOff", "NoFineGrainedMemoryUnset"]>,
+ EnumArgument<"IgnoreDenormalMode", "IgnoreDenormalModeTy", /*IsString*/ false,
+ ["ignore_denormal_mode", "!ignore_denormal_mode", ""],
+ ["IgnoreDenormalModeOn", "IgnoreDenormalModeOff", "IgnoreDenormalModeUnset"]>
+ ];
+ let Subjects = SubjectList<[CompoundStmt], ErrorDiag, "compound statements">;
+ let HasCustomParsing = 1;
+ let Documentation = [Undocumented];
----------------
yxsamliu wrote:
will add
https://github.com/llvm/llvm-project/pull/114841
More information about the cfe-commits
mailing list