1 //===-- LanaiSelectionDAGInfo.h - Lanai SelectionDAG Info -----*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 // 9 // This file defines the Lanai subclass for TargetSelectionDAGInfo. 10 // 11 //===----------------------------------------------------------------------===// 12 13 #ifndef LLVM_LIB_TARGET_LANAI_LANAISELECTIONDAGINFO_H 14 #define LLVM_LIB_TARGET_LANAI_LANAISELECTIONDAGINFO_H 15 16 #include "llvm/CodeGen/SelectionDAGTargetInfo.h" 17 #include "llvm/Target/TargetMachine.h" 18 19 namespace llvm { 20 21 class LanaiSelectionDAGInfo : public SelectionDAGTargetInfo { 22 public: 23 LanaiSelectionDAGInfo() = default; 24 25 SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, const SDLoc &dl, 26 SDValue Chain, SDValue Dst, SDValue Src, 27 SDValue Size, unsigned Align, bool isVolatile, 28 bool AlwaysInline, 29 MachinePointerInfo DstPtrInfo, 30 MachinePointerInfo SrcPtrInfo) const override; 31 }; 32 33 } // namespace llvm 34 35 #endif // LLVM_LIB_TARGET_LANAI_LANAISELECTIONDAGINFO_H 36