CodeGen: Tune the SmallVector size in LiveRange
authorJustin Bogner <mail@justinbogner.com>
Fri, 4 Mar 2016 00:58:39 +0000 (00:58 +0000)
committerJustin Bogner <mail@justinbogner.com>
Fri, 4 Mar 2016 00:58:39 +0000 (00:58 +0000)
commit87feb4e64e2ea574df3a45ba057d9fc506f0c8f7
tree59067bff02ee8d7db892fab71fae83b92121360c
parent4362a994d20a33f3220e5cf107b5798769d6d5d4
CodeGen: Tune the SmallVector size in LiveRange

The vast majority of LiveRanges (ie, 4/5) have exactly 1 segment and 1
value number, and a good chunk of the rest have 2 of each, so
allocating space for 4 is wasteful. This is especially noticeable when
dealing with a very large number of vregs, and I have an internal case
where dropping this to 2 shaves over 5% off of peak memory when
compiling a particularly large function.

llvm-svn: 262681
llvm/include/llvm/CodeGen/LiveInterval.h