Displaying 5 results from an estimated 5 matches for "calculatesehstatenumb".
2018 Mar 20
0
lld/lto/win32 crash on DIE code
This one triggers an assertion in calculateSEHStateNumbers due to weird catchpad instruction
in @_island_debug_invoke and many other functions. The code expects either pointer to a filter
function or null in first operand, while you're passing pointer to structure:
catchpad within %80 [{i8*, i8*}* anon..., ...]
____________________________________...
2018 Mar 20
2
lld/lto/win32 crash on DIE code
Op 16-3-2018 om 20:16 schreef Evgeny Leviant:
> Hello Carlo,
>
> I tried your reproducer and faced different problem from one you described
> (I'm using MacOS Sierra and lld built from trunk on Mar, 15). The crash happens
> when SelectionDAGBuilder::lowerInvokable tries to access EH info of this function:
>
>
2018 Mar 20
2
lld/lto/win32 crash on DIE code
Op 20-3-2018 om 12:40 schreef Evgeny Leviant:
> This one triggers an assertion in calculateSEHStateNumbers due to weird catchpad instruction
> in @_island_debug_invoke and many other functions. The code expects either pointer to a filter
> function or null in first operand, while you're passing pointer to structure:
>
> catchpad within %80 [{i8*, i8*}* anon..., ...]
>
> ______...
2018 Mar 21
0
lld/lto/win32 crash on DIE code
..._________________________________
От: Carlo Kok <ck at remobjects.com>
Отправлено: 20 марта 2018 г. 17:50
Кому: Evgeny Leviant; llvm-dev at lists.llvm.org
Тема: Re: [llvm-dev] lld/lto/win32 crash on DIE code
Op 20-3-2018 om 12:40 schreef Evgeny Leviant:
> This one triggers an assertion in calculateSEHStateNumbers due to weird catchpad instruction
> in @_island_debug_invoke and many other functions. The code expects either pointer to a filter
> function or null in first operand, while you're passing pointer to structure:
>
> catchpad within %80 [{i8*, i8*}* anon..., ...]
>
> ________...
2020 Apr 01
2
[RFC] [Windows SEH] Local_Unwind (Jumping out of a _finally) and -EHa (Hardware Exception Handling)
...andler (Catchpad) is created to dispatch local-unwind for each target associated with this Try statement. This handler block will be used as the target-address for MSVC's _local_unwind() runtime. See CodeGenFunction::pushSEHLocalUnwind() and CodeGenFunction::popSEHLocalUnwind().
Finally in LLVM calculateSEHStateNumbers() (see the change in WinEHPrepare.cpp), all _IsLocalUnwind**() filters in pseudo CatchSwitches are discarded and all LU dispatch handlers are assigned to its parent scope's EH state.
HARDWARE EXCEPTION HANDLING (-EHA)
The rules for C code:
For C-code, one way (MSVC approach) to achieve SEH -...