//===- RISCVIntrinsicManager.h - RISC-V Intrinsic Handler -------*- C++ -*-===//
 
//
 
// 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
 
//
 
//===----------------------------------------------------------------------===//
 
//
 
// This file defines the RISCVIntrinsicManager, which handles RISC-V vector
 
// intrinsic functions.
 
//
 
//===----------------------------------------------------------------------===//
 
 
 
#ifndef LLVM_CLANG_SEMA_RISCVINTRINSICMANAGER_H
 
#define LLVM_CLANG_SEMA_RISCVINTRINSICMANAGER_H
 
 
 
namespace clang {
 
class LookupResult;
 
class IdentifierInfo;
 
class Preprocessor;
 
 
 
namespace sema {
 
class RISCVIntrinsicManager {
 
public:
 
  virtual ~RISCVIntrinsicManager() = default;
 
 
 
  // Create RISC-V intrinsic and insert into symbol table and return true if
 
  // found, otherwise return false.
 
  virtual bool CreateIntrinsicIfFound(LookupResult &LR, IdentifierInfo *II,
 
                                      Preprocessor &PP) = 0;
 
};
 
} // end namespace sema
 
} // end namespace clang
 
 
 
#endif