We currently benchmark Schnorr signature verification only in the context of block validation (ConectBlock* benchmarks), but not individually for single inputs [1]. This PR adds a script verification benchmark for P2TR key path spends accordingly, by generalizing the already existing one for P2WPKH spends.
This should make it easier to quantify potential performance improvements like e.g. https://github.com/bitcoin-core/secp256k1/pull/1777, which allows to plug in our HW-optimized SHA256 functions to be used in libsecp256k1 (see the linked example commit https://github.com/furszy/bitcoin-core/commit/f68bef06d95a589859f98fc898dd80ab2e35eb39). IIRC from last CoreDev, the main speedup from this is expected for ECDSA signing though (as this involves quite a lot of hashing), but it still makes sense to have verification benchmarks available for both signature types as well.
(An alternative way could be to add benchmarks for the signing/verifying member functions CKey::Sign{,Schnorr}, CPubKey::Verify and XOnlyPubKey::VerifySchnorr directly, if we prefer that.)
[1] this claim can be practically verified by putting an assert(false); into XOnlyPubKey::VerifySchnorr: the three benchmarks crashing are ConnectBlockAllSchnorr, ConnectBlockMixedEcdsaSchnorr and SignTransactionSchnorr (as signing includes verification)