General

Profile

zack.ref@gmail.com (Zack Deveau)

  • Login: zack.ref@gmail.com
  • Registered on: 05/17/2023
  • Last sign in: 08/31/2024

Issues

open closed Total
Assigned issues 0 1 1
Reported issues 0 3 3

Activity

09/03/2024

05:25 AM Ruby Revision e7cb70be (git): Improve String#rindex performance on OSX
On OSX, String#rindex is slow due to the lack of `memrchr`.
The fallback implementation finds a match by instead doing
a `memcmp` on every single character in the search string
looking for a substring match.
For OSX hosts, this changese...
zack.ref@gmail.com (Zack Deveau)

08/31/2024

06:05 PM Ruby Feature #20709 (Closed): Improve String#rindex performance on OSX
`String#rindex` is much slower on OSX than on Linux hosts. This appears due to the lack of a `memrchr` implementation on OSX. The [fallback solution](https://github.com/ruby/ruby/blob/e69945fc57efba5c8895c21235e109145865952d/string.c#L43... zack.ref@gmail.com (Zack Deveau)

07/11/2024

10:41 PM Ruby Misc #20630: Potential optimizations for NODE_CONST compilation
Ah, I figured I was missing something. Thanks for pointing that out.
We can close this in that case. At least it will serve as a note for anyone else who stumbles into this!
zack.ref@gmail.com (Zack Deveau)
10:21 PM Ruby Misc #20630 (Rejected): Potential optimizations for NODE_CONST compilation
I would like to propose two potential optimizations to the way we currently compile `NODE_CONST` nodes in `compile.c`. I've included commits for each on a related PR.
- PR: https://github.com/ruby/ruby/pull/11154
- `NODE_CONST` compi...
zack.ref@gmail.com (Zack Deveau)

04/20/2024

01:41 AM Ruby Revision 9555a997 (git): ensure ibf_load_setup is only passed String params
In cases where RubyVM::InstructionSequence.load_from_binary() is
passed a param other than a String, we attempt to call the
RSTRING_LENINT macro on it which can cause a segfault.
ex:
```
var_0 = 0
RubyVM::InstructionSequence.load_from_b...
zack.ref@gmail.com (Zack Deveau)

04/14/2024

12:47 AM Ruby Bug #20427 (Closed): Backport: Heap buffer overflow in `Array#sort!` when block modifies target array
**(note: It was decided we should handle this in the public issue tracker in security ticket #2327648)**
The attached patch [has been applied to `master`](https://github.com/ruby/ruby/pull/10522) and should apply to latest `3.3.0` for...
zack.ref@gmail.com (Zack Deveau)

04/13/2024

11:41 PM Ruby Revision c479492a (git): Resize ary when `Array#sort!` block modifies embedded ary
In cases where `rb_ary_sort_bang` is called with a block and
tmp is an embedded array, we need to account for the block
potentially impacting the capacity of ary.
ex:
```
var_0 = (1..70).to_a
var_0.sort! do |var_0_block_129, var_1_block...
zack.ref@gmail.com (Zack Deveau)

08/25/2023

10:27 PM Ruby Revision 480aee43 (git): Add Missing Counters to `rb_debug_counter_type` enum (#8297)
Add missing counters to rb_debug_counter_type enum
On master we have calls to the RB_DEBUG_COUNTER_INC macro
for counters that are not getting defined in the
rb_debug_counter_type enum.
This commit adds those that are missing in order ...
zack.ref@gmail.com (Zack Deveau)

11/30/2022

09:27 PM Ruby Revision 4b9d10b8 (git): struct.c (struct_ivar_get): add conditional for potential Qnil returned by rb_class_superclass
struct_ivar_get recently started using rb_class_superclass to
resolve super instead of RCLASS_SUPER. This change made
Qnil a possible case we need to return from within the
struct_ivar_get for loop.
zack.ref@gmail.com (Zack Deveau)

08/29/2022

03:47 PM Ruby Revision cb15886e (git): Port opt_getinlinecache to the new backend (https://github.com/Shopify/ruby/pull/399)
zack.ref@gmail.com (Zack Deveau)

Also available in: Atom