aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/PIC16/PIC16.h
blob: 5c2a4cce828eba47e8e72525f5f1d82704ef4d2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
//===-- PIC16.h - Top-level interface for PIC16 representation --*- C++ -*-===//
//
//                     The LLVM Compiler Infrastructure
//
// This file was developed by Bruno Cardoso Lopes and is distributed under the 
// University of Illinois Open Source License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file contains the entry points for global functions defined in 
// the LLVM PIC16 back-end.
//
//===----------------------------------------------------------------------===//

#ifndef TARGET_PIC16_H
#define TARGET_PIC16_H

#include <iosfwd>

namespace llvm {
  class PIC16TargetMachine;
  class FunctionPassManager;
  class FunctionPass;
  class MachineCodeEmitter;

  FunctionPass *createPIC16ISelDag(PIC16TargetMachine &TM);
  FunctionPass *createPIC16CodePrinterPass(std::ostream &OS, 
                                           PIC16TargetMachine &TM);
} // end namespace llvm;

// Defines symbolic names for PIC16 registers.  This defines a mapping from
// register name to register number.
#include "PIC16GenRegisterNames.inc"

// Defines symbolic names for the PIC16 instructions.
#include "PIC16GenInstrNames.inc"

#endif