diff options
-rw-r--r-- | llvm/include/llvm/Remarks/RemarkSerializer.h | 23 | ||||
-rw-r--r-- | llvm/include/llvm/Remarks/YAMLRemarkSerializer.h | 47 | ||||
-rw-r--r-- | llvm/lib/IR/RemarkStreamer.cpp | 1 | ||||
-rw-r--r-- | llvm/lib/Remarks/YAMLRemarkSerializer.cpp | 2 | ||||
-rw-r--r-- | llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp | 2 |
5 files changed, 50 insertions, 25 deletions
diff --git a/llvm/include/llvm/Remarks/RemarkSerializer.h b/llvm/include/llvm/Remarks/RemarkSerializer.h index def5c2e1662..3eddac41cb0 100644 --- a/llvm/include/llvm/Remarks/RemarkSerializer.h +++ b/llvm/include/llvm/Remarks/RemarkSerializer.h @@ -15,7 +15,6 @@ #include "llvm/Remarks/Remark.h" #include "llvm/Remarks/RemarkStringTable.h" -#include "llvm/Support/YAMLTraits.h" #include "llvm/Support/raw_ostream.h" namespace llvm { @@ -40,28 +39,6 @@ struct Serializer { /// Wether the serializer should use a string table while emitting. enum class UseStringTable { No, Yes }; -/// Serialize the remarks to YAML. One remark entry looks like this: -/// --- !<TYPE> -/// Pass: <PASSNAME> -/// Name: <REMARKNAME> -/// DebugLoc: { File: <SOURCEFILENAME>, Line: <SOURCELINE>, -/// Column: <SOURCECOLUMN> } -/// Function: <FUNCTIONNAME> -/// Args: -/// - <KEY>: <VALUE> -/// DebugLoc: { File: <FILE>, Line: <LINE>, Column: <COL> } -/// ... -struct YAMLSerializer : public Serializer { - /// The YAML streamer. - yaml::Output YAMLOutput; - - YAMLSerializer(raw_ostream &OS, - UseStringTable UseStringTable = remarks::UseStringTable::No); - - /// Emit a remark to the stream. - void emit(const Remark &Remark) override; -}; - } // end namespace remarks } // end namespace llvm diff --git a/llvm/include/llvm/Remarks/YAMLRemarkSerializer.h b/llvm/include/llvm/Remarks/YAMLRemarkSerializer.h new file mode 100644 index 00000000000..5b817321ce9 --- /dev/null +++ b/llvm/include/llvm/Remarks/YAMLRemarkSerializer.h @@ -0,0 +1,47 @@ +//===-- YAMLRemarkSerializer.h - YAML Remark serialization ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// +// +// This file provides an interface for serializing remarks to YAML. +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_REMARKS_YAML_REMARK_SERIALIZER_H +#define LLVM_REMARKS_YAML_REMARK_SERIALIZER_H + +#include "llvm/Remarks/RemarkSerializer.h" +#include "llvm/Support/YAMLTraits.h" + +namespace llvm { +namespace remarks { + +/// Serialize the remarks to YAML. One remark entry looks like this: +/// --- !<TYPE> +/// Pass: <PASSNAME> +/// Name: <REMARKNAME> +/// DebugLoc: { File: <SOURCEFILENAME>, Line: <SOURCELINE>, +/// Column: <SOURCECOLUMN> } +/// Function: <FUNCTIONNAME> +/// Args: +/// - <KEY>: <VALUE> +/// DebugLoc: { File: <FILE>, Line: <LINE>, Column: <COL> } +/// ... +struct YAMLSerializer : public Serializer { + /// The YAML streamer. + yaml::Output YAMLOutput; + + YAMLSerializer(raw_ostream &OS, + UseStringTable UseStringTable = remarks::UseStringTable::No); + + /// Emit a remark to the stream. + void emit(const Remark &Remark) override; +}; + +} // end namespace remarks +} // end namespace llvm + +#endif /* LLVM_REMARKS_REMARK_SERIALIZER_H */ diff --git a/llvm/lib/IR/RemarkStreamer.cpp b/llvm/lib/IR/RemarkStreamer.cpp index 5b4c7e72b47..9470f3ea4f9 100644 --- a/llvm/lib/IR/RemarkStreamer.cpp +++ b/llvm/lib/IR/RemarkStreamer.cpp @@ -16,6 +16,7 @@ #include "llvm/IR/Function.h" #include "llvm/IR/GlobalValue.h" #include "llvm/Remarks/RemarkFormat.h" +#include "llvm/Remarks/YAMLRemarkSerializer.h" using namespace llvm; diff --git a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp index d64ae8e12ab..e4379748248 100644 --- a/llvm/lib/Remarks/YAMLRemarkSerializer.cpp +++ b/llvm/lib/Remarks/YAMLRemarkSerializer.cpp @@ -11,7 +11,7 @@ // //===----------------------------------------------------------------------===// -#include "llvm/Remarks/RemarkSerializer.h" +#include "llvm/Remarks/YAMLRemarkSerializer.h" #include "llvm/Support/CommandLine.h" using namespace llvm; diff --git a/llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp b/llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp index f0587bb23ee..c5f222f0f8d 100644 --- a/llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp +++ b/llvm/unittests/Remarks/YAMLRemarksSerializerTest.cpp @@ -7,7 +7,7 @@ //===----------------------------------------------------------------------===// #include "llvm/Remarks/Remark.h" -#include "llvm/Remarks/RemarkSerializer.h" +#include "llvm/Remarks/YAMLRemarkSerializer.h" #include "gtest/gtest.h" using namespace llvm; |