summaryrefslogtreecommitdiff
path: root/apr.dsw
diff options
context:
space:
mode:
authorjailletc36 <jailletc36@13f79535-47bb-0310-9956-ffa450edef68>2023-02-19 09:15:23 +0000
committerjailletc36 <jailletc36@13f79535-47bb-0310-9956-ffa450edef68>2023-02-19 09:15:23 +0000
commit971f673a5b240642a26a41a563fc0a7654fdcba1 (patch)
tree46799e4beb84492cfb1b9e8b56fdec6c3bc8a99e /apr.dsw
parent22f1ccadfd2f61180da4bc62e1332d1c42381b3b (diff)
downloadlibapr-971f673a5b240642a26a41a563fc0a7654fdcba1.tar.gz
Re-order the fields of 'struct apr_finfo_t' to avoid a hole and some padding.
On x86_64, this shrinks the size of the struct from 120 to 112 bytes. Before the patch, pahole states that: struct apr_finfo_t { apr_pool_t * pool; /* 0 8 */ apr_int32_t valid; /* 8 4 */ apr_fileperms_t protection; /* 12 4 */ apr_filetype_e filetype; /* 16 4 */ apr_uid_t user; /* 20 4 */ apr_gid_t group; /* 24 4 */ /* XXX 4 bytes hole, try to pack */ apr_ino_t inode; /* 32 8 */ apr_dev_t device; /* 40 8 */ apr_int32_t nlink; /* 48 4 */ /* XXX 4 bytes hole, try to pack */ apr_off_t size; /* 56 8 */ /* --- cacheline 1 boundary (64 bytes) --- */ apr_off_t csize; /* 64 8 */ apr_time_t atime; /* 72 8 */ apr_time_t mtime; /* 80 8 */ apr_time_t ctime; /* 88 8 */ const char * fname; /* 96 8 */ const char * name; /* 104 8 */ struct apr_file_t * filehand; /* 112 8 */ /* size: 120, cachelines: 2, members: 17 */ /* sum members: 112, holes: 2, sum holes: 8 */ /* last cacheline: 56 bytes */ }; git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1907750 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'apr.dsw')
0 files changed, 0 insertions, 0 deletions