diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2012-05-03 23:49:05 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2012-05-03 23:49:05 +0000 |
commit | d964d6380945e0505b623050fe6a3f428008fc2a (patch) | |
tree | f83c63205191deb74ca2f4f0acd6fa501333f390 /lib/CodeGen/CodeGenModule.cpp | |
parent | 927a57cb8fb4134dec68997a476d84a15b29f9a8 (diff) |
Fix non-deterministic iteration order when walking the specializations
of templates by using the newly introduce FoldingSetVector. This
preserves insertion order for all iteration of specializations.
I've also included a somewhat terrifying testcase that rapidly builds up
a large number of functions. This is enough that any system with ASLR
will have non-deterministic debug information generated for the test
case without the fix here as the debug information is generated in part
by walking these specializations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156133 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions