| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | darwin: fix ld warnings and set minimum os version | Laytan Laats | 2024-03-23 | 1 | -14/+20 | |
| | | ||||||
| * | darwin: allow cross linking darwin_amd64 from darwin_arm64 | Laytan Laats | 2024-03-20 | 1 | -0/+1 | |
| | | ||||||
| * | Merge pull request #3297 from laytan/linker-improvements | gingerBill | 2024-03-20 | 1 | -2/+25 | |
| |\ | | | | | linker improvements | |||||
| | * | linker improvements | Laytan Laats | 2024-03-19 | 1 | -2/+25 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `path_to_fullpath` did different things on Windows&Unix, an attempt to bring them closer together was made here. This was prompted by the compiler completely ignoring `foreign import "foo.dylib"` when `foo.dylib` does not exist (because `path_to_fullpath` returns an empty string). Causing just unresolved symbol errors, when on Windows it would pass along the path to the linker and actually say it doesn't exist, which is now also the case for Unix. This also fixes some checker errors that relied on the Windows behaviour, for example: `Error: File name, , cannot be as a library name as it is not a valid identifier`. Made `-no-crt` require either `-default-to-nil-allocator` or `-default-to-panic-allocator` on Unix, the current default allocators rely on libc and this was not obvious and would immediately bring up unresolved symbol errors for the linked memory management functions, or just link with libc anyways because it was foreign imported. Added a suggestion to install `nasm` with the user's package manager when assembling using `nasm` fails on Unix, I saw some confusion about it in the Discord. Ignore explicit foreign imports of libc. It is already linked in later on in the linking process and would otherwise (at least on macOS) cause linker warnings for duplicate libraries. This also makes it so when using `-no-crt` and importing something that requires libc, linker errors are given (like I would expect), instead of silently still linking with libc because it was foreign imported. | |||||
| * | | Add `-json-errors` | gingerBill | 2024-03-19 | 1 | -2/+6 | |
| | | | ||||||
| * | | Serialize errors to make them sortable, deterministic, and generally more ↵ | gingerBill | 2024-03-19 | 1 | -0/+4 | |
| |/ | | | | control | |||||
| * | fix core:thread and a memory leak | avanspector | 2024-02-27 | 1 | -6/+2 | |
| | | | | | in the future probably native non-pthread implementation for haiku will be required | |||||
| * | add haiku build token | avanspector | 2024-02-25 | 1 | -0/+1 | |
| | | ||||||
| * | small fixes | avanspector | 2024-02-25 | 1 | -0/+2 | |
| | | ||||||
| * | Improve Haiku support | avanspector | 2024-02-25 | 1 | -0/+66 | |
| | | ||||||
| * | fix ci | Laytan Laats | 2024-02-07 | 1 | -3/+3 | |
| | | ||||||
| * | Improve error handling for missing library collection provided by the compiler | gingerBill | 2024-02-07 | 1 | -10/+16 | |
| | | ||||||
| * | Merge pull request #3141 from laytan/add-all-packages-flag-for-tests | gingerBill | 2024-01-31 | 1 | -0/+1 | |
| |\ | | | | | Add `odin test -all-packages` to be able to test an entire project | |||||
| | * | Add `odin test -all-packages` to be able to test an entire project | Laytan Laats | 2024-01-26 | 1 | -0/+1 | |
| | | | ||||||
| * | | Freestanding - default to nil allocator; wasm - default to panic allocator | gingerBill | 2024-01-28 | 1 | -1/+10 | |
| | | | ||||||
| * | | `-default-to-panic-allocator` | gingerBill | 2024-01-28 | 1 | -1/+3 | |
| | | | ||||||
| * | | Move `core:runtime` to `base:runtime`; keep alias around | gingerBill | 2024-01-28 | 1 | -1/+21 | |
| |/ | ||||||
| * | Expand -subsystem option on Windows | Jeroen van Rijn | 2024-01-18 | 1 | -10/+40 | |
| | | | | | | | | | W:\Odin>odin run sketch.odin -file -subsystem:foo Invalid -subsystem string, got oo. Expected one of: BOOT_APPLICATION, CONSOLE (default), EFI_APPLICATION, EFI_BOOT_SERVICE_DRIVER, EFI_ROM, EFI_RUNTIME_DRIVER, NATIVE, POSIX, WINDOWS (or WINDOW), WINDOWSCE We now also set the constant ODIN_WINDOWS_SUBSYSTEM, which is "" for non-Windows targets. | |||||
| * | Add WINDOWS_SUBSYSTEM constant bool | Jeroen van Rijn | 2024-01-18 | 1 | -10/+9 | |
| | | | | | true when -subsystem:windows for Windows targets, false otherwise. | |||||
| * | Use default calling convention for arm target for now - not 100% sure this ↵ | codename-irvin | 2024-01-16 | 1 | -3/+2 | |
| | | | | | is correct | |||||
| * | Add freestanding aarch64 target | codename-irvin | 2024-01-15 | 1 | -1/+9 | |
| | | ||||||
| * | src: `enable_target_feature` should add features, not overwrite | Yawning Angel | 2024-01-07 | 1 | -1/+3 | |
| | | | | | | | | | | | | | | | | | `llvm_features` being empty is the default state, and implies the presence of certain features. Previously if any target features were explicitly enabled by the `enable_target_feature` attribute, they were added comma separated to `llvm_features`. For example: `lzcnt,popcnt,...,sse4.2,sse` This was causing LLVM to try to target a CPU that *ONLY* has the explicitly enabled features. This now will prefix explicitly enabled features with a `+`, and preserve the existing `llvm_features` string by appending to it if it is set. | |||||
| * | Clean up error block usage | gingerBill | 2024-01-05 | 1 | -0/+1 | |
| | | ||||||
| * | Add `-obfuscate-source-code-locations` | gingerBill | 2023-12-13 | 1 | -0/+2 | |
| | | ||||||
| * | Facored out `get_default_microarchitecture` | Jeroen van Rijn | 2023-11-10 | 1 | -7/+6 | |
| | | | | | Moved `generic` -> `x86-64-v2` selection into its own procedure so that `llvm_backend.cpp` and `main.cpp` can share the same logic. | |||||
| * | Add -microarch:? | Jeroen van Rijn | 2023-11-10 | 1 | -2/+17 | |
| | | ||||||
| * | Force dynamic map calls on non-windows targets | gingerBill | 2023-10-29 | 1 | -2/+4 | |
| | | ||||||
| * | Fix static map calls and default to them! | gingerBill | 2023-10-27 | 1 | -1/+1 | |
| | | ||||||
| * | Remove `-vet-extra` | gingerBill | 2023-09-30 | 1 | -5/+1 | |
| | | ||||||
| * | Update src/build_settings.cpp | gingerBill | 2023-09-27 | 1 | -1/+1 | |
| | | | | Co-authored-by: Laytan Laats <laytanlaats@hotmail.com> | |||||
| * | Add attributes for sanitize_memory and sanitize_thread | gingerBill | 2023-09-21 | 1 | -1/+30 | |
| | | ||||||
| * | Add `-o:aggressive` for LLVM 17 | gingerBill | 2023-09-21 | 1 | -1/+1 | |
| | | ||||||
| * | Support `-sanitize:<string>` for `address`, `memory`, `thread` for LLVM 17 | gingerBill | 2023-09-21 | 1 | -0/+16 | |
| | | ||||||
| * | Add experimental `-subtarget:ios` | gingerBill | 2023-08-08 | 1 | -1/+30 | |
| | | ||||||
| * | Merge branch 'master' into tilde | gingerBill | 2023-08-03 | 1 | -3/+39 | |
| |\ | ||||||
| | * | Remove `-strict-style-init-only` | gingerBill | 2023-08-01 | 1 | -1/+0 | |
| | | | ||||||
| | * | Add `-vet-style` and `-vet-semicolon` | gingerBill | 2023-08-01 | 1 | -0/+6 | |
| | | | ||||||
| | * | Improve `//+vet`; remove `using` in many places; add `//+vet !using-stmt` ↵ | gingerBill | 2023-07-31 | 1 | -4/+4 | |
| | | | | | | | | | where necessary | |||||
| | * | Add separate `-vet` flags; `-vet-using-*` flags; `//+vet` file flags | gingerBill | 2023-07-31 | 1 | -2/+33 | |
| | | | ||||||
| * | | Add `-tilde` for working on the new compiler | gingerBill | 2023-07-08 | 1 | -0/+2 | |
| |/ | ||||||
| * | Rename `ODIN_DISALLOW_RTTI` to `ODIN_NO_RTTI`; Remove dead command line flags | gingerBill | 2023-06-12 | 1 | -3/+3 | |
| | | ||||||
| * | Fix endianness for wasm64p32 | gingerBill | 2023-06-07 | 1 | -4/+2 | |
| | | ||||||
| * | Merge branch 'master' into separate-int-word-sizes | gingerBill | 2023-06-06 | 1 | -3/+21 | |
| |\ | ||||||
| | * | Merge pull request #2479 from Naught00/master | Jeroen van Rijn | 2023-05-19 | 1 | -3/+21 | |
| | |\ | | | | | | | Change default executable extension for non-Windows platforms | |||||
| | | * | Fix accidental check in | Mark Naughton | 2023-05-19 | 1 | -8/+0 | |
| | | | | ||||||
| | | * | Add write permissions check on output folder | Mark Naughton | 2023-05-19 | 1 | -1/+18 | |
| | | | | ||||||
| | | * | Fix single-file package case | Mark Naughton | 2023-05-18 | 1 | -0/+7 | |
| | | | | ||||||
| | | * | Simplify extension addition logic | Mark Naughton | 2023-04-26 | 1 | -9/+2 | |
| | | | | ||||||
| | | * | Use buildpath instead of init_filename | Mark Naughton | 2023-04-26 | 1 | -1/+1 | |
| | | | | ||||||
| | | * | Fix .bin not being applied for relative directory | Mark Naughton | 2023-04-26 | 1 | -1/+2 | |
| | | | | ||||||