llvm.org GIT mirror llvm / 2477102
Remove some not-really-correct wording. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140600 91177308-0d34-0410-b5e6-96231b3b80d8 Bill Wendling 8 years ago
1 changed file(s) with 1 addition(s) and 6 deletion(s). Raw diff Collapse all Expand all
260260 and filter clauses. The exception is tested against the clauses
261261 sequentially from first to last. The selector value is a positive number if
262262 the exception matched a type info, a negative number if it matched a filter,
263 and zero if it matched to a cleanup. If nothing is matched, the behavior of
263 and zero if it matched a cleanup. If nothing is matched, the behavior of
264264 the program is undefined. If a type info matched,
265265 then the selector value is the index of the type info in the exception table,
266266 which can be obtained using the
274274 llvm.eh.typeid.for intrinsic to
275275 determine the index for a given type info. If the catch fails to match the
276276 selector then control is passed on to the next catch.


Note: Since the landing pad will not be used if there is no match in

279 the list of type info on the call to the landingpad instruction,
280 then neither the last catch nor catch all need to perform the check
281 against the selector.


Finally, the entry and exit of catch code is bracketed with calls to

284279 __cxa_begin_catch and __cxa_end_catch.