mirror of
https://github.com/nim-lang/Nim.git
synced 2026-08-14 11:04:34 +00:00
Boostrap without linking is (conservatively) 17% faster on my machine. Test setup runs the compiler compiling itself under ORC in release mode from a clean cache and no C compilation (`--compileOnly`.) Multiple samples are gathered before judging a potential optimization. The test suite passes locally before push and bootstrap is tested with strict views (mostly as a sanity check). Tests are fair in the sense that they compile the same git worktree and produce identical C output. Refc will see less or no benefit. Changes: - Save tree traversals in `considerGenSyms` when no mappings exist - Inline `maybeSkipDistinct` into `typeRel` for a safe cursor - Only skip to static when there is a static type to reach in `paramTypesMatchAux` - Disable overflow checks for hashes - Disable bounds checks for `nextIdentIter` - Use cursor annotation when judged safe - Use lent annotation for ast accessors Spiritual companion to #26084