[llvm] [AArch64] Add an AArch64 pass for loop idiom transformations (PR #72273)

Sjoerd Meijer via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 16 04:24:48 PST 2023


================
@@ -0,0 +1,726 @@
+
+//===- AArch64LoopIdiomTransform.cpp - Loop idiom recognition -------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#include "AArch64LoopIdiomTransform.h"
+#include "llvm/Analysis/DomTreeUpdater.h"
+#include "llvm/Analysis/LoopPass.h"
+#include "llvm/Analysis/TargetTransformInfo.h"
+#include "llvm/IR/Dominators.h"
+#include "llvm/IR/IRBuilder.h"
+#include "llvm/IR/Intrinsics.h"
+#include "llvm/IR/MDBuilder.h"
+#include "llvm/IR/PatternMatch.h"
+#include "llvm/InitializePasses.h"
+#include "llvm/Transforms/Utils/BasicBlockUtils.h"
+
+using namespace llvm;
+
+#define DEBUG_TYPE "aarch64-lit"
----------------
sjoerdmeijer wrote:

Bikeshedding: `lit` as name could perhaps be confusing. Something more verbose but descriptive with "loopidiom" in it would probably have my preference. 

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


More information about the llvm-commits mailing list