crashappsec / libcon4m

Base Compiler and Runtime Support for con4m
Apache License 2.0
0 stars 0 forks source link

Jtv2j/better tracing #43

Closed viega closed 3 weeks ago

viega commented 3 weeks ago

Cleanup items

  1. Added a lot of flexibility to GC tracing controllable by conditional comp.
  2. Cleaned up type API and made it effectively isolate type environments, even though it has a shared store.
  3. Test runner tries test-by-test if there's a crash now.
  4. Changed how GC roots work to not use hatrack dicts or the main allocator; they still are lock-free, but basically an array using FAA and are write-once, read many.
  5. Previously marshal'd tables are now reconstructed each run; will re-marshal them at a later date.
  6. Re-did the box implementation to be more clear.
  7. Found some GC roots I wasn't registering.
  8. Since we have finalizers now, we don't make OpenSSL use our GC; saves us from worrying about whether we have enough viz to track pointers.