mirror of
https://github.com/RPCSX/llvm.git
synced 2025-02-01 10:02:42 +00:00
Move all decls in coverage namespace into CoverageMapping.h/NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257311 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
140f7b56a0
commit
189e8f0b8a
@ -20,6 +20,7 @@
|
||||
#include "llvm/ADT/Hashing.h"
|
||||
#include "llvm/ADT/Triple.h"
|
||||
#include "llvm/ADT/iterator.h"
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/ErrorOr.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
@ -452,6 +453,50 @@ public:
|
||||
CoverageData getCoverageForExpansion(const ExpansionRecord &Expansion);
|
||||
};
|
||||
|
||||
const std::error_category &coveragemap_category();
|
||||
|
||||
enum class coveragemap_error {
|
||||
success = 0,
|
||||
eof,
|
||||
no_data_found,
|
||||
unsupported_version,
|
||||
truncated,
|
||||
malformed
|
||||
};
|
||||
|
||||
inline std::error_code make_error_code(coveragemap_error E) {
|
||||
return std::error_code(static_cast<int>(E), coveragemap_category());
|
||||
}
|
||||
|
||||
|
||||
// Profile coverage map has the following layout:
|
||||
// [CoverageMapFileHeader]
|
||||
// [ArrayStart]
|
||||
// [CovMapFunctionRecord]
|
||||
// [CovMapFunctionRecord]
|
||||
// ...
|
||||
// [ArrayEnd]
|
||||
// [Encoded Region Mapping Data]
|
||||
LLVM_PACKED_START
|
||||
template <class IntPtrT> struct CovMapFunctionRecord {
|
||||
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
// Per module coverage mapping data header, i.e. CoverageMapFileHeader
|
||||
// documented above.
|
||||
struct CovMapHeader {
|
||||
#define COVMAP_HEADER(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
|
||||
LLVM_PACKED_END
|
||||
|
||||
enum CoverageMappingVersion {
|
||||
CoverageMappingVersion1 = 0,
|
||||
// The current versin is Version1
|
||||
CoverageMappingCurrentVersion = INSTR_PROF_COVMAP_VERSION
|
||||
};
|
||||
|
||||
} // end namespace coverage
|
||||
|
||||
/// \brief Provide DenseMapInfo for CounterExpression
|
||||
@ -484,4 +529,10 @@ template<> struct DenseMapInfo<coverage::CounterExpression> {
|
||||
|
||||
} // end namespace llvm
|
||||
|
||||
namespace std {
|
||||
template <>
|
||||
struct is_error_code_enum<llvm::coverage::coveragemap_error> : std::true_type {};
|
||||
}
|
||||
|
||||
|
||||
#endif // LLVM_PROFILEDATA_COVERAGEMAPPING_H_
|
||||
|
@ -632,60 +632,11 @@ struct Header {
|
||||
|
||||
} // end namespace RawInstrProf
|
||||
|
||||
namespace coverage {
|
||||
|
||||
const std::error_category &coveragemap_category();
|
||||
|
||||
enum class coveragemap_error {
|
||||
success = 0,
|
||||
eof,
|
||||
no_data_found,
|
||||
unsupported_version,
|
||||
truncated,
|
||||
malformed
|
||||
};
|
||||
|
||||
inline std::error_code make_error_code(coveragemap_error E) {
|
||||
return std::error_code(static_cast<int>(E), coveragemap_category());
|
||||
}
|
||||
|
||||
|
||||
// Profile coverage map has the following layout:
|
||||
// [CoverageMapFileHeader]
|
||||
// [ArrayStart]
|
||||
// [CovMapFunctionRecord]
|
||||
// [CovMapFunctionRecord]
|
||||
// ...
|
||||
// [ArrayEnd]
|
||||
// [Encoded Region Mapping Data]
|
||||
LLVM_PACKED_START
|
||||
template <class IntPtrT> struct CovMapFunctionRecord {
|
||||
#define COVMAP_FUNC_RECORD(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
// Per module coverage mapping data header, i.e. CoverageMapFileHeader
|
||||
// documented above.
|
||||
struct CovMapHeader {
|
||||
#define COVMAP_HEADER(Type, LLVMType, Name, Init) Type Name;
|
||||
#include "llvm/ProfileData/InstrProfData.inc"
|
||||
};
|
||||
|
||||
LLVM_PACKED_END
|
||||
|
||||
enum CoverageMappingVersion {
|
||||
CoverageMappingVersion1 = 0,
|
||||
// The current versin is Version1
|
||||
CoverageMappingCurrentVersion = INSTR_PROF_COVMAP_VERSION
|
||||
};
|
||||
}
|
||||
|
||||
} // end namespace llvm
|
||||
|
||||
namespace std {
|
||||
template <>
|
||||
struct is_error_code_enum<llvm::instrprof_error> : std::true_type {};
|
||||
template <>
|
||||
struct is_error_code_enum<llvm::coverage::coveragemap_error> : std::true_type {};
|
||||
}
|
||||
|
||||
#endif // LLVM_PROFILEDATA_INSTRPROF_H_
|
||||
|
Loading…
x
Reference in New Issue
Block a user