gingerBill
|
5faa560f82
|
Make container.Map have similar semantics to the built-in map type
|
2020-12-15 23:23:07 +00:00 |
|
gingerBill
|
5ab7ec5b16
|
Support any comparable type for map keys
|
2020-11-29 16:37:19 +00:00 |
|
gingerBill
|
57f5976ac1
|
Support map keys for simple compare types
|
2020-11-29 16:12:21 +00:00 |
|
gingerBill
|
1dfe0cdd1d
|
Simplify hashing approach map
|
2020-11-29 15:50:29 +00:00 |
|
gingerBill
|
97c66c9c73
|
Add intrinsics.type_hasher_proc; Make map work with generic hasher procedure
|
2020-11-29 15:27:53 +00:00 |
|
gingerBill
|
39bed567b3
|
Add intrinsics.type_equal_proc; Make map use an internal equal procedure to compare keys
|
2020-11-29 14:22:42 +00:00 |
|
gingerBill
|
4762d2f2d1
|
map type internal reorganization
|
2020-11-23 16:56:31 +00:00 |
|
gingerBill
|
67bc35e882
|
Fix logic for comparisons of struct #raw_union types
|
2020-11-23 16:19:26 +00:00 |
|
gingerBill
|
4e370e6ed8
|
Add equal procedure field to runtime.Type_Info_Struct
|
2020-11-23 15:53:49 +00:00 |
|
gingerBill
|
0b30c3dc5a
|
Add flags: Type_Info_Flags, to runtime.Type_Info
|
2020-11-23 14:35:31 +00:00 |
|
gingerBill
|
9e42cb1595
|
Add comparisons to structs where all fields are comparable == and !=
|
2020-11-23 12:20:04 +00:00 |
|
gingerBill
|
63e4a2341f
|
Support string literals for fixed arrays of runes; Add %q support for arrays/slices of bytes
|
2020-11-20 16:24:23 +00:00 |
|
gingerBill
|
6416a6f39c
|
Allow string literals for [N]byte
|
2020-11-20 16:01:59 +00:00 |
|
gingerBill
|
db0bcbc4f4
|
Fix calling convention for new LLVM ABI, and changePtrSet index to be u32 rather than isize
|
2020-11-15 21:19:08 +00:00 |
|
gingerBill
|
3c1c10a178
|
Begin clarifying allocation patterns by changing from heap_allocator to specific arenas
|
2020-11-15 18:08:52 +00:00 |
|
gingerBill
|
a64ea342df
|
Improve USE_NEW_LLVM_ABI_SYSTEM's System V ABI
|
2020-11-12 23:40:13 +00:00 |
|
gingerBill
|
70b8b3c7dd
|
Update LLVM backend to begin work on a generic ABI system
|
2020-11-12 00:43:49 +00:00 |
|
gingerBill
|
c26cb470a2
|
Fix LLVM-API type cycle for procedures of named procedures
|
2020-11-09 10:27:27 +00:00 |
|
gingerBill
|
44baf56d62
|
Fix cyclic check in is_type_polymorphic
|
2020-11-08 23:54:09 +00:00 |
|
gingerBill
|
4629754f7c
|
Inline asm expression (-llvm-api)
See https://llvm.org/docs/LangRef.html#inline-assembler-expressions
Example:
```
x := asm(i32) -> i32 {
"bswap $0",
"=r,r",
}(123);
```
Allowed directives `#side_effect`, `#align_stack`, `#att`, `#intel` e.g. `asm() #side_effect #intel {...}`
|
2020-10-24 16:32:37 +01:00 |
|
gingerBill
|
feeb342c00
|
Improve multiple return value copy-elision
|
2020-10-20 17:08:55 +01:00 |
|
gingerBill
|
f8e697dbbb
|
Fix indirect selector bug with using on offset_of
|
2020-10-15 14:58:57 +01:00 |
|
gingerBill
|
609af3a651
|
Fix and clean up default procedure parameter code for non-constant types
|
2020-09-22 12:06:05 +01:00 |
|
gingerBill
|
c1149dbdee
|
Update math and math/linalg; add "pure_none" calling convention
|
2020-09-10 15:00:19 +01:00 |
|
gingerBill
|
d31c63c0ae
|
Fix #714
|
2020-08-27 00:11:02 +01:00 |
|
gingerBill
|
c18fc2da9f
|
Remove some dead code
|
2020-07-14 16:36:33 +01:00 |
|
gingerBill
|
4533c02cc7
|
Improve intrinsics.type_is_simple_compare
|
2020-06-12 14:37:27 +01:00 |
|
gingerBill
|
4acae2af44
|
Add support for using on relative pointers #670
|
2020-06-10 14:25:11 +01:00 |
|
gingerBill
|
6b3ee447f0
|
Basic cross compilation support
|
2020-06-10 12:26:31 +01:00 |
|
gingerBill
|
1a0614b0d7
|
Improve performance of tokenization and parsing
|
2020-05-27 18:23:37 +01:00 |
|
gingerBill
|
e1bdaa981a
|
Relative pointer and relative slices
|
2020-05-15 18:45:24 +01:00 |
|
gingerBill
|
ff92eb9112
|
Relative pointers
|
2020-05-15 17:37:00 +01:00 |
|
gingerBill
|
e27f5796d6
|
Add experimental atom op tables for llvm-backend
|
2020-05-02 18:45:57 +01:00 |
|
gingerBill
|
eb2b3572bb
|
Move TypeProc outside
|
2020-05-02 11:59:43 +01:00 |
|
gingerBill
|
f63b9806d2
|
LLVM API: Fix compound literals with constant parameters to union fields
|
2020-04-25 14:45:34 +01:00 |
|
gingerBill
|
97f7a558fa
|
#optional_ok tag for procedures
|
2020-04-19 21:45:04 +01:00 |
|
gingerBill
|
f229084baa
|
Basic polymorphic named procedure parameters for procedures and records
|
2020-04-13 15:48:56 +01:00 |
|
gingerBill
|
f09b6a4c90
|
Simplify compiler's Map and create a StringMap specifically for strings
|
2020-04-13 13:02:30 +01:00 |
|
gingerBill
|
90593fe6ae
|
Endian specific floating point types (e.g. f32be)
|
2020-04-11 21:34:55 +01:00 |
|
gingerBill
|
1b3ee7153c
|
Fix #599 - llvm-api GEP for structs with custom alignment
|
2020-03-28 16:08:14 +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
|
0f399a7294
|
Add union #maybe
|
2020-02-01 11:10:28 +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
|
ba85e432e7
|
Fix Proc Type ABI printing on System V
|
2020-01-12 13:43:45 +00:00 |
|
gingerBill
|
16a7c55334
|
Add x y z w fields to quaternion types; Improve linalg quaternion mathematics
|
2020-01-01 16:14:00 +00:00 |
|
gingerBill
|
f99f351e01
|
Add constant literal expressions
|
2019-12-27 15:49:52 +00:00 |
|
gingerBill
|
880c7f01a8
|
Fix array lengths with enum value counts.
|
2019-12-27 13:55:18 +00:00 |
|
gingerBill
|
10f0961184
|
Enumerated arrays [Enum_Type]Elem_Type
|
2019-12-27 12:51:02 +00:00 |
|
gingerBill
|
995ba0df9a
|
Fix using on array in struct
|
2019-12-21 14:42:08 +00:00 |
|
gingerBill
|
7fbe0a6f23
|
Fix nil comparisons for soa slices and dynamic arrays
|
2019-12-01 11:56:08 +00:00 |
|