Work in progress: 181,232 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #6492

J

Jackson Davis

Personal blog · jcdav.isprogrammingsystems

Jackson Davis's personal blog at jcdav.is covers programming and systems. Since 2015, 12 different Hacker News readers have linked it 20 times, most often “SIGSEGV as control flow – How the JVM optimizes your null checks”. The last post was in 2021, but the archive is still widely read.

Visit the blog
20mentions?
12HN people?
2015–2025first – last linked?
Links on Hacker News per year · peak 6 in 2015

Too few sampled comments (3) to say how often HN recommends it.?

Why HN links it

HN readers link Jackson Davis's posts on low-level programming topics, including compiler auto-vectorization, JVM string handling, SIGSEGV used as control flow, and memory and thread safety.

Summarised by Claude from a sample of 3 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Most-linked posts?

  1. SIGSEGV as control flow – How the JVM optimizes your null checks
    5 people · 5 mentions · first linked 2015-11-02
  2. How the JVM compares strings on x86 using pcmpestri
    3 people · 3 mentions · first linked 2016-09-01
  3. Sigsegv as control flow: How the JVM optimizes your null checks
    2 people · 3 mentions · first linked 2025-07-25
  4. Holiday Hacking – Tracking my heart rate while playing Call of Duty
    2 people · 2 mentions · first linked 2021-01-04
  5. More JVM Signal tricks – Thread control via mprotect
    2 people · 2 mentions · first linked 2015-11-09
  6. Allocation on the JVM: Down the rabbit hole
    2 people · 2 mentions · first linked 2016-07-11

What Hacker News says?

  1. I've got your point. Just for the sake of nitpicking: both your actual examples have been solved by compilers automatically. SIMD/AVX: https://code.jsoftware.com/wiki/Guides/AVX JVM generates vectorized string instructions from your simple for cycles - if availabe: http://jcdav.is/2016/09/01/How-the-JVM-compares-your-strings... edit: my second example link is maybe wrong, but anyway, auto-vectorization is a real thi…

    Comment linking /2016/09/01/How-the-JVM-compares-your-strings/

    on “Please do not attempt to simplify this code”
  2. Submitted How the JVM compares strings on x86 using pcmpestri as a story · 239 points

    HN discussion
  3. > a segfault is completely unintentional Usually, but not always! https://jcdav.is/2015/10/06/SIGSEGV-as-control-flow/

    Comment linking /2015/10/06/SIGSEGV-as-control-flow/

    on “There is no memory safety without thread safety”
  4. Submitted How the JVM compares strings on x86 as a story · 142 points

    HN discussion
  5. > Tracking the memory here would slow you down. Meh. A lot of systems use specialized memory pools for such use cases: - allocate memory pages from OS - allocate objects via this pool - release the full pool when done (i.e. just unmap t page, which essentially has no cost at all) If the task at hand is known to have an upper bound of same sized objects, this basically reduces management overhead to maintaining a sin…

    Comment linking /2015/10/06/SIGSEGV-as-control-flow/

    on “A JVM Does That? (2011) [pdf]”
  6. Submitted Allocation on the JVM: Down the rabbit hole as a story · 93 points

    HN discussion
  7. Submitted Holiday Hacking – Tracking my heart rate while playing Call of Duty as a story · 75 points

    HN discussion
  8. Submitted SIGSEGV as control flow – How the JVM optimizes your null checks as a story · 13 points

    HN discussion
  9. Submitted Fun C Micro-optimizations: restrict as a story · 11 points

    HN discussion
  10. Submitted SIGSEGV as control flow – How the JVM optimizes your null checks as a story · 6 points

    HN discussion
  11. Submitted Virtually free – JVM callsite optimization by example as a story · 4 points

    HN discussion
  12. Submitted SIGSEGV as control flow – How the JVM optimizes your null checks as a story · 4 points

    HN discussion
  13. Submitted My Running Wrapped 2025 as a story · 3 points

    HN discussion
  14. Submitted Sigsegv as control flow: How the JVM optimizes your null checks as a story · 2 points

    HN discussion
  15. Submitted Sigsegv as control flow – How the JVM optimizes your null checks (2015) as a story · 2 points

    HN discussion
  16. Submitted Allocation on the JVM: Down the rabbit hole as a story · 2 points

    HN discussion
  17. Submitted Holiday Hacking – Tracking my heart rate while playing Call of Duty as a story · 2 points

    HN discussion
  18. Submitted More JVM Signal tricks – Thread control via mprotect as a story · 2 points

    HN discussion
  19. Submitted SIGSEGV as control flow – How the JVM optimizes your null checks as a story · 2 points

    HN discussion
  20. Submitted More JVM Signal tricks – Thread control via mprotect as a story · 2 points

    HN discussion

Search all of HN for jcdav.is

Linked by the same people?