mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2026-10-24 00:49:00 +03:00
If we are using libffi to trampoline then there is opportunity to cache the ffi_call_plan introduced in newer libffi releases. A rather contrived test introduced in the previous commit includes a basic performance test that can compare between versions. For my system, the average call time dropped from 200ns/call to 145ns/call for cached GClosure. Since the previous version did no caching, the uncached GClosure use was also just slightly slower around 205ns/call. For the cached form (since it can reuse a global plan cache via GMutex) it drops to 180ns/call. So that is 27.5% savings and a 10% savings in runtime duration. Closes: #4002 Co-authored-by: Philip Withnall <pwithnall@gnome.org>
15 lines
714 B
Plaintext
15 lines
714 B
Plaintext
[wrap-file]
|
|
directory = libffi-3.7.1
|
|
source_url = https://github.com/libffi/libffi/releases/download/v3.7.1/libffi-3.7.1.tar.gz
|
|
source_filename = libffi-3.7.1.tar.gz
|
|
source_hash = d5e9a6638ddbd2513ddb54518eb67e4bbe6fa707bcc01c10f6212f0a088d819d
|
|
source_fallback_url = https://wrapdb.mesonbuild.com/v2/libffi_3.7.1-1/get_source/libffi-3.7.1.tar.gz
|
|
patch_filename = libffi_3.7.1-1_patch.zip
|
|
patch_url = https://wrapdb.mesonbuild.com/v2/libffi_3.7.1-1/get_patch
|
|
patch_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/libffi_3.7.1-1/libffi_3.7.1-1_patch.zip
|
|
patch_hash = 7c5397bbfd026a5b9aac87e8aea58a6098329b4ee13243e3a9c8f49978418fac
|
|
wrapdb_version = 3.7.1-1
|
|
|
|
[provide]
|
|
dependency_names = libffi
|