gingerBill
b6a1ec0229
Remove debug code
2021-05-05 23:34:53 +01:00
gingerBill
60685369b9
Fix typo
2021-05-05 23:34:39 +01:00
gingerBill
0f2a9e6143
Fix LLVM store point for nested types containing procedures (e.g. ^^proc())
2021-05-05 23:00:12 +01:00
gingerBill
278de3a92f
Unify AstTernaryExpr with AstTernaryIfExpr
...
Allow for both syntaxes `x if cond else y` and `cond ? x : y`
Removes the confusing semantics behind `?:` which could be `if` or `when` depending on the context.
2021-05-05 15:22:54 +01:00
gingerBill
abdf54800e
Improve ternary expression logic within parametric polymorphic parameter assignments
2021-05-05 15:14:39 +01:00
gingerBill
579b317be8
Mark external thread local globals
2021-05-05 11:47:47 +01:00
gingerBill
08360e2337
Minor cleanup
2021-05-05 10:56:19 +01:00
gingerBill
f11f84964d
Merge branch 'master' of https://github.com/odin-lang/Odin
2021-05-04 23:41:45 +01:00
gingerBill
bb9c1d04db
Fix missing newline check
2021-05-04 23:41:35 +01:00
gingerBill
6fa5eb9e1f
Update README.md
2021-05-04 15:27:41 +01:00
gingerBill
94570a24c1
Move anonymous proc generation into lbGenerator
2021-05-04 00:56:29 +01:00
gingerBill
17001bf38c
Nearly approach full functionality for -use-separate-modules coupled with multithreading
2021-05-04 00:45:09 +01:00
gingerBill
b83e67f45f
Get LLVM backend multithread for object generation with -use-separate-modules
2021-05-04 00:06:20 +01:00
gingerBill
a5eea97edb
Prepare to multithread object generation
2021-05-03 20:45:27 +01:00
gingerBill
866d5302fe
Add [EXPERIMENTAL] warning to -user-separate-modules help message
2021-05-03 20:05:45 +01:00
gingerBill
5d70289b69
Remove test code
2021-05-03 20:03:37 +01:00
gingerBill
d76ba7895b
Minor fixes to -use-separate-modules
2021-05-03 19:59:17 +01:00
gingerBill
dfe1dedeb1
Experimental support for -use-separate-modules
2021-05-03 19:39:36 +01:00
gingerBill
d027a5f1a4
Add min_f16 and max_f16 dependencies
2021-05-03 18:48:48 +01:00
gingerBill
746e880eb5
Begin work on making LLVM backend work with multiple modules for possible faster compilation
2021-05-03 17:43:14 +01:00
gingerBill
e4286d0ff9
Force zero_init in lb_add_local in certain cases
2021-05-03 15:57:35 +01:00
gingerBill
3a556eb304
Add -test-name:<string> flag to allow specific tests to be ran
2021-05-03 15:44:57 +01:00
gingerBill
b44a56118e
Begin cleanup for allowing for multiple LLVM modules
2021-05-03 15:26:40 +01:00
gingerBill
0d044eabac
Remove non-InContext type creations
2021-05-03 15:00:50 +01:00
gingerBill
3a5245dcce
Make sure builder uses the InContext version
2021-05-03 14:36:27 +01:00
gingerBill
357f66fcee
Fix typo
2021-05-03 13:45:17 +01:00
gingerBill
050f128554
Correct hashing for union #maybe
2021-05-03 13:40:36 +01:00
gingerBill
1a3784c4df
Allow unions which are comparable to also be valid map keys (i.e. hashable)
2021-05-03 13:38:15 +01:00
gingerBill
518ecaf9c9
Allow unions to be comparable if all their variants are comparable
2021-05-03 13:17:16 +01:00
gingerBill
77e2e1e1d0
Add missing skip_possible_newline_for_literal calls
2021-05-03 12:02:08 +01:00
gingerBill
348d25c43a
Fix parsing error for for
2021-05-02 00:11:36 +01:00
gingerBill
9854dbe889
Remove unused import
2021-05-01 23:14:14 +01:00
gingerBill
cf0bf1a7cb
Add testing.fail_now
2021-05-01 23:06:14 +01:00
gingerBill
364e6c9573
Move comment
2021-05-01 22:58:13 +01:00
gingerBill
52d38ae42b
Make the core:testing runner on windows run in a separate thread to handle crashes in more safe manner
2021-05-01 22:54:27 +01:00
gingerBill
b845db1618
Add prototypes for intrinsics.fixed_point_*
2021-05-01 18:26:51 +01:00
gingerBill
ced7700cdb
Add extra check for #no_bounds_check etc being followed by a newline or empty statement
2021-05-01 17:59:30 +01:00
gingerBill
406d2ab6ba
Simplify/Fix the state_flag behaviour for code generation
2021-05-01 17:42:59 +01:00
gingerBill
327116b84b
Merge branch 'master' of https://github.com/odin-lang/Odin
2021-05-01 17:30:27 +01:00
gingerBill
fd56b48825
Add ODIN_ROOT information
2021-05-01 17:30:22 +01:00
gingerBill
956b59d48c
Update old bin/README.md
2021-05-01 16:27:11 +01:00
gingerBill
97b537f800
Update intrinsics.odin for documentation
2021-05-01 16:23:50 +01:00
gingerBill
5f617c56e1
Minor stylistic code changes to compress and image packages
2021-04-30 10:58:29 +01:00
gingerBill
222bab501c
Disallow unnamed polymorphic records
2021-04-29 11:00:14 +01:00
gingerBill
bee637aef1
Update Makefile for Linux
2021-04-28 16:23:42 +01:00
gingerBill
d5844dfd2a
Update llvm-config checking on Linux
2021-04-28 16:07:46 +01:00
gingerBill
3751322521
Add -no-pie flag to linker on Linux
2021-04-28 15:36:29 +01:00
gingerBill
71ac145f49
Remove dead code related to old backend
2021-04-28 15:28:14 +01:00
gingerBill
e50ef33c2a
Fix #921
2021-04-28 12:34:16 +01:00
gingerBill
3061dd2497
Update build.bat to use wmic os get LocalDateTime /value instead of %DATE% which is not consistent across computers
2021-04-28 11:56:47 +01:00
gingerBill
102c29575b
Allow @(test) to be ran outside of *_test.odin files
2021-04-28 10:49:40 +01:00
gingerBill
24fce21d90
Add "naked" calling convention (removes prologue and epilogue)
2021-04-28 10:49:30 +01:00
gingerBill
afe185ee22
Fix procedure entity finding
2021-04-27 21:08:18 +01:00
gingerBill
ffffb04d85
Remove unused import
2021-04-27 17:21:52 +01:00
gingerBill
17390cd317
Implement sync2.Recursive_Mutex using WaitOnAddress and friends on Windows
2021-04-27 17:19:12 +01:00
gingerBill
7ac80544a1
Max sync2.Sema on windows be i32 for the counter internally.
2021-04-27 16:59:25 +01:00
gingerBill
96b60d8779
Reimplement sync2.Sema on windows with WaitOnAddress primitives
2021-04-27 16:56:11 +01:00
gingerBill
24f2d97c0e
Make atomic compare related intrinsics optional ok
2021-04-27 16:55:39 +01:00
gingerBill
f6d98d2a16
Fix Makefile for macOs
2021-04-27 13:29:14 +01:00
gingerBill
ab5460e2e2
Update CI
2021-04-27 13:22:30 +01:00
gingerBill
cd1658e56c
Update Makefile
2021-04-27 13:14:54 +01:00
gingerBill
e7e1866e50
Fix #893
2021-04-27 13:09:37 +01:00
gingerBill
94fd59e6f0
Make compound literals require trailing commas if followed by a newline
2021-04-26 23:05:00 +01:00
gingerBill
c07ab5f9ad
Change expr_level increment rules within a compound literal
2021-04-26 23:02:00 +01:00
gingerBill
06e0da97b7
Implement ODIN_ROOT #913
2021-04-26 22:56:32 +01:00
gingerBill
04535b2913
Fix constant aliasing for debug information
2021-04-26 22:36:20 +01:00
gingerBill
6667b78c12
Correct core:os/os2 mock-up
2021-04-26 22:08:15 +01:00
gingerBill
7e0c78eae7
Fix logic for \n ignoring
2021-04-26 21:39:49 +01:00
gingerBill
6d1eb473cf
Correct \n ignore rules
2021-04-26 21:25:44 +01:00
gingerBill
898245431f
Make -strict-style the default #871
2021-04-26 21:07:58 +01:00
gingerBill
43942a6199
Fix odin run on Windows
2021-04-26 20:54:18 +01:00
gingerBill
a38586420c
Fix race condition with procedure aliases checking for declarations on constant aliases
2021-04-26 19:46:42 +01:00
gingerBill
1aa9c49172
Remove warning for "Redundant 'auto_cast' applied to expression"
2021-04-26 19:17:25 +01:00
gingerBill
5a88fef483
Make corrections
2021-04-26 18:07:34 +01:00
gingerBill
43b55223af
Merge branch 'master' into old-backend-removal
2021-04-26 11:46:58 +01:00
gingerBill
aa846d0ea5
Fix union #maybe comparison against nil -llvm-api
2021-04-26 11:46:26 +01:00
gingerBill
1d628a5e3d
Change how GIT_SHA is rendered in odin version
2021-04-25 22:23:47 +01:00
gingerBill
af3784ebb6
Add -DODIN_VERSION_RAW to Makefile
2021-04-25 22:19:34 +01:00
gingerBill
ff933ca37f
Remove old shell scripts in favour of Makefile
2021-04-25 22:13:01 +01:00
gingerBill
bbf79fc1d4
Add ODIN_VERSION_RAW define to build.bat
2021-04-25 22:10:52 +01:00
gingerBill
2af8e956a6
Change versioning system from v0.13.1 to dev-2021-04
2021-04-25 22:09:22 +01:00
gingerBill
9ed826f6fb
Remove import "core:runtime" from core:math/bits
2021-04-25 21:51:33 +01:00
gingerBill
07f9e551c1
Revert build.bat
2021-04-25 21:38:29 +01:00
gingerBill
df4404e093
Fix typo in gb_get_env
2021-04-25 21:24:33 +01:00
gingerBill
583fd89fcf
Add gb_get_env
2021-04-25 21:22:15 +01:00
gingerBill
2691c394e0
Add intrinsics.count_zeros
2021-04-25 20:50:25 +01:00
gingerBill
4662bad59c
Remove unused file
2021-04-25 20:31:35 +01:00
gingerBill
7086b49ae6
Rename intrinsics to count_trailing_zeros and count_leading_zeros
2021-04-25 20:26:11 +01:00
gingerBill
72aa0e6e38
Replace many foreign llvm calls with intrinsics
2021-04-25 20:22:26 +01:00
gingerBill
cb2e6ea31d
Remove use_llvm_api related checks and other related things
2021-04-25 20:03:05 +01:00
gingerBill
74c683e908
Remove -llvm-api from CI
2021-04-25 19:59:35 +01:00
gingerBill
6383714bff
Remove old procedure ABI code
2021-04-25 19:56:46 +01:00
gingerBill
a25e796b00
Delete ir.cpp and related files
2021-04-25 19:52:37 +01:00
gingerBill
833784e196
Remove old backend specific code in main
2021-04-25 19:51:57 +01:00
gingerBill
66a70b9d27
Remove the need for LLVM_BACKEND_SUPPORT
2021-04-25 19:49:29 +01:00
gingerBill
cd125c0f41
Override -llvm-api to always be true
2021-04-25 19:46:48 +01:00
gingerBill
ff620422fa
Fix #857
2021-04-25 19:40:02 +01:00
gingerBill
5685a8d885
Fix #911 for -llvm-api backend
2021-04-25 19:19:44 +01:00
gingerBill
1bdce19c18
Update nightly.yml to support -llvm-api
2021-04-25 18:44:05 +01:00
gingerBill
041ff13672
Update CI for Linux
2021-04-25 18:06:29 +01:00