Merge #13194: Remove template matching and pseudo opcodes
Summary:
PR13194 backport https://github.com/bitcoin/bitcoin/pull/13194/files
c814e2e7e81fd01fcb07f4a28435741bdc463801 Remove template matching and pseudo opcodes (Pieter Wuille)
Pull request description:
The current code contains a rather complex script template matching engine, which is only used for 3 particular script types (P2PK, P2PKH, multisig). The first two of these are trivial to match for otherwise, and a specialized matcher for multisig is both more compact and more efficient than a generic one. The goal is being more flexible, so that for example larger standard multisigs inside SegWit outputs are easier to implement. As a side-effect, it also gets rid of the pseudo opcodes hack.
Depends on D3808
Test Plan: make check
Reviewers: jasonbcox, Fabien, #bitcoin_abc, deadalnix, nakihito
Reviewed By: jasonbcox, #bitcoin_abc, nakihito
Differential Revision: https://reviews.bitcoinabc.org/D3810