Commit Graph

2886 Commits

Author SHA1 Message Date
Platin21
7a14acaa01 Fixes syscall intrinsic on macOS they use a slightly different section + register for the id 2022-01-05 16:49:58 +01:00
gingerBill
f818d0feb1 Fix #1344 2022-01-03 19:43:22 +00:00
gingerBill
defc1672c3 Revert fix #1344 2022-01-03 13:48:12 +00:00
gingerBill
12f459b5fb Fix #1344 2022-01-03 13:12:39 +00:00
gingerBill
e6b8f7e77a Fix #1398 2022-01-03 12:54:31 +00:00
gingerBill
236b08cb49 Fix #1356 2022-01-03 12:51:32 +00:00
gingerBill
6543491148 Clean up code for queue (no logic changed) 2022-01-02 15:31:47 +00:00
gingerBill
3cbf9c3719 Fix #1381 2022-01-02 14:45:39 +00:00
gingerBill
0d7cb02386 Fix conversion from float to quaternion 2021-12-31 23:20:14 +00:00
gingerBill
bdf66bb1e1 Correct abs type behaviour for quaternions 2021-12-31 22:54:12 +00:00
gingerBill
ed742846cb Correct lb_emit_ptr_offset bug caused by LLVMConstGEP assuming a signed index 2021-12-29 15:01:56 +00:00
gingerBill
78359f0c16 Merge pull request #1379 from weshardee/master
___$startup_runtime for MacOS
2021-12-28 14:09:42 +00:00
Platin21
86f831ddd1 This adds code which checks how big the return is and if it is to big returns the value via sret 2021-12-27 22:10:52 +01:00
Yawning Angel
dce120258f src: Add preliminary support for Linux AArch64
Tested via `tests/core`, on a Raspberry Pi 4 running the latest
64-bit Raspberry Pi OS image (LLVM 11).
2021-12-23 02:46:32 +00:00
Platin21
8dbeed8a9f Removes unneeded lookups / Adds sret to call site which fixes the mac bug 2021-12-23 01:59:31 +01:00
Wes Hardee
92ce7defb1 Merge branch 'master' of https://github.com/weshardee/Odin 2021-12-18 12:43:33 -06:00
Wes Hardee
a48317deee use '___$startup_runtime' for MacOS
MacOS needs 3 underscores unlike the 2 needed by Linux.
2021-12-18 12:43:24 -06:00
gingerBill
0548db4230 Disallow @(static) and @(thread_local) within defer statements 2021-12-17 11:06:17 +00:00
gingerBill
08a081ed45 Improve debug symbol retention with -debug -opt:0 2021-12-11 17:42:58 +00:00
gingerBill
6ce5608003 Correct odin doc default parameter value init_string generation 2021-12-03 11:46:54 +00:00
gingerBill
2b07afaf70 Add lb_build_addr on or_return and or_else for sanity's sake 2021-11-27 16:03:03 +00:00
gingerBill
db9326f31d Merge pull request #1332 from odin-lang/nasm-support
NASM Support
2021-11-26 23:06:33 +00:00
gingerBill
27106dd9ae Allow .asm, .s, and .S as valid assembly file extensions 2021-11-26 22:25:07 +00:00
gingerBill
33dc12a61a Add supported check for .asm files 2021-11-26 14:46:03 +00:00
gingerBill
ffd7ca57f1 Move nasm.exe to windows/nasm.exe, etc 2021-11-26 14:40:39 +00:00
Joakim Hentula
8255481204 Allow enums to pass #any_int checks 2021-11-25 11:20:40 +00:00
gingerBill
1e453cf1d7 Merge pull request #1296 from kevinsjoberg/do-not-filter-tests-when-empty
Do not filter test procedures when filter is empty
2021-11-25 09:13:31 +00:00
gingerBill
c34a331696 Add -extra-assembler-flags 2021-11-24 22:20:18 +00:00
gingerBill
994ee5a559 Allow for multiple .asm files 2021-11-24 17:57:31 +00:00
gingerBill
50057b0696 Add basic support for foreign import "foo.asm" on Windows with nasm.exe 2021-11-24 16:56:42 +00:00
gingerBill
bc775afccb Merge branch 'master' of https://github.com/odin-lang/Odin 2021-11-24 16:31:47 +00:00
gingerBill
504ea7deeb Fix update_untyped_expr_type for ternary if expressions with an untyped type 2021-11-24 16:31:37 +00:00
gingerBill
5e2280a787 Fix set_file_path_string and thread_safe_set_ast_file_from_id 2021-11-24 16:20:01 +00:00
DYSEQTA
0a87ffe0e6 Merge branch 'odin-lang:master' into master 2021-11-24 12:07:14 +11:00
DYSEQTA
e5f961b48f Removed '--help' from help string as per request. 2021-11-24 11:10:40 +11:00
gingerBill
9246e89c4a Fix #1328 2021-11-23 11:43:32 +00:00
gingerBill
8a2c829e07 Patch odin doc binary format 2021-11-21 14:06:15 +00:00
gingerBill
daebaa8b50 Fix #1319 2021-11-19 15:43:13 +00:00
gingerBill
3e04b45106 Allow cast from float to complex 2021-11-19 12:26:10 +00:00
gingerBill
ae59f214ee @(tag=<string>) - dummy attribute for tooling 2021-11-17 21:32:33 +00:00
gingerBill
9be0d18e5d Correct x in ptr logic 2021-11-17 11:02:11 +00:00
gingerBill
bb7703fcec Improve ptr_map_hash_key 2021-11-16 16:08:20 +00:00
cybermancer
1823b0cead Improve compiler help output with regard to command specific help. 2021-11-16 15:15:21 +11:00
gingerBill
1ec0b79345 Allow both -help and --help if passed as init_filename 2021-11-15 22:10:31 +00:00
gingerBill
e814a3693f Improve usage of file_id 2021-11-15 17:26:01 +00:00
gingerBill
f47311f2f6 Remove scope field from Ast 2021-11-14 15:22:40 +00:00
gingerBill
3f038428a7 Begin minimizing Ast size 2021-11-14 15:12:37 +00:00
Yawning Angel
c430a82721 src: Fix the syscall intrinsic code generation for Linux and Windows
The old assembly generated for the syscall intrinsic did not specify
clobber constraints.  This adds RCX and R11 (that are clobbered by
the instruction itself), and memory (that is clobbered by some
system calls) to the assembly constraints.

Note: This is still incorrect on FreeBSD, which clobbers more registers
and uses the carry flag instead of -errno in rax to indicate an error.
2021-11-13 09:53:20 +00:00
Kevin Sjöberg
61b02adc50 Do not filter test procedures when filter is empty
If `build_context.test_names` is empty, we do not need to perform any
filtering.
2021-11-10 15:49:23 +01:00
gingerBill
5cb23725ae Merge pull request #1289 from Kelimion/timings-export
Add functionality to export build timings.
2021-11-10 12:06:36 +00:00