xref: /freebsd/contrib/llvm-project/clang/lib/Driver/Phases.cpp (revision d9a42747950146bf03cda7f6e25d219253f8a57a)
1 //===--- Phases.cpp - Transformations on Driver Types ---------------------===//
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 #include "clang/Driver/Phases.h"
10 #include "llvm/Support/ErrorHandling.h"
11 #include <cassert>
12 
13 using namespace clang::driver;
14 
15 const char *phases::getPhaseName(ID Id) {
16   switch (Id) {
17   case Preprocess: return "preprocessor";
18   case Precompile: return "precompiler";
19   case Compile: return "compiler";
20   case Backend: return "backend";
21   case Assemble: return "assembler";
22   case Link: return "linker";
23   case IfsMerge: return "ifsmerger";
24   }
25 
26   llvm_unreachable("Invalid phase id.");
27 }
28