HomePhabricator

Merge #13194: Remove template matching and pseudo opcodes

Description

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

Details

Provenance
Wladimir J. van der Laan <laanwj@gmail.com>Authored on May 30 2018, 14:13
Mark Lundeberg <36528214+markblundeberg@users.noreply.github.com>Committed on Aug 9 2019, 02:40
markblundebergPushed on Aug 9 2019, 02:40
Reviewer
Restricted Project
Differential Revision
D3810: Merge #13194: Remove template matching and pseudo opcodes
Parents
rABC2804a49bfc07: Updated manpages for 0.19.12 release
Branches
Unknown
Tags
Unknown

Event Timeline