[PATCH] D32432: [Devirtualization] statistic for number of devirtualized calls

Piotr Padlewski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 24 14:55:02 PDT 2017


Prazek added a comment.

It turned out that this is invalid way of collecting this statistic, because we don't count devirtualization that happens without previous inlining like:

  define void @devirtualize(i8* %p) {
  %x = bitcast i8* %p to void()**
  store void()* @foo, void()** %x
  %c = load void()*, void()** %x
  call void %c()
  call void @foo()
  call void %c()
  ret void
  }

The stat probably will need to be collected in GVN instead.


https://reviews.llvm.org/D32432





More information about the llvm-commits mailing list