wrapperutils: Cache resolve() results
At least in the cases that would have called into `resolve_impl`. This eliminates a large CPU bottleneck and is reflected in reduced gnome-shell render times: | Animation | Before (average/peak) | After (average/peak) | | --------------- | --------------------- | -------------------- | | Icon spring | 12ms / 350ms | 7ms / 133ms | | Window overview | 5ms / 10ms | 4ms / 7ms | Closes: GNOME/gjs#302
Status | Job ID | Name | Coverage | ||||||
---|---|---|---|---|---|---|---|---|---|
Source Check | |||||||||
passed |
#572216
|
build_recommended |
00:00:49
|
|
|||||
Test | |||||||||
passed |
#572218
|
build_maximal |
00:01:43
|
|
|||||
passed |
#572219
|
build_minimal |
00:00:51
|
|
|||||
passed |
#572217
|
sanitizer_gcc |
00:00:54
|
|
|||||
Manual | |||||||||
manual |
#572220
allowed to fail
manual
|
codequality |
|
||||||
manual |
#572221
allowed to fail
manual
|
coverage |
|
||||||
manual |
#572223
allowed to fail
manual
|
installed_tests |
|
||||||
manual |
#572222
allowed to fail
manual
|
sanitizer_clang |
|
||||||
manual |
#572224
allowed to fail
manual
|
valgrind |
|
||||||
manual |
#572227
allowed to fail
manual
|
zeal_11 |
|
||||||
manual |
#572225
allowed to fail
manual
|
zeal_2 |
|
||||||
manual |
#572226
allowed to fail
manual
|
zeal_4 |
|
||||||