Closed amdrexu closed 6 months ago
I would suggest copying the original commit message ("Use std::undordered_set instead of std::multiset ...") into your commit message, to explain what this patch does.
I would suggest copying the original commit message ("Use std::undordered_set instead of std::multiset ...") into your commit message, to explain what this patch does.
Am I missing something - the Khronos patch and this one both use a vector and not an unordered_set (although the justification is the same I think?)
I would suggest copying the original commit message ("Use std::undordered_set instead of std::multiset ...") into your commit message, to explain what this patch does.
Am I missing something - the Khronos patch and this one both use a vector and not an unordered_set (although the justification is the same I think?)
That changed during the review. If you look at the description of the PR it has been updated to "Use std::vector instead of std::multiset...". But the PR includes multiple commits, and the first of these actually did use unordered_set.
I would suggest copying the original commit message ("Use std::undordered_set instead of std::multiset ...") into your commit message, to explain what this patch does.
We don't need to use unordered_set
. I remove this line:
template <class T, class B> spv_ostream &operator<<(spv_ostream &O, const std::multiset<T *, B> &V)
It is for LLVM -> SPIR-V translation and we removed all such backward translation previously. I will update the commit message saying we replace multiset
with a vector
.
This is to port the upstream change: https://github.com/KhronosGroup/SPIRV-LLVM-Translator/commit/d56378e. It will greatly speed up the compilation time when there are lots of decorations in SPIR-V using
std::vector
instead ofstd::multiset
with custom comparator.