mirror of
https://github.com/Zygo/bees.git
synced 2025-05-17 21:35:45 +02:00
fs: make operator<() for search ioctl inline
Perf blames this operator for >1% of instructions with -O2, and 70% of instructions without -O2. Let the compiler inline the function. Signed-off-by: Zygo Blaxell <bees@furryterror.org>
This commit is contained in:
parent
187d12fc25
commit
459071597b
@ -169,6 +169,12 @@ namespace crucible {
|
||||
bool operator<(const BtrfsIoctlSearchHeader &that) const;
|
||||
};
|
||||
|
||||
// Perf blames this function for a few percent overhead; move it here so it can be inline
|
||||
inline bool BtrfsIoctlSearchHeader::operator<(const BtrfsIoctlSearchHeader &that) const
|
||||
{
|
||||
return tie(objectid, type, offset, len, transid) < tie(that.objectid, that.type, that.offset, that.len, that.transid);
|
||||
}
|
||||
|
||||
ostream & operator<<(ostream &os, const btrfs_ioctl_search_header &hdr);
|
||||
ostream & operator<<(ostream &os, const BtrfsIoctlSearchHeader &hdr);
|
||||
|
||||
|
@ -756,12 +756,6 @@ namespace crucible {
|
||||
return offset + len;
|
||||
}
|
||||
|
||||
bool
|
||||
BtrfsIoctlSearchHeader::operator<(const BtrfsIoctlSearchHeader &that) const
|
||||
{
|
||||
return tie(objectid, type, offset, len, transid) < tie(that.objectid, that.type, that.offset, that.len, that.transid);
|
||||
}
|
||||
|
||||
bool
|
||||
BtrfsIoctlSearchKey::do_ioctl_nothrow(int fd)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user