Skip to content

Releases: raptorjit/raptorjit

RaptorJIT-1.0.3

18 Jan 12:06
bfc3b47
Compare
Choose a tag to compare

Added missing pkgconfig file (#220).

RaptorJIT-1.0.2

16 Jan 09:39
f2e3705
Compare
Choose a tag to compare

Fixed dynamic linking error that made libraptorjit.so unusable (#217).

RaptorJIT-1.0.1

12 Jan 07:15
16930c3
Compare
Choose a tag to compare

Minor bugfix release.

  • Fix #207 problem with linking shared object files that are compiled against the Lua C-API.

RaptorJIT-1.0.0

14 Oct 17:15
31d41be
Compare
Choose a tag to compare

RaptorJIT 1.0 is released!

Woohoo! You little ripper! Whacko the diddleo!

This has been a long and gradual development process. Much of the activity played out downstream in various Snabb application repos and forums. Thanks for staying tuned :).

Credit for this release must go to:

  • The LuaJIT upstream community for developing such a fantastic JIT compiler and and keeping a steady stream of fixes flowing.
  • The people who have contributed ideas, suggestions, testing, or code including @agladysh @alexandergall @CapsAdmin @corsix @darius @dpino @eugeneia @fsfod @igelhaus @javierguerragiraldez @justincormack @mejedi @pygy @raj2569 @szbnwer @takikawa @wingo. Thanks folks! (Sorry for all the names I missed!)
  • The NLnet Foundation for supporting RaptorJIT development with a significant grant towards development of the release 1.0. NLnet have also indirectly supported RaptorJIT with grants to several Snabb projects that have been early RaptorJIT adopters and testers. Thank you NLnet!
  • Everybody who decides to build a new application using RaptorJIT. Especially when the alternative is C/C++. Thank you and welcome to the community in advance :).

I am especially happy that I can now start working on the post-1.0 features with a clear conscience ;-)

Release notes

The major changes in RaptorJIT 1.0 compared with LuaJIT 2.1 are:

New features

  • Studio interactive diagnostics support (#179).
  • Add comprehensive binary auditlog (#63 #64 #81).
  • Add VMProfile sampling profiler (#66 #124 #140 #146 #147 #175 #176).
  • Add debug information to map mcode back to IR code (#98).
  • Add debug information for the declared name of each function prototype (#168).
  • Add jit.tracebarrier() primitive (#116).
  • Add log of recorded bytecodes to jit_State (#132).
  • Make jit.flush() clear bytecode blacklistings (#134).

New optimizations

  • Optimize instruction selection to avoid "slow LEA" (#55)
  • Support JIT compilation of non-power-of-2 FFI pointer-difference arithmetic (#86)
  • Reduce the incidence of "blacklisting" with revised JIT heuristics (#101)
  • Support JIT of inline calls to blacklisted functions (IFUNC/IFUNCV) (#120)
  • Optimize string-interning by removing a harmfully obsolete optimization (#150)

Changes to ease maintenance

  • Continuous Integration testing (#6 #14 #47 #52 #192).
  • Performance tests (#7 #59).
  • Remove many build options, platforms, architectures (#5 #10 #19 #33 #34 #43 #44 #45 #69).
  • Remove introspecton APIs (#9 #35 #36).
  • Replace minilua with LuaJIT bootstrap (#28 #90).
  • Make GCproto.lineinfo representation more uniform (#127 #144).
  • Statically allocate bounded-size JIT structures (#131).

Administative changes

  • Adopt Apache license (#3 #16).
  • Adopt Code of Conduct (#4).

RaptorJIT-1.0.0-beta1

09 Oct 17:06
d44450e
Compare
Choose a tag to compare

First beta release of RaptorJIT 1.0.0.

RaptorJIT 1.0.0-alpha1

06 Aug 08:45
5d7d873
Compare
Choose a tag to compare
Pre-release

This is the first alpha release of RaptorJIT.