vsapsai marked 2 inline comments as done.
vsapsai added a comment.

Thanks for the review.



================
Comment at: llvm/include/llvm/ADT/Statistic.h:47
 
-class Statistic {
+class StatisticBase {
 public:
----------------
dsanders wrote:
> Do we actually need the common base class? I'm thinking that since 
> NoopStatistic never registers (and can't because the interfaces to do so 
> changed to TrackingStatistic*), then there's a good chance that nothing reads 
> DebugType, Name, Desc, Value, Initialized and we might be able to save a 
> little memory by eliminating them.
Good point. I've tried to remove the common base class but we are reading Name 
and Desc at least in 
[`FusionCandidate::reportInvalidCandidate`](https://github.com/llvm/llvm-project/blob/d6e9e99cec95c83293c68d3b30534e34f53a1923/llvm/lib/Transforms/Scalar/LoopFuse.cpp#L339-L342)
 and 
[`reportLoopFusion`](https://github.com/llvm/llvm-project/blob/d6e9e99cec95c83293c68d3b30534e34f53a1923/llvm/lib/Transforms/Scalar/LoopFuse.cpp#L1326-L1331).
 So I've made `StatisticBase` to store only DebugType, Name, Desc and moved 
Value and Initialized to `TrackingStatistic`. It saves a little bit of memory 
and makes `NoopStatistic::getValue()` cheaper as we don't touch atomic.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D68252/new/

https://reviews.llvm.org/D68252



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to