Commit Graph
100 Commits
Author SHA1 Message Date
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
gingerBill 60a2eaf666 Revert changes to macOS Makefile 2021-04-25 18:04:07 +01:00
gingerBill ec2db568c1 Update Makefile for macOS to be more "correct" with Linux 2021-04-25 15:57:35 +01:00
gingerBill 1387fd9047 Make -llvm-api run first before old backend on Linux 2021-04-25 15:52:24 +01:00
gingerBill fb6288a54e Try specifying the specific libs on Linux 2021-04-25 15:48:54 +01:00
gingerBill 4d00058858 Try clang-11 2021-04-24 22:11:38 +01:00
gingerBill 5c26cf9d73 Try llvm-config-11 in the Makefil 2021-04-24 21:58:44 +01:00
gingerBill 6048d25d36 Try llvm-config-11 2021-04-24 21:26:14 +01:00