1//===--- Phases.h - Transformations on Driver Types -------------*- 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#ifndef LLVM_CLANG_DRIVER_PHASES_H
11#define LLVM_CLANG_DRIVER_PHASES_H
12
13namespace clang {
14namespace driver {
15namespace phases {
16  /// ID - Ordered values for successive stages in the
17  /// compilation process which interact with user options.
18  enum ID {
19    Preprocess,
20    Precompile,
21    Compile,
22    Backend,
23    Assemble,
24    Link
25  };
26
27  enum {
28    MaxNumberOfPhases = Link + 1
29  };
30
31  const char *getPhaseName(ID Id);
32
33} // end namespace phases
34} // end namespace driver
35} // end namespace clang
36
37#endif
38