Sean T Allen
Sean T Allen
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
Interesting so this might be aarch64 + linux issue.
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
@ergl can you try on m1 with the host.cc change removed? so that debug is doing no optimization?
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
@sylvanc says he is believes that yes, the current usage of catch all code is probably wrong for arm exceptions. but when i told him that aarch64 docs say that...
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
@jemc same boom
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
Interestingly, this also segfaults because of the message send that originates in the `else` of the `try`: ```pony actor Main let _out: OutStream new create(env: Env) => _out = env.out...
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
I discussed this with @sylvanc. He took a look at the pony_try llvm ir that we use and said it looked correct and the personality function looked correct as well....
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
I've found a difference in our personality function from the c++ abi. When we set registers, we do not do what the C++ does: ```c _Unwind_SetGR(context, __builtin_eh_return_data_regno(1), static_cast(results.ttypeIndex)); ``` It...
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
So we get the ttypeIndex from: ``` /// Read a sleb128 encoded value and advance pointer /// See Variable Length Data Appendix C in: /// @link http://dwarfstd.org/Dwarf4.pdf @unlink /// @param...
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
I changed this to "triggers release" as this is actually incorrect exception handling on aarch64.
Segmentation fault caused by likely LLVM bug that results in incorrect exception handling on aarch64
I talked through this with Sylvan and we came to the conclusion that this is a probably a bug in LLVM like I initially thought. In particular a bug in...