1
0
mirror of https://github.com/pgbackrest/pgbackrest.git synced 2024-12-12 10:04:14 +02:00
pgbackrest/test
David Steele fbff29957c
Inline strPtr() to increase profiling accuracy.
strPtr() is called more than any other function and during profiling (with or without optimization) it can end up using a disproportionate amount of the total runtime. Even though it is fast, the profiler has a minimum resolution for each function call so strPtr() will often end up towards the top of the list even though the real runtime is quite small.

Instead, inline strPtr() and indicate to gcc that it should be inlined even for non-optimized builds, since that's how profiles are usually generated.

To make strPtr() smaller require "this" to be non-NULL and add another function, strPtrNull(), to deal with the few cases where we need NULL handling.

As a bonus this makes the executable about 1% smaller even when compared to a prior optimized build which would inline some percentage of strPtr() calls.
2020-06-18 13:13:55 -04:00
..
certificate New test containers with static test certificates. 2018-11-21 18:13:37 -05:00
code-count v2.27: Expiration Improvements and Compression Drivers 2020-05-26 08:11:50 -04:00
data Automate generation of WAL and pg_control test files. 2017-11-18 20:02:54 -05:00
expect Use PostgreSQL instead of postmaster where appropriate. 2020-06-17 15:14:59 -04:00
lib/pgBackRestTest Use PostgreSQL instead of postmaster where appropriate. 2020-06-17 15:14:59 -04:00
src Inline strPtr() to increase profiling accuracy. 2020-06-18 13:13:55 -04:00
.gitignore Move coverage results to test/result. 2020-03-14 15:29:42 -04:00
container.yaml PostgreSQL 13 beta1 support. 2020-05-21 13:46:16 -04:00
define.yaml Add local MD5 implementation so S3 works when FIPS is enabled. 2020-05-20 14:56:13 -04:00
test.pl Add --no-coverage-report to test.pl to disable report generation. 2020-06-17 15:07:30 -04:00
travis.pl Add --no-coverage-report to test.pl to disable report generation. 2020-06-17 15:07:30 -04:00
Vagrantfile Add jq to tools installed by Vagrantfile. 2020-05-14 18:45:23 -04:00