blob: 6921bfd71a865c6fa9fdf88cf65f85d8f99b8ee8 [file] [log] [blame]
Sanjiv Gupta0e687712008-05-13 09:02:57 +00001//===-- PIC16.h - Top-level interface for PIC16 representation --*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
Sanjiv Gupta2d4e7f72008-05-14 06:50:01 +00005// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
Sanjiv Gupta0e687712008-05-13 09:02:57 +00007//
8//===----------------------------------------------------------------------===//
9//
10// This file contains the entry points for global functions defined in
11// the LLVM PIC16 back-end.
12//
13//===----------------------------------------------------------------------===//
14
15#ifndef TARGET_PIC16_H
16#define TARGET_PIC16_H
17
18#include <iosfwd>
19
20namespace llvm {
21 class PIC16TargetMachine;
22 class FunctionPassManager;
23 class FunctionPass;
24 class MachineCodeEmitter;
Owen Andersoncb371882008-08-21 00:14:44 +000025 class raw_ostream;
Sanjiv Gupta0e687712008-05-13 09:02:57 +000026
27 FunctionPass *createPIC16ISelDag(PIC16TargetMachine &TM);
Owen Andersoncb371882008-08-21 00:14:44 +000028 FunctionPass *createPIC16CodePrinterPass(raw_ostream &OS,
Sanjiv Gupta0e687712008-05-13 09:02:57 +000029 PIC16TargetMachine &TM);
30} // end namespace llvm;
31
32// Defines symbolic names for PIC16 registers. This defines a mapping from
33// register name to register number.
34#include "PIC16GenRegisterNames.inc"
35
36// Defines symbolic names for the PIC16 instructions.
37#include "PIC16GenInstrNames.inc"
38
39#endif