💬 maflcko commented on pull request "util: Add some more Unexpected and Expected methods":
(https://github.com/bitcoin/bitcoin/pull/34032#discussion_r2610168017)
Why? Just seems more code for no reason?
(https://github.com/bitcoin/bitcoin/pull/34032#discussion_r2610168017)
Why? Just seems more code for no reason?
📝 l0rinc opened a pull request: "fuzz: exercise `ComputeMerkleRoot` without `mutated` parameter"
(https://github.com/bitcoin/bitcoin/pull/34050)
The `mutated` parameter in `ComputeMerkleRoot` unlocks a different path that was always exercised in the fuzz test.
Adjusted to be fuzzer to pass `nullptr` as well to make sure that path is also tested: https://github.com/bitcoin/bitcoin/blob/24ed820d4f0d8f7fa2f69e1909c2d98f809d2f94/src/consensus/merkle.cpp#L49-L53
Follow-up to https://github.com/bitcoin/bitcoin/pull/33805#discussion_r2589073735
(https://github.com/bitcoin/bitcoin/pull/34050)
The `mutated` parameter in `ComputeMerkleRoot` unlocks a different path that was always exercised in the fuzz test.
Adjusted to be fuzzer to pass `nullptr` as well to make sure that path is also tested: https://github.com/bitcoin/bitcoin/blob/24ed820d4f0d8f7fa2f69e1909c2d98f809d2f94/src/consensus/merkle.cpp#L49-L53
Follow-up to https://github.com/bitcoin/bitcoin/pull/33805#discussion_r2589073735
💬 l0rinc commented on pull request "merkle: migrate `path` arg to reference and drop unused args":
(https://github.com/bitcoin/bitcoin/pull/33805#discussion_r2610289485)
Thanks, added in https://github.com/bitcoin/bitcoin/pull/34050
(https://github.com/bitcoin/bitcoin/pull/33805#discussion_r2610289485)
Thanks, added in https://github.com/bitcoin/bitcoin/pull/34050
💬 Raimo33 commented on pull request "bench: run `FindByte` across block-sized buffer":
(https://github.com/bitcoin/bitcoin/pull/34046#issuecomment-3641566317)
Code Review ACK 031ee0b22c4ee4f04f66cb8f0be534b404dbe73c
The new benchmark is more realistic
(https://github.com/bitcoin/bitcoin/pull/34046#issuecomment-3641566317)
Code Review ACK 031ee0b22c4ee4f04f66cb8f0be534b404dbe73c
The new benchmark is more realistic
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610315019)
please add braces to multiline loops
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610315019)
please add braces to multiline loops
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610320129)
when can `GetInputWeight` return `nullptr`? can we exercise that path as well?
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610320129)
when can `GetInputWeight` return `nullptr`? can we exercise that path as well?
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610314187)
this is just duplicating the actual implementation, not very useful
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610314187)
this is just duplicating the actual implementation, not very useful
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610343832)
`HasSelectedOrder()` and `GetSelectionPos()` from header are still untested
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610343832)
`HasSelectedOrder()` and `GetSelectionPos()` from header are still untested
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610327468)
Given the `std::optional`'s `operator==` overload, wouldn't this suffice
```suggestion
assert(scripts.first == script);
```
?
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610327468)
Given the `std::optional`'s `operator==` overload, wouldn't this suffice
```suggestion
assert(scripts.first == script);
```
?
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610349656)
doesn't this overwrite the value change by `coin_control.Select`?
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610349656)
doesn't this overwrite the value change by `coin_control.Select`?
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610343108)
`Select` mutates `m_selection_pos` - we could do selection separately
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610343108)
`Select` mutates `m_selection_pos` - we could do selection separately
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610346634)
you could leave these to untangle coverage from context
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610346634)
you could leave these to untangle coverage from context
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610297526)
Please resolve the comment
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610297526)
Please resolve the comment
💬 l0rinc commented on pull request "fuzz: Add tests for `CCoinControl` methods":
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610306247)
`SetScriptWitness` is already void:
```suggestion
coin_control.Select(out_point).SetScriptWitness(script_wit);
```
(https://github.com/bitcoin/bitcoin/pull/34026#discussion_r2610306247)
`SetScriptWitness` is already void:
```suggestion
coin_control.Select(out_point).SetScriptWitness(script_wit);
```
💬 l0rinc commented on pull request "bench: run `FindByte` across block-sized buffer":
(https://github.com/bitcoin/bitcoin/pull/34046#discussion_r2610361286)
Deleted the manual removal, thanks!
(https://github.com/bitcoin/bitcoin/pull/34046#discussion_r2610361286)
Deleted the manual removal, thanks!
💬 maflcko commented on pull request "bench: run `FindByte` across block-sized buffer":
(https://github.com/bitcoin/bitcoin/pull/34046#discussion_r2610422861)
I don't understand this either. There is no obfuscation, so the two are the same either way?
I'd prefer to just keep the `<<` in high level code, unless there is a reason not to.
(https://github.com/bitcoin/bitcoin/pull/34046#discussion_r2610422861)
I don't understand this either. There is no obfuscation, so the two are the same either way?
I'd prefer to just keep the `<<` in high level code, unless there is a reason not to.
💬 l0rinc commented on pull request "streams: replace `std::find` with `memchr` (5x improvement)":
(https://github.com/bitcoin/bitcoin/pull/34044#issuecomment-3641734759)
it doesn't help that you rebase on a Knots base - the first few commits are already merged on Core, please fix that.
(https://github.com/bitcoin/bitcoin/pull/34044#issuecomment-3641734759)
it doesn't help that you rebase on a Knots base - the first few commits are already merged on Core, please fix that.
🤔 maflcko reviewed a pull request: "bench: run `FindByte` across block-sized buffer"
(https://github.com/bitcoin/bitcoin/pull/34046#pullrequestreview-3567263151)
lgtm 464ee9e26f7851ff27c2d18f807ae64c8dd0fc62, but I'd prefer to not use the low-level buffer writing questionable "optimization"
(https://github.com/bitcoin/bitcoin/pull/34046#pullrequestreview-3567263151)
lgtm 464ee9e26f7851ff27c2d18f807ae64c8dd0fc62, but I'd prefer to not use the low-level buffer writing questionable "optimization"
💬 l0rinc commented on pull request "streams: replace `std::find` with `memchr` (5x improvement)":
(https://github.com/bitcoin/bitcoin/pull/34044#discussion_r2610442547)
you could inline hit to the if condition
(https://github.com/bitcoin/bitcoin/pull/34044#discussion_r2610442547)
you could inline hit to the if condition
💬 l0rinc commented on pull request "streams: replace `std::find` with `memchr` (5x improvement)":
(https://github.com/bitcoin/bitcoin/pull/34044#discussion_r2610445121)
why extract `end` if we're getting rid of it in the next commit?
(https://github.com/bitcoin/bitcoin/pull/34044#discussion_r2610445121)
why extract `end` if we're getting rid of it in the next commit?