mute EH failures exposed by LTO (#7267)
authorkchoi <code.kchoi@gmail.com>
Tue, 20 Sep 2016 15:23:11 +0000 (08:23 -0700)
committerJan Vorlicek <janvorli@microsoft.com>
Tue, 20 Sep 2016 15:23:11 +0000 (17:23 +0200)
commit276618176c9101ce475ea2b56115a67c436fa53b
treed92ddcb504b57d90e57b47684ec8137b8fd9b22d
parentb7605f846dbfcebbd60143fa061c4b435f443cbf
mute EH failures exposed by LTO (#7267)

It does this by using a no-inline, no-opt function that takes in
the volatile pointer and performing operation that generates h/w
exception. The function has a runtime check on the volatile pointer to
pretend to throw (but never does), which fools the C++ runtime into
handling the h/w exception.
src/pal/tests/palsuite/exception_handling/pal_sxs/test1/dlltest1.cpp
src/pal/tests/palsuite/exception_handling/pal_sxs/test1/dlltest2.cpp