Commit Graph

1646 Commits

Author SHA1 Message Date
gingerBill
ed4d21045b Add LLVM_BACKEND_SUPPORT macro to make the backend optional 2020-03-19 15:14:31 +00:00
gingerBill
93955a0fd8 Remove context.std* parameters; Fix unary boolean not 2020-03-19 15:03:02 +00:00
gingerBill
fc0002ab67 Fix enum type info generation 2020-03-19 12:28:39 +00:00
gingerBill
04fe23a3c8 Have different categories for optimization passes 2020-03-19 10:57:14 +00:00
gingerBill
1707e004ec Merge branch 'llvm-integration' of https://github.com/odin-lang/Odin into llvm-integration 2020-03-15 14:37:46 +00:00
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
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
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
Joshua Huelsman
4468ddf8f8 LLVM: speed improvement changes. 2020-03-09 03:21:08 -04: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
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
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