mossberg added a comment. Thanks for looking into this @jankratochvil!
> Another problem is that Fedora Linux has executable stack by default and all > programs indicate non-executable stack by PT_GNU_STACK, after fixing the > underscore I was getting: > > (lldb) thread step-out > Process 22294 exited with status = 0 (0x00000000) > (lldb) _ > Is the .section harmless for non-Linux platforms or will it need some > conditional compilation? (#ifdef is not available in .s file) Ok, I guess I was incorrectly assuming the stack should be non-executable by default on all platforms. In this case, let's rewrite the test to have a variable that is actually in the .data section (therefore guaranteed to be non-executable), and pass a pass a pointer to it to `nonstandard_stub`. The core requirement is that the pointer passed to `nonstandard_stub` must simply point to some kind of non-executable memory. I can do this. ================ Comment at: lldb/test/Shell/Unwind/Inputs/thread-step-out-ret-addr-check.s:13 # memory check. +nonstandard_stub: _nonstandard_stub: ---------------- Maybe we can just remove the underscore version, and simply use `nonstandard_stub` if it will work everywhere? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71784/new/ https://reviews.llvm.org/D71784 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits