LLVM 19.0.0git
CodeGenCoverage.h
Go to the documentation of this file.
1//== llvm/Support/CodeGenCoverage.h ------------------------------*- C++ -*-==//
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/// \file This file provides rule coverage tracking for tablegen-erated CodeGen.
9//===----------------------------------------------------------------------===//
10
11#ifndef LLVM_SUPPORT_CODEGENCOVERAGE_H
12#define LLVM_SUPPORT_CODEGENCOVERAGE_H
13
14#include "llvm/ADT/BitVector.h"
15
16namespace llvm {
17class MemoryBuffer;
18
20protected:
22
23public:
25
27
28 void setCovered(uint64_t RuleID);
29 bool isCovered(uint64_t RuleID) const;
31
32 bool parse(MemoryBuffer &Buffer, StringRef BackendName);
33 bool emit(StringRef FilePrefix, StringRef BackendName) const;
34 void reset();
35};
36} // namespace llvm
37
38#endif // LLVM_SUPPORT_CODEGENCOVERAGE_H
This file implements the BitVector class.
dxil metadata emit
const_set_bits_iterator_impl< BitVector > const_set_bits_iterator
Definition: BitVector.h:131
bool isCovered(uint64_t RuleID) const
void setCovered(uint64_t RuleID)
iterator_range< const_covered_iterator > covered() const
This interface provides simple read-only access to a block of memory, and provides simple methods for...
Definition: MemoryBuffer.h:51
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:50
ForwardIterator for the bits that are set.
Definition: BitVector.h:34
A range adaptor for a pair of iterators.
This is an optimization pass for GlobalISel generic memory operations.
Definition: AddressRanges.h:18
Definition: regcomp.c:192