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
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
gingerBill
579bc065ea
Merge branch 'master' into bill/llvm-backend-improvements
2026-10-05 18:40:31 +01:00
gingerBill
20b3fdcd58
Accept an explicit -linker:radlink on Windows again, write no BOM for the default radlink's response file, and only require link.exe for -linker:msvc
2026-10-05 18:27:58 +01:00
A1029384756
ba04d81d40
Merge remote-tracking branch 'upstream/master' into windows-cross-compile
2026-10-05 08:31:04 -04:00
Matthias Huerbe
2b82056df2
Fix -linker:radlink being rejected on Windows
2026-10-04 22:08:37 +02:00
gingerBill
707c314aaa
Remove the global locks from resolving import paths and queue an import's package as soon as the import is parsed
2026-10-04 20:12:59 +01:00
Jeroen van Rijn
be590a7c35
Make radlink default linker on Windows
2026-10-04 13:00:24 +02: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
A1029384756
967736fe66
[windows-cross-compile] permissive name matching
2026-09-28 15:58:14 -04:00
gingerBill
f43ecc4210
Merge branch 'master' into lifetime-markers
2026-09-22 22:41:06 +01:00
Jeroen van Rijn
866fbbb250
Allow building at /
...
Fixes #7604
2026-09-21 12:04:37 +02:00
corley
bac6130710
lifetime markers for named locals
2026-09-20 15:55:26 +03:00
gingerBill
938257d425
Add -strict-style-packages
2026-08-27 15:20:02 +01:00
Jeroen van Rijn
650c558cb9
Merge pull request #7445 from kalsprite/target_feature_empty_element
...
string_split_iterator fix
2026-08-24 18:03:35 -07:00
kalsprite
7bf266ef93
string_split_iterator fix
2026-08-24 17:32:30 -07:00
Mihail Moskov
74ac336ef1
fixes -o:size
2026-08-24 12:53:05 +03:00
Mustafa Furkan Bulut
52e7244cbb
add windows to the list
2026-08-23 23:00:58 +03:00
kalsprite
f19e33fbdd
adjust sizes to match audit
2026-08-13 20:47:16 -07:00
MauriceElliott
13763e5ed7
fixup! fix: reworked the playdate subtarget to fix issues with the requirement for single point precision floats, as well as an issue with function lowering when set to thumb mode only instrunctions.
2026-07-13 23:06:32 +01:00
MauriceElliott
11ef10bb5d
fix: reworked the playdate subtarget to fix issues with the requirement for single point precision floats, as well as an issue with function lowering when set to thumb mode only instrunctions.
2026-07-13 23:02:50 +01:00
misomosi
b9e0916189
Use better triple for ARM32 freestanding
2026-07-09 19:39:59 -04:00
Jeroen van Rijn
03652d7423
Improve custom output location for LLVM-IR, OBJ + ASM
...
Fixes #6926 .
If `build` is a subdirectory in the current directory, then `odin build . -out:build` will place `.S`, `.obj` and `.ll` files there if the corresponding `-build-mode` is given.
2026-07-02 14:19:56 +02:00
MauriceElliott
adc50a1184
fixup! fix: made suggested changes to add a playdate subtarget, updated help text and reduce required build flags for playdate to just the subtarget, no-movt and cortex-m7 added to default on playdate subtarget flag.
2026-07-01 21:21:02 +01:00
MauriceElliott
56cee0c2cf
fix: made suggested changes to add a playdate subtarget, updated help text and reduce required build flags for playdate to just the subtarget, no-movt and cortex-m7 added to default on playdate subtarget flag.
2026-07-01 21:18:28 +01:00
MauriceElliott
a3fa3476c6
feat(arm32 cdecl): Added thumb as the triple for cortex-m7. Updated the calling convention for cortex-m7 arm32 micro processors as the soft float register was being used when calling across the C ABI boundary causing guff data to be passed.
2026-06-30 20:07:36 +01:00
Maurice Elliott
3c52217338
Merge branch 'odin-lang:master' into master
2026-06-27 23:13:23 +01:00
gingerBill
40e54a97ed
Merge branch 'master' into bill/bedrock
2026-06-24 11:07:02 +01:00
MauriceElliott
954f988d2b
feat(build_settings): Added a section to init_build_context to target the thumbv7em-non-eabihf when the cortex-m7 processor is selected
2026-06-23 22:03:22 +01:00
gingerBill
85db8c68a9
Remove -stack-protector:default as none is now the default
2026-06-19 09:14:11 +01:00
gingerBill
11e7cff116
Change -stack-protector: default to none
2026-06-19 09:12:57 +01:00
gingerBill
69daa4d184
Merge pull request #6830 from A1029384756/stack-canaries
...
Stack canaries
2026-06-19 09:11:40 +01:00
A1029384756
863b2aea80
[stack-canaries] default to sspstrong
2026-06-14 13:36:55 -04:00
Krzysztof Furman
15deb7a118
Commented the workaround with links to issues, and put it behind a build flag.
2026-06-13 09:53:43 +01:00
A1029384756
8bd95d4082
[stack-canaries] fixed stack canaries on arm linux
2026-06-13 01:52:19 -04:00
A1029384756
3598e351a4
[stack-canaries] restricted to only non-arm
2026-06-12 23:56:55 -04:00
A1029384756
f850fef613
[stack-canaries] disallow stack canaries on non-intel linux
2026-06-12 23:54:26 -04:00
A1029384756
8ccee66157
[stack-canaries] fixed platform behavior
2026-06-12 23:27:32 -04:00
A1029384756
2373fabe47
[stack-canaries] added protection modes
2026-06-12 22:57:39 -04:00
A1029384756
286674a862
[no-plt] restricted to llvm 19+
2026-06-08 10:59:32 -04:00
A1029384756
da742fc526
[no-plt] enable no-plt behavior on linux arm64 and amd64 targets
2026-06-08 10:58:05 -04:00
A1029384756
43b057dfeb
[linux] change default settings to enable pie and full relro
2026-06-06 21:23:26 -04:00
jakubtomsu
dca7710471
fix error pos style env var overwriting arg
2026-05-27 20:02:34 +02:00
gingerBill
b0ee0bb635
Add @(fast_math={...}) + intrinsics.Fast_Math_Flags
2026-05-11 11:55:07 +01:00