1//===--- Phases.h - Transformations on Driver Types -------------*- C++ -*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8 9#ifndef LLVM_CLANG_DRIVER_PHASES_H 10#define LLVM_CLANG_DRIVER_PHASES_H 11 12namespace clang { 13namespace driver { 14namespace phases { 15 /// ID - Ordered values for successive stages in the 16 /// compilation process which interact with user options. 17 enum ID { 18 Preprocess, 19 Precompile, 20 Compile, 21 Backend, 22 Assemble, 23 Link, 24 IfsMerge, 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