blob: 31f278a18574825ed9fb3c70933b4e124d68592c [file] [log] [blame]
Jia Liu31d157a2012-02-18 12:03:15 +00001//===-- HexagonSelectionDAGInfo.h - Hexagon SelectionDAG Info ---*- C++ -*-===//
Tony Linthicumb4b54152011-12-12 21:14:40 +00002//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9//
10// This file defines the Hexagon subclass for TargetSelectionDAGInfo.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef HexagonSELECTIONDAGINFO_H
15#define HexagonSELECTIONDAGINFO_H
16
17#include "llvm/Target/TargetSelectionDAGInfo.h"
18
19namespace llvm {
20
21class HexagonTargetMachine;
22
23class HexagonSelectionDAGInfo : public TargetSelectionDAGInfo {
24public:
25 explicit HexagonSelectionDAGInfo(const HexagonTargetMachine &TM);
26 ~HexagonSelectionDAGInfo();
27
28 virtual
Andrew Trickac6d9be2013-05-25 02:42:55 +000029 SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, SDLoc dl,
Tony Linthicumb4b54152011-12-12 21:14:40 +000030 SDValue Chain,
31 SDValue Dst, SDValue Src,
32 SDValue Size, unsigned Align,
33 bool isVolatile, bool AlwaysInline,
34 MachinePointerInfo DstPtrInfo,
35 MachinePointerInfo SrcPtrInfo) const;
36};
37
38}
39
40#endif