blob: 0673e4d35472ffa6d9c445c51769c41b030a9311 [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
29 SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, DebugLoc dl,
30 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