Skip to content

Eve native#3

Open
johnmn3 wants to merge 4 commits intomasterfrom
eve-native
Open

Eve native#3
johnmn3 wants to merge 4 commits intomasterfrom
eve-native

Conversation

@johnmn3
Copy link
Copy Markdown
Owner

@johnmn3 johnmn3 commented Mar 9, 2026

No description provided.

John Michael Newman III and others added 4 commits March 8, 2026 21:32
Brings in all new work since the eve branch:
- Portable Murmur3 hashing for cross-platform HAMT compatibility
- JVM-hashed flag in CLJS map header
- Cross-process benchmark: build-atom and stress-atom
- Lazy slab growth: bitmap and data into independent mmap slab files
- i64 atomic ops in native addon and IMemRegion protocol
- Class spillover: bitmap slab OOM spills to next larger class
- GB-scale slab capacity caps for large atom support
- JVM mmap region leak fix

Also:
- Remove all references to SeniorCareMarket-com/eve private repo
  (links now point to johnmn3/cljs-thread)
- Fix COI service worker placement in all four demo pages (<head> first)
- Add !docs/**/cljs-runtime/ gitignore negation for gh-pages artifacts

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The URL was a tree URL (not cloneable) and the cd target was wrong.
Replaced with: git clone -b eve-native https://github.com/johnmn3/cljs-thread.git

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
std::atomic_ref is missing from Apple Clang 14 despite -std=c++20.
Replace all aref/aref64 usages with __atomic_load_n, __atomic_store_n,
__atomic_compare_exchange_n, __atomic_fetch_add/sub — identical codegen,
works on Apple Clang 14+, GCC 5+, and LLVM Clang 3.4+.

Also lower binding.gyp C++ standard from c++20 to c++14 (the remaining
code uses only C++14 features: lambdas, digit separators, auto).

Update guide: drop internal ccweb-setup.sh step, use npx shadow-cljs directly.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Rewrite guide output blocks with labeled macOS/Linux sections per test
- Add two comparison tables (10 MB and 100 MB atoms) showing both platforms
- Explain macOS spin-poll vs Linux futex contention difference
- Strip OBJ- internal ticket refs from atom/map/mem source comments
- Update Requirements to C++14 and note macOS spin-poll fallback

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant