Skip to content

Tags: arnetheduck/nlvm

Tags

continuous

Toggle continuous's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fixes - can self-compile with ORC! (#74)

These fixes bring ORC to a point where `nlvm` can compile itself -
there's a lot of bloat in the ORC code however, the end result being a
binary that's 15% slower for now.

ORC also breaks allocation elision, likely because the allocation
functions have become too complex - this can perhaps be solved with some
optimization pass reordering and/or selective early inlining, but it
remains to be seen - first, excessive EH from range-checked pointer
arithmetic must be addressed.

* mark several C functions as `nounwind` to reduce EH bloat
* better allocation / deallocation annotations
* fix missing `wasMoved` calls