Comments (3)
Any pointers on the lib / API required to do that ?
from hashlink.
libunwind apparently
from hashlink.
Also, quoting @Apprentice-Alchemist
Re HL call stacks: the JIT has a custom unwinder that relies on frame pointers and is mostly platform independent (but this does mean that it can't give very useful stack traces if there's a lot of foreign code involved, since it only knows about functions generated by the JIT)
https://github.com/HaxeFoundation/hashlink/blob/8a63b99eca0825c3a6dc0574e1404ded4c0eaad1/src/module.c#L41-L210HL/C on the other hand uses native apis, but that's only been implemented for Windows.
https://github.com/HaxeFoundation/hashlink/blob/8a63b99eca0825c3a6dc0574e1404ded4c0eaad1/src/hlc_main.c#L58-L94In the short term HL/C can be fixed by implementing the stack trace / symbol resolution stuff for Linux/macOS/etc. using libunwind.
In the long term it may be a good idea to get rid of the custom unwinder in the JIT and switch to libunwind/windows apis to enable more reliable and useful stacktraces when FFI is involved (both libunwind and windows have support for dynamically generated debug information).
from hashlink.
Related Issues (20)
- MbedTLS linking issues with HashLink binaries on Linux HOT 2
- Maps can't use some keys types (Int64, Float, Bool...) since the new Haxe 4.3.0 version HOT 3
- Null exception when casting with inheritance of depth 2+ HOT 1
- 'Can't cast (void (ref<f64>)) to (void ())' error for methods with varargs parameters HOT 3
- Can't compile on arch linux HOT 15
- Evaluate Profile-Guided Optimization (PGO)
- Maps are slow in hashlink HOT 1
- Failed to run on openSUSE HOT 2
- sys.FileStat.ctime is not accurate on Linux/macOS
- NDK version for android?
- `brew install hashlink` fails on Mac M1 HOT 2
- Which and when should I use `cmake` or `make` to build HashLink? HOT 1
- compile fails: "error: unknown FP unit 'sse'" HOT 2
- Linking to libopenal.a causes duplicated symbol error
- Recent change breaks hashlink builds. HOT 3
- macOS libhl.dylib path causes crash HOT 1
- The Hashlink profiler causes an exception in Process.stdout.readLine
- The Hashlink GC can block the main thread if sys.thread.Thread is used HOT 1
- Get live objects from a specific type
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hashlink.