| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Add `ArenaTemp` to the compiler | gingerBill | 2023-01-12 | 1 | -0/+1 |
| | | |||||
| * | Make the `heap_allocator` just be the `permanent_allocator` | gingerBill | 2023-01-12 | 1 | -1/+0 |
| | | | | | This improves the speed of the compiler with very little memory increase (which surprised me, Ginger Bill) | ||||
| * | Make `-threaded-checker` the default not (opt out with `-no-threaded-checker`) | gingerBill | 2023-01-11 | 1 | -1/+1 |
| | | |||||
| * | Merge branch 'master' into compiler-improvements-2023-01 | gingerBill | 2023-01-10 | 1 | -0/+19 |
| |\ | |||||
| | * | Merge pull request #2280 from DragosPopse/master | gingerBill | 2023-01-01 | 1 | -0/+19 |
| | |\ | | | | | | | Fixed empty output_path.name when building a folder with no subfolders | ||||
| | | * | Patched empty output_path.name when building a folder | Dragos | 2022-12-26 | 1 | -0/+19 |
| | | | | |||||
| * | | | Allow all set entry types to be implicitly cast to their key/value type to ↵ | gingerBill | 2023-01-03 | 1 | -4/+2 |
| | | | | | | | | | | | | | allow for easier iteration | ||||
| * | | | Use heap_allocator for all hash set types | gingerBill | 2023-01-03 | 1 | -1/+1 |
| | | | | |||||
| * | | | Narrow `fullpath_mutex` usage | gingerBill | 2023-01-02 | 1 | -3/+9 |
| | | | | |||||
| * | | | Correct a race condition when checking the procedure body | gingerBill | 2023-01-02 | 1 | -0/+1 |
| | | | | |||||
| * | | | Remove the synchronization primitive init/destroy calls | gingerBill | 2023-01-01 | 1 | -1/+0 |
| |/ / | |||||
| * | | Remove a few `TODO`s | gingerBill | 2022-12-22 | 1 | -2/+1 |
| | | | |||||
| * | | Add missing `gb_internal` | gingerBill | 2022-12-18 | 1 | -1/+1 |
| | | | |||||
| * | | Remove dead code in the compiler | gingerBill | 2022-12-18 | 1 | -5/+1 |
| | | | |||||
| * | | `gb_internal` a lot | gingerBill | 2022-12-18 | 1 | -41/+42 |
| | | | |||||
| * | | Replace compiler for loops for the hash-table types to simplify code usage | gingerBill | 2022-12-09 | 1 | -4/+7 |
| |/ | |||||
| * | Allow for `-use-static-map-calls` which generates a get procedure per `map`; ↵ | gingerBill | 2022-11-08 | 1 | -0/+2 |
| | | | | | add `runtime.map_get` | ||||
| * | `-default-to-nil-allocator` also enables `-no-dynamic-literals` | gingerBill | 2022-11-07 | 1 | -0/+5 |
| | | |||||
| * | Add -minimum-os-version flag | Jeroen van Rijn | 2022-11-01 | 1 | -7/+7 |
| | | | | | | Allow for Darwin targets to specify the minimum OS version: e.g. -minimum-os-version:12.0.0 | ||||
| * | Revert "Fix #2112" | Jeroen van Rijn | 2022-10-08 | 1 | -10/+30 |
| | | |||||
| * | Fix #2112 | Jeroen van Rijn | 2022-10-08 | 1 | -30/+10 |
| | | |||||
| * | fix target features to make wasm intrinsics happy | Colin Davidson | 2022-09-21 | 1 | -2/+5 |
| | | |||||
| * | Correct `get_fullpath_relative` to remove all trailing path separators (`/` ↵ | gingerBill | 2022-09-21 | 1 | -0/+9 |
| | | | | | and `\`) | ||||
| * | Fix `ODIN_BUILD_PROJECT_NAME` | gingerBill | 2022-09-12 | 1 | -6/+6 |
| | | |||||
| * | Add `ODIN_BUILD_PROJECT_NAME` and `//+build-project-name` | gingerBill | 2022-09-08 | 1 | -0/+7 |
| | | | | | | | | | | | | | This allows for condition inclusion of files, similar to `+build` or `ODIN_BUILD`, but relies on the directory name of the project to be the same as specified Example: odin build foo/bar/baz ODIN_BUILD_PROJECT_NAME == "baz" //+build_project_name baz | ||||
| * | Allow Odin to find itself if it's in PATH on OpenBSD, because reasons. | Jeroen van Rijn | 2022-09-04 | 1 | -3/+66 |
| | | |||||
| * | Correct max alignment handling throughout the llvm backend | gingerBill | 2022-08-24 | 1 | -10/+12 |
| | | |||||
| * | Add extra max alignment parameter for metrics (specifically for SIMD) | gingerBill | 2022-08-24 | 1 | -52/+29 |
| | | |||||
| * | EXPERIMENTAL `intrinsics.valgrind_client_request` | gingerBill | 2022-08-17 | 1 | -0/+3 |
| | | |||||
| * | find windows sdk bin path for rc.exe | Ian Lilley | 2022-08-07 | 1 | -4/+4 |
| | | |||||
| * | Fix compilation on non-windows platforms | gingerBill | 2022-07-09 | 1 | -0/+2 |
| | | |||||
| * | Fix wasm compilation in windows | gingerBill | 2022-07-09 | 1 | -2/+2 |
| | | |||||
| * | Merge pull request #1807 from odin-lang/simd-dev | gingerBill | 2022-05-31 | 1 | -2/+116 |
| |\ | | | | | Generic #simd type and intrinsics | ||||
| | * | `@(require_target_feature=<string>)` `@(enable_target_feature=<string>)` | gingerBill | 2022-05-30 | 1 | -2/+107 |
| | | | | | | | | | | | require_target_feature - required by the target micro-architecture enable_target_feature - will be enabled for the specified procedure only | ||||
| | * | Add `intrinsics.x86_cpuid` and `intrinsics.x86_xgetbv` | gingerBill | 2022-05-28 | 1 | -0/+9 |
| | | | |||||
| * | | Additional cleanup of microsoft_craziness.h. | Jeroen van Rijn | 2022-05-27 | 1 | -0/+10 |
| | | | |||||
| * | | Refactor ms_craziness.h | Jeroen van Rijn | 2022-05-27 | 1 | -11/+5 |
| |/ | |||||
| * | Fix `odin build examples\demo\` trailing slash handling. | Jeroen van Rijn | 2022-05-24 | 1 | -1/+6 |
| | | |||||
| * | Begin to add support for experimental wasm64 | gingerBill | 2022-05-21 | 1 | -1/+11 |
| | | |||||
| * | Fix typo | gingerBill | 2022-05-21 | 1 | -1/+1 |
| | | |||||
| * | Fix building issues with arm32 | gingerBill | 2022-05-01 | 1 | -17/+27 |
| | | |||||
| * | Add basic arm32 ABI support (linux_arm32) | gingerBill | 2022-05-01 | 1 | -1/+14 |
| | | |||||
| * | Address edge cases. | Jeroen van Rijn | 2022-04-26 | 1 | -7/+35 |
| | | |||||
| * | Remove redundant bit for non-Windows. | Jeroen van Rijn | 2022-04-24 | 1 | -14/+0 |
| | | |||||
| * | Compiler: Allow -out: to not have an extension on *nix for executables (only). | Jeroen van Rijn | 2022-04-24 | 1 | -1/+3 |
| | | |||||
| * | Compiler: Add early error for output path being a directory. | Jeroen van Rijn | 2022-04-24 | 1 | -28/+192 |
| | | | | | | | | | | | | | - Introduce new `Path` type and an array of build paths on the build context. - Resolve input and output paths/files early (before parsing). - Error early if inputs are missing or outputs are directories. - Plumb new file path generation into linker stage instead of its adhoc method. TODO: - Remove more adhoc file path generation in parser and linker stage. - Make intermediate object file generation use new path system. - Round out and robustify Path helper functions. | ||||
| * | Give build/run/check/test/doc a `-file` flag. | Jeroen van Rijn | 2022-04-05 | 1 | -1/+22 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A package has canonically always been a directory, but odin allowing you to build a single-file package confused newcomers who didn't understand why they could then not access variables and procedures from another file in the same directory. This change disallows building single-file packages by default, requiring the `-file` flag to acknowledge you understand the nuance. `-help` for these commands also clarifies the difference. ``` W:\Odin>odin build -help odin is a tool for managing Odin source code Usage: odin build [arguments] build Compile directory of .odin files as an executable. One must contain the program's entry point, all must be in the same package. Use `-file` to build a single file instead. Examples: odin build . # Build package in current directory odin build <dir> # Build package in <dir> odin build filename.odin -file # Build single-file package, must contain entry point. Flags -file Tells `odin build` to treat the given file as a self-contained package. This means that `<dir>/a.odin` won't have access to `<dir>/b.odin`'s contents. ``` ``` W:\Odin>odin run examples\demo\demo.odin ERROR: `odin run` takes a package as its first argument. Did you mean `odin run examples\demo\demo.odin -file`? The `-file` flag tells it to treat a file as a self-contained package. ``` | ||||
| * | Merge branch 'master' into freestanding_amd64 | gingerBill | 2022-03-14 | 1 | -12/+57 |
| |\ | |||||
| | * | rename architecture from 386 to i386 | Sébastien Marie | 2022-03-03 | 1 | -9/+9 |
| | | | |||||
| | * | openbsd: poor man implementation for getting executable path | Sébastien Marie | 2022-02-26 | 1 | -3/+30 |
| | | | | | | | | | it tries to get executable path from argv[0]. it is unreliable and unsecure, but should be fine enough for the considered use-case. it still doesn't address all possible cases. | ||||