We are currently unable to get a stackbacktrace using libunwind
When running the frysk.rt.tests.TestStackBacktrace test on something that is not x86 you get: 1) testBacktrace(frysk.rt.tests.TestStackBacktrace)java.lang.NullPointerException at frysk.rt.StackCallbacks.accessReg(TestRunner) at lib.unwind.StackTraceCreator.unwind_setup(TestRunner) at lib.unwind.StackTraceCreator.createStackTrace(TestRunner) at frysk.rt.StackFactory.createStackFrame(TestRunner) at frysk.rt.tests.TestStackBacktrace.testBacktrace(TestRunner) at frysk.junit.Runner.<init>(TestRunner) at TestRunner.main(TestRunner) Currently the callbacks are setup through the RegisterX86 class which only hardcodes x86 registers.
Currently libunwind is not using dwarf2 - based remote unwinding, and is instead falling back to using frame pointers - which will not work on anything non-x86. Since binaries are often compiled with -fomit-frame-pointers anyway, this needs to get fixed.