]> granicus.if.org Git - clang/commit
Begin the refactoring of how builtin operators are added to the overload
authorChandler Carruth <chandlerc@gmail.com>
Sun, 12 Dec 2010 08:11:30 +0000 (08:11 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Sun, 12 Dec 2010 08:11:30 +0000 (08:11 +0000)
commit3a0f3eff30dfa39ca8f78f98070b888dc8c67e54
treeb677a4a7745055a1a418b645880590f0783e8130
parentc78f684c8e300414956bc1566957a17a48da2fc8
Begin the refactoring of how builtin operators are added to the overload
candidate set. This breaks apart a huge switch + goto system into distinct
methods on a class. It also places the current mess of tables and other static
state used in the process within that class.

This is still a work in progress. I did a few simplifications that jumped out
at me as I went, but I plan to iterate on this a bit before it's truly clean.
However, this is easily the most invasive chunk. I benchmarked it on
all-std-headers.cpp and an internal testcase that has a major hotspot in
overload resolution and saw no real performance impact.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@121623 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaOverload.cpp