Merge: 7ee6c434c 40a0f9fb9
Author: Wladimir J. van der Laan <laanwj@gmail.com>
Date: Mon Aug 21 18:25:42 2017 +0200
Merge #10809: optim: mark a few classes final
40a0f9f Enable devirtualization opportunities by using the final specifier (C++11) (practicalswift)
9a1675e optim: mark a few classes final (Cory Fields)
Pull request description:
Using gcc's ```-Wsuggest-final-types``` and lto, I identified a few easy devirtualization wins:
> wallet/wallet.h:651:7: warning: Declaring type 'struct CWallet' final would enable devirtualization of 26 calls [-Wsuggest-final-types]
>coins.h:201:7: warning: Declaring type 'struct CCoinsViewCache' final would enable devirtualization of 13 calls [-Wsuggest-final-types]
>txdb.h:67:7: warning: Declaring type 'struct CCoinsViewDB' final would enable devirtualization of 5 calls [-Wsuggest-final-types]
>zmq/zmqnotificationinterface.h:16:7: warning: Declaring type 'struct CZMQNotificationInterface' final would enable devirtualization of 4 calls [-Wsuggest-final-types]
>httpserver.cpp:42:7: warning: Declaring type 'struct HTTPWorkItem' final would enable devirtualization of 2 calls [-Wsuggest-final-types]
Tree-SHA512: 2a825fd27121ccabaacff5cde2fc8a50d1b4cc846374606caa2a71b0cd8fcb0d3c9b5b3fd342d944998610e2168048601278f8a3709cc515191a0bb2d98ba782Description
Description
Revisions and Commits
Revisions and Commits
| rABC Bitcoin ABC | |||
| D1016 | rABC93410ea50399 optim: mark a few classes final | ||
| rSTAGING Bitcoin ABC staging | |||
| D1016 | rSTAGING93410ea50399 optim: mark a few classes final | ||
| Status | Assigned | Task | ||
|---|---|---|---|---|
| Open | None | T126 Backports from Bitcoin Core | ||
| Resolved | matiu | T171 Backport core PR 10809: optim: mark a few classes final |