[clang] [clang] Add support for new loop attribute [[clang::code_align()]] (PR #70762)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Wed Nov 1 10:18:11 PDT 2023


================
@@ -788,6 +797,20 @@ void LoopInfoStack::push(BasicBlock *Header, clang::ASTContext &Ctx,
     }
   }
 
+  // Translate 'loop attributes' arguments to equivalent Attr enums.
+  // It's being handled separately from LoopHintAttrs not to support
+  // legacy GNU attributes and pragma styles.
+  //
+  // For attribute code_align:
+  // n - 'llvm.loop.align i32 n' metadata will be emitted.
+  for (const auto *A : Attrs) {
----------------
erichkeane wrote:

Aren't you separately ensuring we don't have duplicates?  If so, you can just use `llvm::find_if`

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


More information about the cfe-commits mailing list