postgrespro / pg_wait_sampling

Sampling based statistics of wait events
Other
147 stars 35 forks source link

Inline functions in compat.c are not inlined #45

Closed shinderuk closed 2 years ago

shinderuk commented 2 years ago

They probably should be in a header.

On Linux:

$ objdump -d pg_wait_sampling.so | grep -i 'call.*compat'
    3e4c:   e8 8f f7 ff ff          callq  35e0 <shm_mq_detach_compat@plt>
    47b4:   e8 97 ef ff ff          callq  3750 <CreateTemplateTupleDescCompat@plt>
    4ca4:   e8 37 e9 ff ff          callq  35e0 <shm_mq_detach_compat@plt>
    4f01:   e8 4a e8 ff ff          callq  3750 <CreateTemplateTupleDescCompat@plt>
    5282:   e8 c9 e4 ff ff          callq  3750 <CreateTemplateTupleDescCompat@plt>
    5b52:   e8 89 da ff ff          callq  35e0 <shm_mq_detach_compat@plt>
    5c51:   e8 0a da ff ff          callq  3660 <shm_mq_send_compat@plt>
    5caa:   e8 b1 d9 ff ff          callq  3660 <shm_mq_send_compat@plt>
    5d17:   e8 44 d9 ff ff          callq  3660 <shm_mq_send_compat@plt>
    5d48:   e8 13 d9 ff ff          callq  3660 <shm_mq_send_compat@plt>

On macOS:

% otool -tV pg_wait_sampling.so | grep -i 'call.*compat'
0000000000001a72    callq   _CreateTemplateTupleDescCompat
0000000000001eab    callq   _CreateTemplateTupleDescCompat
000000000000231b    callq   _shm_mq_detach_compat
00000000000024fd    callq   _CreateTemplateTupleDescCompat
0000000000002778    callq   _shm_mq_detach_compat
0000000000002a5b    callq   _shm_mq_detach_compat
0000000000002f74    callq   _shm_mq_send_compat
00000000000030a9    callq   _shm_mq_send_compat
0000000000003123    callq   _shm_mq_send_compat
0000000000003188    callq   _shm_mq_send_compat