gingerBill
|
0f91ffe28f
Add intrinsics.{ptr_offset, ptr_sub}
|
4 years ago |
gingerBill
|
4b46d691f8
Improve logic for intrinsics.{mem_copy, mem_copy_non_overlapping, mem_zero} to use the `*.inline` LLVM variants when possible
|
4 years ago |
gingerBill
|
bb7bd94b0a
Fix comparison bug of enumerated arrays
|
4 years ago |
gingerBill
|
4a886a1bc5
Disable copy elision on assignments for the time being
|
4 years ago |
gingerBill
|
c21c754b6f
Minimize copying on getting the address of a call if required
|
4 years ago |
gingerBill
|
0c46d06e63
Add `intrinsics.mem_zero`
|
4 years ago |
gingerBill
|
44b6e7c45d
Move the mem zero into a separate procedure for reuse
|
4 years ago |
gingerBill
|
284a2631fd
Refactoring of lbFunctionType retrieval
|
4 years ago |
gingerBill
|
3f156bcb4b
Refactor backend code for assignments; Refactor some statements into separate procedures
|
4 years ago |
gingerBill
|
d35a9e65b6
Heavily improve the copy elision logic in the backend
|
4 years ago |
gingerBill
|
c440296ae8
Add `@(link_section=<string>)` for global variables
|
4 years ago |
gingerBill
|
79f115d6a7
Handle #c_vararg correctly
|
4 years ago |
gingerBill
|
b8f8d4c3a1
Modify ABI for the Odin calling conventions on SysV slightly
|
4 years ago |
gingerBill
|
247f4f3293
Fix `..=` logic in the backend
|
4 years ago |
gingerBill
|
9c54ed5792
Add range-based error messages to `-verbose-errors`
|
4 years ago |
gingerBill
|
26ce40c188
Remove @(static) for global variables
|
4 years ago |
gingerBill
|
b34e4a9fd1
More minor linkage changes
|
4 years ago |
gingerBill
|
28561ef5f5
Minor change to internal linkage stuff
|
4 years ago |
gingerBill
|
e82e4398b6
Add `intrinsics.mem_copy` and `intrinsics.mem_copy_non_overlapping`
|
4 years ago |
gingerBill
|
e0225c3579
Add `intrinsics.sqrt` for floating-point values
|
4 years ago |
gingerBill
|
6ef96d3300
Improve untyped to typed logic for aiding the backend
|
4 years ago |
gingerBill
|
2e633f57a0
Add concrete type information for untyped values as procedure arguments
|
4 years ago |
gingerBill
|
ce08e832f7
Allow `..=` alongside `..` as a "full range" operator; Update `core:odin/parser` etc
|
4 years ago |
gingerBill
|
1cf6b6679d
Add custom basic dead instruction elimination pass
|
4 years ago |
gingerBill
|
7b7081d607
Remove old dead code
|
4 years ago |
gingerBill
|
5ae564cc8c
Add name to aggregate result pointer to procedures
|
4 years ago |
gingerBill
|
f7b1290fe9
Change `for i in x..y {}` behaviour
|
4 years ago |
gingerBill
|
b01c2e1017
Disallow slicing of constant values
|
4 years ago |
gingerBill
|
63b54ce7c6
Add minor ignoring hint on type assertions to get better code generation with no optimizations enabled
|
4 years ago |
gingerBill
|
2e5f57d8a1
Fix #741
|
4 years ago |