Commit Graph
100 Commits
Author SHA1 Message Date
gingerBill 5169dc07c7 Fix lb_add_proc_attribute_at_index 2020-03-15 14:37:39 +00:00
gingerBill 18fb6a4be4 Merge branch 'master' into llvm-integration 2020-03-15 14:31:26 +00:00
gingerBill 8dba0e332c Fix #590 2020-03-15 14:29:45 +00:00
gingerBill 3951b93d0a Fix branch statements within inline for blocks (partial hack) 2020-03-15 14:27:54 +00:00
gingerBill 10bac2445b Fix ir_print for byval types 2020-03-13 16:48:10 +00:00
gingerBill 06e364b9bd Apply byval to sret for System V ABI 2020-03-13 08:52:23 +00:00
gingerBill ce90509a07 Add initial -mem2reg pass to opt 2020-03-13 00:04:03 +00:00
gingerBill a0d0e93475 Fix os.read_entire_file 2020-03-12 23:45:46 +00:00
gingerBill 2ce1f4ba9f Revert os_windows.odin behaviour 2020-03-12 23:37:24 +00:00
gingerBill a985449c31 Fix os_windows.h 2020-03-12 23:24:30 +00:00
gingerBill 6abc93ad84 Fix os.read for windows 2020-03-12 23:22:01 +00:00
gingerBill da283d5a7f Add byval 2020-03-12 22:33:49 +00:00
gingerBill 2a2d3273ea Add @require for global variables 2020-03-12 14:40:13 +00:00
gingerBill bf0c6f5a30 Fixes for constants and nil parameters 2020-03-08 19:38:50 +00:00
gingerBill d1e670335f Fix lb_find_or_add_entity_string_byte_slice 2020-03-08 18:50:10 +00:00
gingerBill c6c6c56ba9 Fix mem.set for LLVM C API 2020-03-08 18:44:45 +00:00
gingerBill d4e95282c2 Fix llvm.memset for both backends 2020-03-08 18:42:30 +00:00
gingerBill 5a02ebe2c8 Fix foreign import dependencies; Fix lbParamPass_Integer ABI 2020-03-08 17:57:46 +00:00
gingerBill dae817e5ab Integrate linker code with the new LLVM API backend 2020-03-08 17:44:08 +00:00
gingerBill 28502ba53b Fix context system; add more to -show-more-timings for LLVM API; Add ODIN_USE_LLVM_API global constant 2020-03-08 12:34:36 +00:00
gingerBill 8dc74a004c Fix nested type declarations name generation, to be internally consistent 2020-03-08 11:46:05 +00:00
gingerBill c584456a21 Fix logical binary expressions 2020-03-08 10:43:00 +00:00
gingerBill c74d8405ec Merge branch 'master' into llvm-integration 2020-03-08 10:13:19 +00:00
gingerBill e0a370f8f1 Remove adding to path in shell.bat 2020-03-08 10:12:56 +00:00
gingerBill 4cf70f360b Add clone for ast.Ternary_If_Expr and ast.Ternary_When_Expr 2020-03-07 21:41:27 +00:00
gingerBill a83d9f59f6 Fix typo in parser.odin 2020-03-07 21:12:52 +00:00
gingerBill 5d14189a18 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-03-07 16:20:04 +00:00
gingerBill fb686bdebd Remove the need for parapoly to print an enum as a string 2020-03-07 16:19:55 +00:00
gingerBill f92334a769 Basic functionality, except for map and correct nested typename mangling 2020-03-07 10:38:14 +00:00
gingerBill 8d2ad0da0e Fill in more of the llvm_backend code generation 2020-03-05 22:01:07 +00:00
gingerBill db7a3ffd2a Merge branch 'master' into llvm-integration 2020-03-05 21:12:16 +00:00
gingerBill c213d72ec6 Fix #580 defer bug 2020-03-05 20:58:59 +00:00
gingerBill 01b1385672 Disable tmp_block behaviour for ir_find_or_generate_context_ptr 2020-03-05 20:36:53 +00:00
gingerBill e92fdb4a99 x if cond else y and x when cond else y expressions 2020-03-05 20:34:30 +00:00
gingerBill 7d93dd6024 Move module pass to after all function passes 2020-03-05 19:00:23 +00:00
gingerBill e1da631d26 General functionality without context 2020-03-04 22:09:58 +00:00
gingerBill 6151fdb324 Merge branch 'master' into llvm-integration 2020-03-04 19:27:01 +00:00
gingerBill 3f63e12198 Add -subsystem:console and -subsystem:windows flags for windows 2020-03-02 18:54:56 +00:00
gingerBill 10cde925ca Add checks for pre-existing type declarations. 2020-03-02 18:48:52 +00:00
gingerBill 56240240f6 Range Statement support 2020-02-29 14:29:47 +00:00
gingerBill f83e1b8b0a Fix any type and casting to any; Fix switch statement 2020-02-29 12:24:52 +00:00
gingerBill a27c68f526 Type_Info initialization 2020-02-29 11:12:37 +00:00
gingerBill 8ec5987ae1 Merge branch 'master' into llvm-integration 2020-02-29 09:55:25 +00:00
gingerBill ce20604e3c Fix #578 2020-02-29 09:35:41 +00:00
gingerBill 3d74c2f6c0 Add proc(#const x: Type) to enforce a constant parameter (but not polymorphic) to a procedure 2020-02-26 22:53:40 +00:00
gingerBill 1596bca92d Add intrinsics.cpu_relax 2020-02-26 22:29:12 +00:00
gingerBill 470508adbc Clean-up initialization code 2020-02-26 22:05:52 +00:00
gingerBill b13423d7f7 Global variable initialization support 2020-02-23 16:25:11 +00:00
gingerBill 703404a54d Merge branch 'master' into llvm-integration 2020-02-23 10:55:41 +00:00
gingerBill 15f5c85379 Fix comparison against nil for union #maybe pointers 2020-02-23 10:55:09 +00:00
gingerBill e197af766d Merge branch 'master' into llvm-integration 2020-02-23 10:39:57 +00:00
gingerBill 5073fcd39e Improve error message on using with procedure parameters #568 2020-02-23 10:37:27 +00:00
gingerBill a72ac6f841 Fix #572 2020-02-23 10:26:49 +00:00
gingerBill 8a67775149 Fix #571 2020-02-23 10:20:12 +00:00
gingerBill 85e331d5e2 Fix #566 2020-02-23 10:13:42 +00:00
gingerBill 81b00c7a3e Fix #563 2020-02-23 10:11:43 +00:00
gingerBill 2180f4a475 Basic work on obj generation 2020-02-23 10:04:25 +00:00
gingerBill bfda101686 Get basic IR code generation working properly 2020-02-10 00:14:43 +00:00
gingerBill 35711a400c Anonymous procedure literal support 2020-02-08 12:49:38 +00:00
gingerBill 66da96284a Add defer statement for LB 2020-02-07 00:01:44 +00:00
gingerBill 7d9600b740 Ternary Expr; lbAddr extra; Phi node support 2020-02-06 23:33:41 +00:00
gingerBill 09e1cf0737 IfStmt 2020-02-05 23:41:10 +00:00
gingerBill 992858b687 Add ReturnStmt 2020-02-05 22:39:23 +00:00
gingerBill b555b0083a Slowly add more statements and expressions; Add header file 2020-02-05 20:18:19 +00:00
gingerBill 0103cedad7 Port code for lb_build_call_expr 2020-02-02 23:36:15 +00:00
gingerBill d56807095a Implement constant value generation from ExactValue 2020-02-02 18:33:13 +00:00
gingerBill 5dc82c2720 Correctly generate LLVM types from Odin types. 2020-02-02 12:34:49 +00:00
gingerBill 5f1b397a05 Use lbValue to represent values everywhere 2020-02-01 23:52:22 +00:00
gingerBill 6ed6a91a64 Begin LLVM C API integration 2020-02-01 22:50:57 +00:00
gingerBill 0f399a7294 Add union #maybe 2020-02-01 11:10:28 +00:00
gingerBill 4bcb667e97 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-01-31 23:34:08 +00:00
gingerBill 7e6454b2f7 Add odin [command] -help (not requiring a file to be passed) 2020-01-31 23:34:00 +00:00
gingerBill 7a4ec48389 Fix missing allocator 2020-01-26 21:10:56 +00:00
gingerBill a101e0d7ba Add utf8.string_to_runes utf8.runes_to_string 2020-01-26 20:55:46 +00:00
gingerBill 64f5c9ab58 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-01-26 20:44:32 +00:00
gingerBill 0ee5a07d01 Add package unicode letter.odin 2020-01-26 20:44:27 +00:00
gingerBill 14c4fed94c v0.12.0 2020-01-18 15:32:15 +00:00
gingerBill c3205316ed Remove debug printing 2020-01-18 14:53:53 +00:00
gingerBill b542ef273d Begin work on -target:windows_386 2020-01-18 14:44:53 +00:00
gingerBill 404132de17 Fix microsoft_craziness.h to work correctly 2020-01-18 12:36:18 +00:00
gingerBill cd43f4c94c Add suggestions for indexing constant values with a variable index 2020-01-18 12:09:26 +00:00
gingerBill 23ff98dea0 Fix microsoft_craziness.h 2020-01-18 12:08:45 +00:00
gingerBill c3a8e232a5 Add new intrinsics for polymorphic records:
type_is_specialized_polymorphic_record, type_is_unspecialized_polymorphic_record, type_polymorphic_record_parameter_count, type_polymorphic_record_parameter_value
2020-01-18 11:27:41 +00:00
gingerBill 7f89f6b582 Add intrinsics.type_is_specialization_of 2020-01-17 23:30:38 +00:00
gingerBill 159150c6d9 Allow not_in as keyword over notin, but still allow notin to work 2020-01-16 10:00:14 +00:00
gingerBill 527b39ce2b Merge remote-tracking branch 'origin/master' 2020-01-16 09:07:52 +00:00
gingerBill 5af3c7b0e8 Fix constant slice checking, again 2020-01-16 09:05:17 +00:00
gingerBill 5db4bd9944 Fix #536 2020-01-15 12:01:29 +00:00
gingerBill 20b410f149 Fix #540 2020-01-15 11:56:42 +00:00
gingerBill ae7cbd5171 Add debug info for enumerated arrays 2020-01-14 17:37:45 +00:00
gingerBill 04f7225ea5 Exact value zero value for T{} of basic types 2020-01-14 17:36:37 +00:00
gingerBill f0c6f29f82 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-01-12 13:53:57 +00:00
gingerBill 7d9a9a2283 Add extra check for opaque types 2020-01-12 13:53:51 +00:00
gingerBill ba85e432e7 Fix Proc Type ABI printing on System V 2020-01-12 13:43:45 +00:00
gingerBill cfba29002a Add extra set_procedure_abi_types sanity checks in IR 2020-01-11 20:29:46 +00:00
gingerBill 11c7b6a2e4 Fix len of type bug 2020-01-11 20:26:36 +00:00
gingerBill 47f9876b36 Merge branch 'master' of https://github.com/odin-lang/Odin 2020-01-11 20:20:20 +00:00
gingerBill ff31f9a900 Fix @thread_local IR printing 2020-01-11 20:19:52 +00:00
gingerBill ebc4867514 Fix #521 Explicit union tag values 2020-01-11 20:16:42 +00:00
gingerBill e1ccba3de5 Improve runtime/default_allocators.odin 2020-01-11 20:12:50 +00:00