Page MenuHomePhabricator

[SelectionDAG][RFC] Allow the user to specify a memeq function (v4).

Authored by courbet on Jan 8 2019, 6:22 AM.



Right now, when we encounter a string equality check,
e.g. if (memcmp(a, b, s) == 0), we try to expand to a comparison if s is a
small compile-time constant, and fall back on calling memcmp() else.

This is sub-optimal because memcmp has to compute much more than

This patch uses bcmp() on platforms that support it.

This function will be called instead of memcmp() when the result of the memcmp
call is only used for equality comparison.

bcmp can be made much more efficient than memcmp because equality
compare is trivially parallel while lexicographic ordering has a chain

Diff Detail

Event Timeline

courbet created this revision.Jan 8 2019, 6:22 AM
courbet abandoned this revision.Mar 12 2019, 12:26 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 12 2019, 12:26 AM
Herald added a subscriber: jdoerfert. · View Herald Transcript