| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Minor Spelling mistake in Using error line | tpat7187 | 18 hours | 1 | -1/+1 |
| | | |||||
| * | Add `-did-you-mean-limit:N` | Jeroen van Rijn | 44 hours | 3 | -0/+33 |
| | | | | | | | | | | | | | | | | | | | | | | | | ``` -did-you-mean-limit:<integer> Sets the maximum number of suggestions the compiler provides. Must be an integer >0. If not set, the default limit is 10. ``` e.g. with a limit of 5 ``` W:/Scratch/main.odin(44:7) Error: Undeclared name 'B1' for type 'E' e = .B1 ^^ Suggestion: Did you mean? A23 A02 A19 A20 A21 ... and 25 more ... ``` | ||||
| * | fix typo | Laytan Laats | 4 days | 1 | -1/+1 |
| | | |||||
| * | Remove -show-import-graph header | Jeroen van Rijn | 4 days | 1 | -1/+0 |
| | | | | | | This allows you to pipe the output to a file and have a working graph without any editing. (Provided you don't also use additional -flags like `-show-timings`.) | ||||
| * | Clarify -lto help text | Jeroen van Rijn | 4 days | 1 | -3/+3 |
| | | |||||
| * | Require all values from a procedure iterator if the procedure is marked with ↵ | gingerBill | 4 days | 2 | -2/+33 |
| | | | | | `@(require_results)` | ||||
| * | Stop silently ignoring unknown directives on an inline asm expression | Krzesimir Nowak | 4 days | 1 | -0/+2 |
| | | |||||
| * | Add `-show-import-graph` | gingerBill | 4 days | 2 | -0/+93 |
| | | |||||
| * | Change LTO rules for all platforms | gingerBill | 11 days | 1 | -2/+2 |
| | | |||||
| * | Add docs for `-lto:<string>`; remove `-lld` and `-radlink` flags docs; with ↵dev-2026-02 | gingerBill | 11 days | 1 | -6/+26 |
| | | | | | `-lto` default to `-use-separate-modules` and `-linker:lld` | ||||
| * | Merge branch 'master' into lto-support | Jesse Meyer | 11 days | 21 | -82/+222 |
| |\ | |||||
| | * | Merge pull request #6220 from laytan/fix-lto-macos | gingerBill | 13 days | 2 | -1/+30 |
| | |\ | | | | | | | fix LTO on MacOS | ||||
| | | * | fix LTO on MacOS | Laytan Laats | 13 days | 2 | -1/+30 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If no `-minimum-os-version` is given, ignore the `override-module` warnings. The user not using, `-minimum-os-version` opts you into linker warnings about target versions. If a `-minimum-os-version` is provided, normalize it to a full version `11` to `11.0.0` for example. The linker seems to want that when doing LTO. | ||||
| | * | | support -> supported | Jeroen van Rijn | 13 days | 2 | -2/+2 |
| | |/ | |||||
| | * | Add `intrinsics.count_trailing_ones` and `intrinsics.count_leading_ones` | gingerBill | 13 days | 4 | -0/+45 |
| | | | |||||
| | * | Comment out `t->Struct.are_offsets_being_processed.load()` | gingerBill | 13 days | 1 | -3/+3 |
| | | | |||||
| | * | Move `return true;` to after the if check | gingerBill | 13 days | 1 | -2/+2 |
| | | | |||||
| | * | Remove unneeded mutex in `hash_exact_value` | gingerBill | 13 days | 1 | -5/+0 |
| | | | |||||
| | * | Add parent mutex lock for `scope_insert_with_name` | gingerBill | 13 days | 1 | -0/+3 |
| | | | |||||
| | * | Merge pull request #6215 from odin-lang/bill/fix-data-races-2026-02 | gingerBill | 13 days | 12 | -57/+92 |
| | |\ | | | | | | | Fix numerous data races | ||||
| | | * | Revert `mutex_lock` logicbill/fix-data-races-2026-02 | gingerBill | 13 days | 1 | -3/+3 |
| | | | | |||||
| | | * | Fix `mutex_lock` | gingerBill | 13 days | 1 | -1/+1 |
| | | | | |||||
| | | * | Move `alignas` to before name | gingerBill | 13 days | 1 | -1/+1 |
| | | | | |||||
| | | * | Use mutex striping for `add_type_and_value` | gingerBill | 13 days | 2 | -10/+29 |
| | | | | |||||
| | | * | Make `Entity.parent_proc_decl` atomic | gingerBill | 13 days | 3 | -6/+8 |
| | | | | |||||
| | | * | Make `defer_use_checked` and `where_clauses_evaluated` atomic | gingerBill | 13 days | 3 | -11/+11 |
| | | | | |||||
| | | * | Make `Entity.code_gen_*` atomic | gingerBill | 13 days | 1 | -2/+2 |
| | | | | |||||
| | | * | Make atomic `variant_block_size` and `tag_size` in `TypeUnion` | gingerBill | 13 days | 1 | -12/+12 |
| | | | | |||||
| | | * | Use `compare_exchange_strong` `mutex_lock` on non-windows sytems | gingerBill | 13 days | 1 | -4/+4 |
| | | | | |||||
| | | * | Mock out TSAN_* usage in thread_pool.cpp | gingerBill | 13 days | 1 | -0/+14 |
| | | | | |||||
| | | * | Use `std::atomic` for `Ast.viral_state_flags` and `Ast_Ident.entity` | gingerBill | 13 days | 3 | -14/+14 |
| | | | | |||||
| | * | | Merge pull request #6216 from odin-lang/bill/debug-info-fixes | gingerBill | 13 days | 6 | -12/+43 |
| | |\ \ | | | | | | | | | Debug Info Fixes | ||||
| | | * | | Fix positions for debug locations in `defer`, loops, and `switch` clauses | gingerBill | 13 days | 4 | -4/+27 |
| | | | | | |||||
| | | * | | Add case for completeness | gingerBill | 13 days | 1 | -0/+2 |
| | | | | | |||||
| | | * | | Fix debug info | gingerBill | 13 days | 1 | -8/+13 |
| | | | | | |||||
| | | * | | Move `values` construction to after padding has been set | gingerBill | 13 days | 1 | -1/+2 |
| | | |/ | |||||
| | * | | Fix #6202 | gingerBill | 13 days | 1 | -0/+2 |
| | | | | |||||
| | * | | Add ThinLTO support via -lto:thin and -lto:thin-files flags | Jesse Meyer | 14 days | 5 | -7/+78 |
| | |/ | | | | | | | | | | | | | | | | | | | | | - Add -lto:thin and -lto:thin-files CLI flags with validation - Emit LLVM bitcode (.bc) instead of object files when LTO is enabled - Pass -flto=thin and -flto-jobs to clang/lld linkers - Guard linkage corrections to skip declarations without definitions (required for LTO where declarations appear across modules) - Allow module-per-file with LTO even at higher optimization levels Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | | Fix Windows LTO: preserve required procedures with llvm.used | Jesse Meyer | 11 days | 2 | -9/+33 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Windows with LTO, required procedures with external linkage need to be added to @llvm.used to survive linker-level dead code elimination. LLVM may generate implicit calls to runtime builtins (e.g., __extendhfsf2 for f16 conversions) during instruction lowering, after the IR is finalized. Without @llvm.used, the linker discards these procedures before the implicit calls are generated. This adds required procedures to @llvm.used at creation time. The fix is Windows-specific; other platforms handle this correctly. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | | Fix lld-link LTO jobs flag syntax on Windows | Jesse Meyer | 11 days | 1 | -1/+1 |
| | | | | | | | | | | | | | | | lld-link doesn't recognize /lldltojobs:N as a standalone flag and treats it as a file path. Use /opt:lldltojobs=N instead. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | | Skip sanitizer IR passes when LTO is enabled | Jesse Meyer | 11 days | 1 | -8/+15 |
| | | | | | | | | | | | | | | | | | | | | | | | With ThinLTO, the linker runs sanitizer passes at link time via -fsanitize= flags, where it has whole-program visibility. Running them at bitcode emission too double-instruments every module, producing hundreds of "Redundant instrumentation detected" warnings. Per-function sanitize/no_sanitize attributes are preserved in the bitcode and respected by the linker's pass. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | | Add ThinLTO support via -lto:thin and -lto:thin-files flags | Jesse Meyer | 11 days | 5 | -7/+78 |
| |/ | | | | | | | | | | | - Add -lto:thin and -lto:thin-files CLI flags with validation - Emit LLVM bitcode (.bc) instead of object files when LTO is enabled - Pass -flto=thin and -flto-jobs to clang/lld linkers - Guard linkage corrections to skip declarations without definitions (required for LTO where declarations appear across modules) - Allow module-per-file with LTO even at higher optimization levels Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> | ||||
| * | Merge branch 'master' into bill/feature-using-stmt | gingerBill | 2026-01-30 | 25 | -257/+731 |
| |\ | |||||
| | * | Support `-linker:mold` on FreeBSD and NetBSD; Remove `-use-lld` and ↵ | gingerBill | 2026-01-30 | 2 | -13/+1 |
| | | | | | | | | | `-use-radlink` | ||||
| | * | Merge branch 'odin-lang:master' into vet_flags | Faker-09 | 2026-01-29 | 7 | -11/+73 |
| | |\ | |||||
| | | * | Remove else check for untyped to typed | gingerBill | 2026-01-29 | 1 | -2/+4 |
| | | | | |||||
| | | * | Add `struct #simple` to force a struct to use simple comparison if all of ↵ | gingerBill | 2026-01-29 | 5 | -7/+53 |
| | | | | | | | | | | | | | the fields "nearly simply comparable". | ||||
| | | * | Complete `is_type_simple_compare` `switch` rules | gingerBill | 2026-01-29 | 1 | -0/+11 |
| | | | | |||||
| | | * | Allow #unroll for arrays of fixed length which are not constants | gingerBill | 2026-01-28 | 2 | -2/+5 |
| | | | | |||||
| | * | | Fix for vet flags. All combinations of vet flags on the command line and top ↵ | Shane Shrybman | 2026-01-28 | 1 | -3/+3 |
| | |/ | | | | | | | of file are working | ||||