IR: Add Value::sortUseList()
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Thu, 24 Jul 2014 00:53:19 +0000 (00:53 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Thu, 24 Jul 2014 00:53:19 +0000 (00:53 +0000)
commit1698de2879bb543a805902f87d143a6c8c86b17c
treeb6c0131f2d386c2fecf18e04dcd0f73195e078f5
parent5149bac8b4cbb404618bcadb84f76d9a2cd3a406
IR: Add Value::sortUseList()

Add `Value::sortUseList()`, templated on the comparison function to use.

The sort is an iterative merge sort that uses a binomial vector of
already-merged lists to limit the size overhead to `O(1)`.

This is part of PR5680.

llvm-svn: 213824
llvm/include/llvm/IR/Value.h
llvm/unittests/IR/CMakeLists.txt
llvm/unittests/IR/UseTest.cpp [new file with mode: 0644]