gingerBill
|
b0c36ab7ca
|
Merge pull request #7816 from odin-lang/bill/atomic-memory-ordering-pass
Atomic Memory Ordering and Futex Operation Passes
|
2026-10-07 23:36:22 +01:00 |
|
gingerBill
|
158d0a9d8d
|
Replace the #+escape-analysis/#+atomic-analysis file tags with #+analysis which takes names and ! like #+vet
|
2026-10-07 22:50:20 +01:00 |
|
gingerBill
|
b12195bebf
|
Add an atomic memory ordering analysis (-no-atomic-analysis, #+atomic-analysis, #+no-atomic-analysis) warning where release or acquire ordering pairs with nothing, and -vet-atomic-access for plain reads of what is accessed atomically
|
2026-10-07 22:43:08 +01:00 |
|
gingerBill
|
42ce435053
|
Merge pull request #7814 from BigBoyBarney/vet-help
Update -vet flag help message
|
2026-10-07 22:12:56 +01:00 |
|
gingerBill
|
403738e5cd
|
Merge pull request #7802 from odin-lang/bill/compiler-improvements-2026-10
Flow-based Escape Analysis of Stack Memory + Show where parapoly procedures and records were instantiated in errors within them
|
2026-10-07 21:19:06 +01:00 |
|
gingerBill
|
d728de8a20
|
Add #+escape-analysis and #+no-escape-analysis file tags, and keep the syntactic check of unsafe returns where the escape analysis is disabled
|
2026-10-07 21:06:56 +01:00 |
|
gingerBill
|
6784db9f86
|
Add -no-escape-analysis, which cannot be used with -vet-nil-deref or -vet-uninitialized
|
2026-10-07 20:56:04 +01:00 |
|
gingerBill
|
476ff62d6d
|
Add -vet-uninitialized, reporting reads of what is declared with --- before anything is stored in it
|
2026-10-07 20:35:53 +01:00 |
|
gingerBill
|
e512fe07d3
|
Add -vet-nil-deref, reporting dereferences and calls through what is nil on every path reaching them
|
2026-10-07 19:36:37 +01:00 |
|
Sylphrena
|
c270ad65be
|
Updated -vet flag help message
|
2026-10-07 20:05:47 +02:00 |
|
Jeroen van Rijn
|
326aca6c67
|
Fix #7806
|
2026-10-07 16:40:28 +02:00 |
|
Sylphrena
|
cefbbb428d
|
Make vendor collection optional
|
2026-10-07 14:45:09 +02:00 |
|
Jeroen van Rijn
|
84bc3fc210
|
Merge pull request #7788 from A1029384756/windows-cross-compile
[windows-cross-compile] add missing `help` message
|
2026-10-06 07:08:36 -07:00 |
|
A1029384756
|
1c8600caf2
|
[windows-cross-compile] add missing help message
|
2026-10-06 09:59:07 -04:00 |
|
gingerBill
|
579bc065ea
|
Merge branch 'master' into bill/llvm-backend-improvements
|
2026-10-05 18:40:31 +01:00 |
|
gingerBill
|
0e26e26a0d
|
List each file's possible type aliases as they are collected, gather the global entities whilst they are corrected, and only destroy the checker once parsing reported no errors
|
2026-10-05 16:36:17 +01:00 |
|
gingerBill
|
1669cf6192
|
Collect each package's entities as soon as it has parsed all of its files; hold any non-syntactic errors until all of the parsing is done and only report if there are no parsing errors
|
2026-10-05 15:40:33 +01:00 |
|
A1029384756
|
ba04d81d40
|
Merge remote-tracking branch 'upstream/master' into windows-cross-compile
|
2026-10-05 08:31:04 -04:00 |
|
gingerBill
|
6abf51b621
|
Add untyped expression values in parallel with a thread_pool_for_chunks helper shared with the cycle scan
|
2026-10-04 23:53:55 +01:00 |
|
gingerBill
|
18aead3ba1
|
Merge pull request #7729 from odin-lang/bill/llvm-backend-improvements
LLVM Backend Performance Improvements to Reduce Compile Times Part 2
|
2026-10-04 19:01:11 +01:00 |
|
Jeroen van Rijn
|
be590a7c35
|
Make radlink default linker on Windows
|
2026-10-04 13:00:24 +02:00 |
|
gingerBill
|
3bd53e2a80
|
Improve the parsing for tokenizing + parsing speeds under -show-more-timings -show-debug-messages
|
2026-10-03 16:26:58 +01:00 |
|
gingerBill
|
32f30c3eb3
|
Tokenize whilst parsing rather than storing every token of a file first
|
2026-10-03 16:03:59 +01:00 |
|
gingerBill
|
a7ded94e52
|
Begin the costliest modules first in each backend stage; run function passes in parallel with -debug; spread the instances of oversized modules over further modules; trim comments
|
2026-10-02 23:15:43 +01:00 |
|
gingerBill
|
d958fd7abb
|
Allow -build-mode with odin test; Copy a "just loaded" aggregate as integers in the startup procedure and with -o:none as LLVM's fast instruction selector cannot select an aggregate load or store
|
2026-10-02 16:40:54 +01:00 |
|
gingerBill
|
63bd49c88b
|
Add -internal-check-global-edges; Check global entities in dependency-ordered groups of a syntactic graph
|
2026-10-01 17:28:38 +01:00 |
|
gingerBill
|
2b90b616e1
|
Add -vet-when-shadowing; Resolve global whens and foreign blocks on demand via name placeholders
|
2026-10-01 16:28:12 +01:00 |
|
gingerBill
|
38fa57e907
|
Make global checking and codegen order-independent
|
2026-10-01 15:01:14 +01:00 |
|
gingerBill
|
b06c5ffa70
|
Add -internal-global-entity-graph; Fix union type inference bug
|
2026-10-01 13:42:32 +01:00 |
|
gingerBill
|
3f518fd130
|
Merge pull request #7602 from corleypc/lifetime-markers
Adds lifetime markers for named locals
|
2026-09-29 17:44:06 +01:00 |
|
gingerBill
|
7b19697dcf
|
Integrate ExactValue_Rational throughout the codebase
|
2026-09-29 14:38:08 +01:00 |
|
gingerBill
|
e23e01510e
|
Add ExactValue_Rational; Start adding some tests for big rat
|
2026-09-29 14:17:21 +01:00 |
|
gingerBill
|
db10c6ba3f
|
Implement the basics for a big rational library in the compiler
|
2026-09-29 14:01:08 +01:00 |
|
A1029384756
|
967736fe66
|
[windows-cross-compile] permissive name matching
|
2026-09-28 15:58:14 -04:00 |
|
corley
|
bac6130710
|
lifetime markers for named locals
|
2026-09-20 15:55:26 +03:00 |
|
Jeroen van Rijn
|
44ac0eead7
|
Add ctrl-c handler to run_subprocess
Catch ctrl-c in `odin run` to shutdown child process without taking down the compiler also.
Fixes #7499
|
2026-09-02 23:44:26 +02:00 |
|
Yawning Angel
|
9aa84b5e3a
|
src: Use posix_spawnp instead of system() when invoking the linker
Thanks to Matteo on discord for pointing this out.
|
2026-08-31 04:40:04 +09:00 |
|
gingerBill
|
938257d425
|
Add -strict-style-packages
|
2026-08-27 15:20:02 +01:00 |
|
kalsprite
|
c3bc5b69ac
|
Merge branch 'master' into asm_doc_category
|
2026-08-25 23:08:48 -07:00 |
|
kalsprite
|
7bf266ef93
|
string_split_iterator fix
|
2026-08-24 17:32:30 -07:00 |
|
kalsprite
|
b875baea08
|
asm template doc category
|
2026-08-24 00:55:16 -07:00 |
|
gingerBill
|
84f9bc76f9
|
Mockout inline asm for riscv
|
2026-08-20 14:42:42 +01:00 |
|
gingerBill
|
1f2234a4b2
|
Merge branch 'master' into bill/inline-asm
|
2026-08-17 11:44:14 +01:00 |
|
Jeroen van Rijn
|
0b7b8ba4a2
|
Set console codepage to utf-8 (on Windows), and restore old one on exit
Avoid mojibake.
|
2026-08-16 16:16:35 +02:00 |
|
gingerBill
|
ef21ffa285
|
Templatize the check_asm.cpp code ready for other architectures
|
2026-08-11 14:00:41 +01:00 |
|
gingerBill
|
400203c344
|
Verify the asm instruction operands against the Encoding.ops
|
2026-08-11 11:47:48 +01:00 |
|
gingerBill
|
70ca5c0936
|
Validate the names of mnemonics, prefixes, and registers for amd64
|
2026-08-11 10:44:34 +01:00 |
|
gingerBill
|
d827be77cd
|
Begin work on generating the AMD64 asm tables for C++
|
2026-08-11 10:15:41 +01:00 |
|
jerksto
|
ff949ac6fd
|
Don't assert on -define: values with an exponent
|
2026-07-30 10:59:10 -04:00 |
|
David Bader
|
edc522a05c
|
add assert to make sure old and new double_dash_pos are the same
|
2026-07-30 13:38:52 +02:00 |
|