[clang] [CIR] Build out AST consumer patterns to reach the entry point into CIRGen (PR #91007)

Aaron Ballman via cfe-commits cfe-commits at lists.llvm.org
Tue May 7 06:15:23 PDT 2024


================
@@ -0,0 +1,88 @@
+//===--- CIRGenAction.cpp - LLVM Code generation Frontend Action ---------===//
+//
+// 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 "clang/CIRFrontendAction/CIRGenAction.h"
+#include "clang/CIR/CIRGenerator.h"
+#include "clang/Frontend/CompilerInstance.h"
+
+#include "mlir/IR/MLIRContext.h"
+#include "mlir/IR/OwningOpRef.h"
+
+using namespace cir;
+using namespace clang;
+
+namespace cir {
+
+class CIRGenConsumer : public clang::ASTConsumer {
+
+  virtual void anchor();
+
+  [[maybe_unused]] CIRGenAction::OutputType action;
+
+  [[maybe_unused]] DiagnosticsEngine &diagnosticsEngine;
+  [[maybe_unused]] const HeaderSearchOptions &headerSearchOptions;
+  [[maybe_unused]] const CodeGenOptions &codeGenOptions;
+  [[maybe_unused]] const TargetOptions &targetOptions;
+  [[maybe_unused]] const LangOptions &langOptions;
+  [[maybe_unused]] const FrontendOptions &feOptions;
+
+  std::unique_ptr<raw_pwrite_stream> outputStream;
+
+  [[maybe_unused]] ASTContext *astContext{nullptr};
+  IntrusiveRefCntPtr<llvm::vfs::FileSystem> FS;
----------------
AaronBallman wrote:

Naming inconsistency.

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


More information about the cfe-commits mailing list