xref: /llvm-project/clang/lib/Driver/Phases.cpp (revision c382d03ca85d0c93b3e49949006e42314b9d4409)
16da90771SNick Lewycky //===--- Phases.cpp - Transformations on Driver Types ---------------------===//
258cac7caSDaniel Dunbar //
32946cd70SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
42946cd70SChandler Carruth // See https://llvm.org/LICENSE.txt for license information.
52946cd70SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
658cac7caSDaniel Dunbar //
758cac7caSDaniel Dunbar //===----------------------------------------------------------------------===//
858cac7caSDaniel Dunbar 
958cac7caSDaniel Dunbar #include "clang/Driver/Phases.h"
1079000206SDavid Blaikie #include "llvm/Support/ErrorHandling.h"
1158cac7caSDaniel Dunbar #include <cassert>
1258cac7caSDaniel Dunbar 
1358cac7caSDaniel Dunbar using namespace clang::driver;
1458cac7caSDaniel Dunbar 
getPhaseName(ID Id)1558cac7caSDaniel Dunbar const char *phases::getPhaseName(ID Id) {
1658cac7caSDaniel Dunbar   switch (Id) {
177326ad57SDaniel Dunbar   case Preprocess: return "preprocessor";
18286c39a9SDaniel Dunbar   case Precompile: return "precompiler";
19286c39a9SDaniel Dunbar   case Compile: return "compiler";
2023a55f1eSBob Wilson   case Backend: return "backend";
21286c39a9SDaniel Dunbar   case Assemble: return "assembler";
22286c39a9SDaniel Dunbar   case Link: return "linker";
23*c382d03cSPuyan Lotfi   case IfsMerge: return "ifsmerger";
2458cac7caSDaniel Dunbar   }
2558cac7caSDaniel Dunbar 
2683d382b1SDavid Blaikie   llvm_unreachable("Invalid phase id.");
2758cac7caSDaniel Dunbar }
28