Support devirtualization at least some of virtual calls
Support full devirtualization for types declared in an anonymous namespace, in local scope or when used the final specifier. Also, warnings similar GCC -Wsuggest-final-types and -Wsuggest-final-methods.
GCC 5.1 improve devirtualization for C++ significantly
> The devirtualization pass was significantly improved by adding better support for speculative devirtualization and dynamic type detection. About 50% of virtual calls in Firefox are now speculatively devirtualized during link-time optimization.