[llvm] c763160 - [llvm-mca] Fix class dominance warnings for parseCodeRegions
Michael Maitland via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 22 12:31:31 PST 2022
Author: Michael Maitland
Date: 2022-11-22T12:31:01-08:00
New Revision: c7631606eb40d445615d3fc6f6599936463bac36
URL: https://github.com/llvm/llvm-project/commit/c7631606eb40d445615d3fc6f6599936463bac36
DIFF: https://github.com/llvm/llvm-project/commit/c7631606eb40d445615d3fc6f6599936463bac36.diff
LOG: [llvm-mca] Fix class dominance warnings for parseCodeRegions
Fixes issue [59091](https://github.com/llvm/llvm-project/issues/59091).
`CodeRegionGenerator::parseCodeRegions` is implemented by `AsmCodeRegionGenerator`.
If it were to be implemented in `AnalysisRegionGenerator` or `InstrumentRegionGenerator`,
then `parseCodeRegions` from an `AsmAnalysisRegionGenerator` or `AsmInstrumentRegionGenerator`
object would be ambiguous. To solve this, `AsmAnalysisRegionGenerator` and
`AsmInstrumentRegionGenerator` qualify their call to `AsmCodeRegionGenerator::parseCodeRegions`.
Differential Revision: https://reviews.llvm.org/D138462
Added:
Modified:
llvm/tools/llvm-mca/CodeRegionGenerator.h
Removed:
################################################################################
diff --git a/llvm/tools/llvm-mca/CodeRegionGenerator.h b/llvm/tools/llvm-mca/CodeRegionGenerator.h
index d9e9be21333d2..88621ed856c58 100644
--- a/llvm/tools/llvm-mca/CodeRegionGenerator.h
+++ b/llvm/tools/llvm-mca/CodeRegionGenerator.h
@@ -162,6 +162,11 @@ class AsmAnalysisRegionGenerator final : public AnalysisRegionGenerator,
else
return static_cast<const AnalysisRegions &>(*RegionsOrErr);
}
+
+ Expected<const CodeRegions &>
+ parseCodeRegions(const std::unique_ptr<MCInstPrinter> &IP) override {
+ return AsmCodeRegionGenerator::parseCodeRegions(IP);
+ }
};
class AsmInstrumentRegionGenerator final : public InstrumentRegionGenerator,
@@ -187,6 +192,11 @@ class AsmInstrumentRegionGenerator final : public InstrumentRegionGenerator,
else
return static_cast<const InstrumentRegions &>(*RegionsOrErr);
}
+
+ Expected<const CodeRegions &>
+ parseCodeRegions(const std::unique_ptr<MCInstPrinter> &IP) override {
+ return AsmCodeRegionGenerator::parseCodeRegions(IP);
+ }
};
} // namespace mca
More information about the llvm-commits
mailing list