[clang] [Clang][CodeGen] Add `[[clang::asm_dialect]]` attribute (PR #101871)

via cfe-commits cfe-commits at lists.llvm.org
Sun Aug 4 01:20:32 PDT 2024


github-actions[bot] wrote:

<!--LLVM CODE FORMAT COMMENT: {clang-format}-->


:warning: C/C++ code formatter, clang-format found issues in your code. :warning:

<details>
<summary>
You can test this locally with the following command:
</summary>

``````````bash
git-clang-format --diff d07fdf9779f7dead2828cfb18bafbd9a2c085920 2e544ca9628cdaa4ef8875494f2b5948c7623d21 --extensions cpp,c,h -- clang/test/CodeGen/inline-asm-mixed-dialect.c clang/lib/CodeGen/CGStmt.cpp clang/lib/CodeGen/CodeGenFunction.h clang/lib/Parse/ParseStmt.cpp clang/lib/Sema/SemaDeclAttr.cpp clang/lib/Sema/SemaStmtAttr.cpp
``````````

</details>

<details>
<summary>
View the diff from clang-format here.
</summary>

``````````diff
diff --git a/clang/lib/CodeGen/CGStmt.cpp b/clang/lib/CodeGen/CGStmt.cpp
index c7dd72f57b..b4b5efa575 100644
--- a/clang/lib/CodeGen/CGStmt.cpp
+++ b/clang/lib/CodeGen/CGStmt.cpp
@@ -3036,11 +3036,13 @@ void CodeGenFunction::EmitAsmStmt(const AsmStmt &S) {
   bool HasSideEffect = S.isVolatile() || S.getNumOutputs() == 0;
 
   llvm::InlineAsm::AsmDialect AsmDialect;
-  auto GlobalAsmDialect = [&]{
-    return CGM.getCodeGenOpts().getInlineAsmDialect() == CodeGenOptions::IAD_ATT ? llvm::InlineAsm::AD_ATT : llvm::InlineAsm::AD_Intel;
+  auto GlobalAsmDialect = [&] {
+    return CGM.getCodeGenOpts().getInlineAsmDialect() == CodeGenOptions::IAD_ATT
+               ? llvm::InlineAsm::AD_ATT
+               : llvm::InlineAsm::AD_Intel;
   };
   if (auto *GS = dyn_cast<GCCAsmStmt>(&S)) {
-    switch (this->AsmDialect) {  // Fixme: rename member
+    switch (this->AsmDialect) { // Fixme: rename member
     case AsmDialectAttr::Intel:
       AsmDialect = llvm::InlineAsm::AsmDialect::AD_Intel;
       break;
diff --git a/clang/lib/Parse/ParseStmt.cpp b/clang/lib/Parse/ParseStmt.cpp
index d5bc3d47ed..af8b9be9d8 100644
--- a/clang/lib/Parse/ParseStmt.cpp
+++ b/clang/lib/Parse/ParseStmt.cpp
@@ -360,7 +360,7 @@ Retry:
       // Could be relaxed if asm-related regular keyword attributes are
       // added later.
       if (AL.isRegularKeywordAttribute())
-         Diag(AL.getRange().getBegin(), diag::err_keyword_not_allowed) << AL;
+        Diag(AL.getRange().getBegin(), diag::err_keyword_not_allowed) << AL;
     }
     bool msAsm = false;
     Res = ParseAsmStatement(msAsm);
diff --git a/clang/lib/Sema/SemaDeclAttr.cpp b/clang/lib/Sema/SemaDeclAttr.cpp
index ff14256afb..733edcd43e 100644
--- a/clang/lib/Sema/SemaDeclAttr.cpp
+++ b/clang/lib/Sema/SemaDeclAttr.cpp
@@ -5607,8 +5607,7 @@ static void handleAsmDialectAttr(Sema &S, Decl *D, const ParsedAttr &A) {
 
   AsmDialectAttr::Kind Kind;
   if (Name.empty() || !AsmDialectAttr::ConvertStrToKind(Name, Kind)) {
-    S.Diag(LiteralLoc, diag::warn_attribute_type_not_supported)
-        << A << Name;
+    S.Diag(LiteralLoc, diag::warn_attribute_type_not_supported) << A << Name;
     return;
   }
 
diff --git a/clang/lib/Sema/SemaStmtAttr.cpp b/clang/lib/Sema/SemaStmtAttr.cpp
index d47257f7a9..48e4fcc4ce 100644
--- a/clang/lib/Sema/SemaStmtAttr.cpp
+++ b/clang/lib/Sema/SemaStmtAttr.cpp
@@ -635,8 +635,7 @@ static Attr *handleAsmDialectAttr(Sema &S, Stmt *St, const ParsedAttr &A,
 
   AsmDialectAttr::Kind Kind;
   if (Name.empty() || !AsmDialectAttr::ConvertStrToKind(Name, Kind)) {
-    S.Diag(LiteralLoc, diag::warn_attribute_type_not_supported)
-        << A << Name;
+    S.Diag(LiteralLoc, diag::warn_attribute_type_not_supported) << A << Name;
     return nullptr;
   }
 

``````````

</details>


https://github.com/llvm/llvm-project/pull/101871


More information about the cfe-commits mailing list