diff --git a/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp b/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp index 04707084a4166..09d29b8522f54 100644 --- a/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp +++ b/llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp @@ -20,6 +20,7 @@ #include "llvm/Support/ErrorHandling.h" #include "llvm/Support/FormatVariadic.h" #include "llvm/Support/ModRef.h" +#include "llvm/Support/SourceMgr.h" #include "llvm/Support/raw_ostream.h" #include "llvm/TableGen/Error.h" #include "llvm/TableGen/Record.h" @@ -154,7 +155,7 @@ void IntrinsicEmitter::EmitEnumInfo(const CodeGenIntrinsicTable &Ints, OS << "// Enum values for intrinsics.\n"; bool First = true; - for (const auto &Int : Ints[*Set]) { + for (const CodeGenIntrinsic &Int : Ints[*Set]) { OS << " " << Int.EnumName; // Assign a value to the first intrinsic in this target set so that all @@ -167,7 +168,9 @@ void IntrinsicEmitter::EmitEnumInfo(const CodeGenIntrinsicTable &Ints, OS << ", "; if (Int.EnumName.size() < 40) OS.indent(40 - Int.EnumName.size()); - OS << formatv(" // {}\n", Int.Name); + OS << formatv( + " // {} ({})\n", Int.Name, + SrcMgr.getFormattedLocationNoOffset(Int.TheDef->getLoc().front())); } // Emit num_intrinsics into the target neutral enum.