diff options
| author | Aaron Patterson <tenderlove@ruby-lang.org> | 2024-06-13 10:02:32 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-13 10:02:32 -0700 |
| commit | a3eb5e5c70eaee12964cdd807b8f19950003141f (patch) | |
| tree | 1910b32ff6780129624b2a2b2cc9646cb05853da /include | |
| parent | aa957546fa553abadd888ba18675c099df1178e0 (diff) | |
Don't call `Warning.warn` unless the category is enabled (#10981)
Don't call `Warning.warn` unless the category is enabled
The warning category should be enabled if we want to call
`Warning.warn`.
This commit speeds up the following benchmark:
```ruby
eval "def test; " +
1000.times.map { "' '.chomp!" }.join(";") + "; end"
def run_benchmark count
i = 0
while i < count
start = Process.clock_gettime(Process::CLOCK_MONOTONIC)
yield
ms = Process.clock_gettime(Process::CLOCK_MONOTONIC) - start
puts "itr ##{i}: #{(ms * 1000).to_i}ms"
i += 1
end
end
run_benchmark(25) do
250.times do
test
end
end
```
On `master` this runs at about 92ms per iteration. With this patch, it
is 7ms per iteration.
[Bug #20573]
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
