SystemZSelectionDAGInfo.h revision dff0009d0ced62b92cb5900bc2203ec40142ba15
1//===-- SystemZSelectionDAGInfo.h - SystemZ SelectionDAG Info ---*- C++ -*-===//
2//
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 SystemZ subclass for TargetSelectionDAGInfo.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef SYSTEMZSELECTIONDAGINFO_H
15#define SYSTEMZSELECTIONDAGINFO_H
16
17#include "llvm/Target/TargetSelectionDAGInfo.h"
18
19namespace llvm {
20
21class SystemZTargetMachine;
22
23class SystemZSelectionDAGInfo : public TargetSelectionDAGInfo {
24public:
25  explicit SystemZSelectionDAGInfo(const SystemZTargetMachine &TM);
26  ~SystemZSelectionDAGInfo();
27
28  virtual
29  SDValue EmitTargetCodeForMemcpy(SelectionDAG &DAG, SDLoc DL, SDValue Chain,
30                                  SDValue Dst, SDValue Src,
31                                  SDValue Size, unsigned Align,
32                                  bool IsVolatile, bool AlwaysInline,
33                                  MachinePointerInfo DstPtrInfo,
34                                  MachinePointerInfo SrcPtrInfo) const
35    LLVM_OVERRIDE;
36};
37
38}
39
40#endif
41