aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/FileOutputBuffer.cpp
diff options
context:
space:
mode:
authorMarcello Maggioni <hayarms@gmail.com>2017-03-13 21:42:53 +0000
committerMarcello Maggioni <hayarms@gmail.com>2017-03-13 21:42:53 +0000
commit598d89a3f49438e97d835c508b9e5300fb5eb5c0 (patch)
tree2b22e43bc774c8fb937df30d8f14aa608bc59b3c /llvm/lib/Support/FileOutputBuffer.cpp
parentc0d61606662f9407bab8d83cc50f409520b24671 (diff)
downloadllvm-598d89a3f49438e97d835c508b9e5300fb5eb5c0.zip
llvm-598d89a3f49438e97d835c508b9e5300fb5eb5c0.tar.gz
llvm-598d89a3f49438e97d835c508b9e5300fb5eb5c0.tar.bz2
[IPRA] Change algorithm for RegUsageInfoCollector.
The previous algorithm for RegUsageInfoCollector had pretty bad performance on architectures with a lot of registers that alias a lot one another, because we potentially iterate for every register over all the aliasing registers. This costs even more if the function is small and doesn't define a lot of registers. This patch changes the algorithm to one that while iterating over all the registers it will iterate over the aliasing registers only if the register itself is defined. This should be faster based on the assumption that only a subset of the whole LLVM registers set is actually defined in the function. Differential Revision: https://reviews.llvm.org/D30880 llvm-svn: 297673
Diffstat (limited to 'llvm/lib/Support/FileOutputBuffer.cpp')
0 files changed, 0 insertions, 0 deletions