Commit Graph

2268 Commits

Author SHA1 Message Date
gingerBill
dd69fcba07 Merge branch 'master' into llvm-integration 2020-03-26 15:56:55 +00:00
gingerBill
7909872877 Allow referencing a compound literal to act like C99 2020-03-26 15:56:08 +00:00
gingerBill
0a920b5439 Fix map references in selector expressions 2020-03-25 15:55:00 +00:00
gingerBill
921ee82c97 Fix range statements for enumerated arrays without an element value but with an index 2020-03-25 15:11:35 +00:00
gingerBill
b7893082ce Allow map indices to be referenced &m[key] and return a valid pointer if it exists otherwise nil 2020-03-24 15:51:17 +00:00
gingerBill
6bfe9b6656 Merge branch 'master' into llvm-integration 2020-03-24 15:48:57 +00:00
gingerBill
da703edbf4 Allow map indices to be referenced &m[key] and return a valid pointer if it exists otherwise nil 2020-03-24 15:48:31 +00:00
gingerBill
796331fea6 Support by-reference semantics in for value_ref, i in &some_array and for key, value_ref in &some_map 2020-03-24 15:33:34 +00:00
gingerBill
820095ddac Merge branch 'master' into llvm-integration 2020-03-24 15:29:44 +00:00
gingerBill
d57fbf48f0 Support by-reference semantics in for value_ref, index in &some_array and for key, value_ref in &some_map 2020-03-24 15:28:58 +00:00
gingerBill
53c842e9ba Change to new by-reference semantics for switch v in &value 2020-03-24 14:43:28 +00:00
gingerBill
1e375ba8de Merge branch 'master' into llvm-integration 2020-03-24 14:31:09 +00:00
gingerBill
5cbb266ef5 Change behaviour of switch v in &value to make v have by-reference semantics 2020-03-24 14:29:54 +00:00
gingerBill
0730e01b24 Merge branch 'master' into llvm-integration 2020-03-22 20:57:04 +00:00
gingerBill
dfc63dcb60 Fix for in for pointer to map expressions 2020-03-22 20:56:46 +00:00
gingerBill
8093062e3b Wrap all LLVM C includes 2020-03-19 15:36:13 +00:00
gingerBill
9524739dfc Revert demo.odin 2020-03-19 15:31:05 +00:00
gingerBill
054e018e23 Remove dead stuff from build.bat 2020-03-19 15:30:10 +00:00
gingerBill
3d81ad46d2 Change demo.odin to default 2020-03-19 15:29:32 +00:00
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
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
a9bc07dbff Merge pull request #586 from Tetralux/fix-reading
Fix os.read / os.read_entire_file on Windows
2020-03-12 22:35:12 +00:00
gingerBill
da283d5a7f Add byval 2020-03-12 22:33:49 +00:00
Tetralux
1181d7cf90 Fix os.read / os.read_entire_file
- DWORDs are NOT i32
- os.read didn't correctly read as much as it could
2020-03-12 22:31:00 +00:00
gingerBill
2a2d3273ea Add @require for global variables 2020-03-12 14:40:13 +00:00
gingerBill
775e6caf31 Merge pull request #583 from machinamentum/llvm-integration
LLVM: speed improvement changes.
2020-03-09 08:46:27 +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
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