Live data from Hacker News

Viewing profile — mikemike

mikemike

HN member
Joined
Sun, May 31, 2009, 10:25 PM UTC
HN karma
493
Public activity
66 items

About mikemike

http://luajit.org/

Recent public activity

  1. comment
    Comment #48593375

    I'm not sure one can infer anything from a single failed Mozilla project. 'Real-world' JavaScript is a challenge for any compiler, no matter the underlying technology. The technica…

  2. comment
    Comment #48591022

    Trace compilation is NOT a dead end. LuaJIT works just fine. On big programs. On hundreds of millions of servers and devices. I find it deeply saddening that even scholars keep rep…

  3. comment
    Comment #47850496

    To illustrate this, here's the contorted Lua code from https://news.ycombinator.com/item?id=11327201 local t = setmetatable({}, { __index = pcall, __newindex = rawset, __call = fun…

  4. comment
    Comment #47671786

    As the open source author in question, I'd politely ask everyone to not draw overly-generic conclusions from an ancient discussion in some third-party forum, which links to a (now)…

  5. comment
    Comment #42129318

    A good read if you want to learn (more than you ever wanted) about stack frame unwinding in conjunction with a JIT compiler. The only correction I have: LuaJIT _does_ have 64 bit i…

  6. story
  7. comment
    Comment #37281329

    This is conjecture. OTOH I measured while I designed the LuaJIT IR. 1. An array index is just as suitable as a pointer for dereferencing. 2. What matters is how many dereferences a…

  8. comment
    Comment #33095373

    I had already changed the title after your reply. The objection is about the naming, which implies an invention claim without further explanation. It's not about the code.

  9. comment
    Comment #33094484

    You may want to clarify that in the GitHub repo, too. See my issue there. If you want to go the didactic route, then consider documenting the improvements over the naive implementa…

  10. comment
    Comment #33093358

    Uh? This *is* the LuaJIT register allocator. Period. Code published 2009. Description published here: https://lua-users.org/lists/lua-l/2009-11/msg00089.html (ignore the TLS cert e…

  11. comment
    Comment #30620445

    That's what I'm wondering, too, right now. It's trivial to DoS-hang redis with the script feature (and SCRIPT KILL won't help). And I found at least 3 DoS-crash, because it hasn't …

  12. comment
    Comment #30618480

    Yes, of course it's vulnerable, verified with Docker debian:sid. That was my first reaction when I read this, but I wanted to verify it first. You beat me with this post. Since you…

  13. comment
    Comment #27379555

    One year ago I hardened LuaJIT's VM against these kind of attacks. Since then, there has been a constant influx of complaints and issues filed. All bitterly complaining their code,…

  14. comment
    Comment #14460027

    Actually, LuaJIT 1.x is just that: a translator from a register-based bytecode to machine code using templates (small assembler snippets) with fixed register assignment. There's on…

  15. comment
    Comment #13097518

    Notable recent use of DynASM: Zend is using it to write a JIT compiler for PHP 8.0. http://externals.io/thread/268#email-12706-body

  16. comment
    Comment #12579622

    No. You DO need a good understanding of a computer language and of JIT compilers to understand the code base for any just-in-time compiler for that computer language. LuaJIT is not…

  17. comment
    Comment #12579501

    This is a wrong perception. There is/was no shortage of sponsorships. I had to turn down most of these offers, due to time constraints.

  18. comment
    Comment #11327201

    Just in case, anyone has somehow gotten to the conclusion that Lua's semantics are 'simple', they should closely inspect this example and try to figure out through which contortion…

  19. comment
    Comment #10033174

    By definition, a trace doesn't have internal branches. The solution is to use Hyperblock Scheduling. This is an extra pass that merges multiple traces, e.g. the described root trac…

  20. comment
    Comment #9399206

    Thank you for taking the time to perform these tests! One thing that people advocating FDO often forget: this is statically tuning the code for a specific use case. Which is not wh…

  21. comment
    Comment #6843405

    Oh, great! Thank you very much!

  22. comment
    Comment #6821001

    Oh, well ... pasting my standard rant on this: This is a common misinterpretation of the Dynamo paper: they compiled their C code at the lowest optimization level and then ran the …

  23. comment
    Comment #6820215

    To give credit, where credit is due: the original work on trace compilation is much, much older. The paper you cited is an application. The fundamental papers to hunt for are Josep…

  24. comment
    Comment #6819832

    Err, the title of this item is a bit misleading, although it's the subject of the posting on the mailing list. One cannot explain it all in a single post. I just answered some spec…

  25. comment
    Comment #6370497

    Most of the sponsors who wished to remain anonymous didn't want their competition to know they use LuaJIT. :-)