diff options
| author | Craig Topper <craig.topper@intel.com> | 2019-01-07 20:13:45 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2019-01-07 20:13:45 +0000 |
| commit | 81fe1fbf4abd00b24e078a80cb15a2d2c1343f11 (patch) | |
| tree | 84297116f9b8df9e42312447589357fa280f86fd /clang/lib/CodeGen/CGExprConstant.cpp | |
| parent | 33c9088783b2474ae28e9a20b31d78710421fcb4 (diff) | |
| download | bcm5719-llvm-81fe1fbf4abd00b24e078a80cb15a2d2c1343f11.tar.gz bcm5719-llvm-81fe1fbf4abd00b24e078a80cb15a2d2c1343f11.zip | |
[X86][AutoUpgrade] Make some tweaks to reduce the number of nested if/else in the intrinsic upgrade code to avoid an MSVC compiler limit.
MSVC has a nesting limit of around 110-130. An if/else if/else if counts against this next level. The autoupgrade code consists a long chain of these checking matches against strings.
This commit moves some code to a helper function to move out a large if/else chain that was inside of one of the blocks into a separate function. There are more of these we could move or we could change some to lookup tables.
I've also merged together a few similar blocks in the outer chain. This should buy us some margin for a little bit.
llvm-svn: 350564
Diffstat (limited to 'clang/lib/CodeGen/CGExprConstant.cpp')
0 files changed, 0 insertions, 0 deletions

