Commit Graph

1678 Commits

Author SHA1 Message Date
Folkert
b43101fca5 add specialize_suspended 2021-11-19 21:30:14 +01:00
Folkert
992016d2ae add HostSpecializations 2021-11-19 21:29:34 +01:00
Folkert
e54344ac8b storage subs for External specializations 2021-11-19 17:10:30 +01:00
Folkert
206c8889df Use StorageSubs for pending specializations 2021-11-19 13:22:17 +01:00
Michael Downey
d11bb93539
Merge branch 'trunk' into add_list_all 2021-11-18 16:09:24 -05:00
Folkert
f99542f066 add special symbol for removed specializations 2021-11-18 13:15:00 +01:00
Michael Downey
9d587d37b4
Merge branch 'trunk' into add_list_all 2021-11-18 06:41:08 -05:00
Folkert
f9c81bffe0 make external specializations more efficient
- create fewer Subs values
- don't merge Subs if not needed
2021-11-17 23:09:20 +01:00
Folkert
75126b09fd refactor procs.specialized 2021-11-17 22:33:24 +01:00
Folkert
3b1e0eeb24 store a subs instead of a solved type in external specializations 2021-11-17 16:31:13 +01:00
Folkert
237d8d1c0b fix the Default instance for subs
we later rely on some variables always existing (numbers, empty record, empty tag union)
but the default instance did not insert those
2021-11-17 16:29:16 +01:00
Folkert
aa4ee812fe remove dead add_pending function 2021-11-17 13:23:46 +01:00
Folkert
d3528a3ed3 refactor ExternalSpecializations to use Vec 2021-11-17 13:21:58 +01:00
Folkert
ede5967ced Merge remote-tracking branch 'origin/trunk' into deep-copy-var-to 2021-11-16 23:56:11 +01:00
Folkert
849510c42c WIP 2021-11-16 23:55:11 +01:00
Michael Downey
51ad326d11 fmt 2021-11-16 17:30:04 -05:00
Michael Downey
d946b84e63 adding initial List.all 2021-11-16 16:34:36 -05:00
Anton-4
2a4b3d3cd3 added cfg to static size check for arm CPUs 2021-11-16 16:56:05 +01:00
Richard Feldman
28273b67da
Merge pull request #1970 from rtfeldman/shrink-call-type
Shrink call type
2021-11-15 19:56:21 -08:00
Richard Feldman
8258fc05e6
Merge pull request #1979 from rtfeldman/decision-tree-remove-clone
Decision tree remove clone
2021-11-15 19:49:12 -08:00
Richard Feldman
b28430451c
Merge pull request #1981 from rtfeldman/solved-type-remove-hash
Solved type remove hash
2021-11-15 19:47:06 -08:00
Folkert
7c4300a7a1 clarify what pending means 2021-11-15 22:43:32 +01:00
Folkert de Vries
f49bd04e68
Merge branch 'trunk' into decision-tree-remove-clone 2021-11-15 22:34:56 +01:00
satotake
c253273490 Merge branch 'trunk' into refactor-builtin-list-drop 2021-11-15 11:37:32 +00:00
satotake
8e29daa160 remove low-level List.drop codes 2021-11-15 11:28:38 +00:00
Folkert
8ebd09b616 make fewer intermediate pending specializations 2021-11-14 22:28:21 +01:00
Folkert
2c0aac2a6a remove solved type hash instance 2021-11-14 22:20:06 +01:00
Folkert de Vries
05ac111975
Merge branch 'trunk' into decision-tree-remove-clone 2021-11-14 20:21:52 +01:00
Folkert
d29265759b simplify edge counting 2021-11-14 19:49:02 +01:00
Folkert
cb55f66b5b pass slice instead of vector 2021-11-14 19:39:03 +01:00
Folkert
a7f9b34132 clippy 2021-11-14 02:06:57 +01:00
Folkert
fcb89cbcd8 Merge remote-tracking branch 'origin/trunk' into shrink-call-type 2021-11-13 19:31:30 +01:00
Folkert
f8b4ce0317 shrink tag id sizes in layouts 2021-11-13 19:31:20 +01:00
Theo Felippe
ea5aac7b74 Merge branch 'trunk' into builtins-str-trim-right 2021-11-13 18:05:40 +00:00
Theo Felippe
8d7c252fce implemented Str.trimRight 2021-11-13 18:02:58 +00:00
Richard Feldman
0b2df3154c Merge remote-tracking branch 'origin/trunk' into shrink-call-type 2021-11-13 08:21:13 -08:00
Richard Feldman
1c6fab7043
Merge pull request #1916 from rtfeldman/tag-union-imitate-rust
Tag union imitate rust
2021-11-13 08:13:32 -08:00
Folkert
f522d28a00 clippy 2021-11-13 16:04:23 +01:00
Folkert
83953b0bba shrink Call 2021-11-13 15:59:19 +01:00
Folkert
13713ee6ad pass layout by reference 2021-11-13 15:43:49 +01:00
Folkert
e2f7606f25 shrink higher order with indirection 2021-11-13 15:42:47 +01:00
satotake
9ec2bc7946 Remove takeFirst and takeLast from backend 2021-11-13 06:03:18 +00:00
satotake
2e073d57ea destruct record at high level 2021-11-13 05:13:46 +00:00
satotake
98d2c57edf move List.sublist to backend 2021-11-13 04:57:28 +00:00
Folkert
c827256e47 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-11 18:58:49 +01:00
Folkert
33e8f9a6b7 Merge remote-tracking branch 'origin/trunk' into cleanup-im-dependency 2021-11-10 17:19:54 +01:00
Folkert
144dbef434 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-10 17:19:30 +01:00
Folkert
2262dcb3f9 clean up some other dependencies 2021-11-10 16:25:03 +01:00
Michael Downey
07cd3850d7
Merge branch 'trunk' into str_trim_left 2021-11-09 19:43:26 -05:00
Michael Downey
7e074d300e cleaning up and adding comments 2021-11-09 14:37:31 -05:00
Michael Downey
1bc278d962 initial commit of Str.trimLeft 2021-11-09 14:25:24 -05:00
Folkert
94efbd0e95 Merge remote-tracking branch 'origin/trunk' into builtins-list-take-last 2021-11-09 16:18:19 +01:00
satotake
772fc9c021 Implement List.takeLast 2021-11-09 12:26:17 +00:00
ayazhafiz
9e50580715 Walk the input list during List.find alias analysis 2021-11-08 22:00:03 -05:00
ayazhafiz
75b439cb31 Remove unnecessary clone 2021-11-08 21:03:15 -05:00
ayazhafiz
731f7a11a1 Remove unused variable 2021-11-08 21:03:15 -05:00
ayazhafiz
f65b174ab5 Implement List.find
`List.find : List elem, (elem -> Bool) -> Result elem [ NotFound ]*`
behaves as follows:

```
>>> List.find [1, 2, 3] (\n -> n > 2)
Ok 2
>>> List.find [1, 2, 3] (\n -> n > 4)
Err NotFound
```

We implement this as builtin in two phases. First, we call out to a
pure-llvm-lowlevel `ListFindUnsafe` that returns a record indicating
whether a satisfying element was found, and the value of that element
(the value is all null bytes if the element wasn't found). Then, we lift
that record to a `Result` via a standard construction of the can AST.

Closes #1909
2021-11-08 21:03:14 -05:00
Folkert
a9d483cb60 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-08 22:31:17 +01:00
Folkert
8266284567 clippy 2021-11-08 22:31:08 +01:00
satotake
878400f95f Implement List.takeFirst 2021-11-08 14:10:53 +00:00
Folkert
e7ec575a81 trying to track down uninitialized memory creation 2021-11-07 21:41:12 +01:00
Kevin Sjöberg
44938a9e35 Implement List.any 2021-11-07 20:44:10 +01:00
Folkert
0e1e3381f0 Merge remote-tracking branch 'origin/trunk' into tag-union-imitate-rust 2021-11-07 15:29:55 +01:00
Brendan Hansknecht
73e2cbcb1e Make versions numbers consistent and matching the lock files 2021-11-06 13:24:45 -07:00
Brendan Hansknecht
bddc08c977 Remove unused dependencies 2021-11-05 16:58:11 -07:00
Folkert
5cd232816b waypoint 2021-11-05 21:30:20 +01:00
Richard Feldman
18228ec39f
Merge pull request #1885 from rtfeldman/tags-invalid-alignment
fix invalid alignment in tags
2021-11-04 19:32:26 -04:00
Richard Feldman
ff48abdd06 Refactor NonRecursive to use flat_map and match 2021-11-03 19:44:35 -04:00
Folkert
aa9bf6bdff fix alignment problem 2021-11-03 18:21:07 +01:00
Folkert
c5005d3dd1 Merge remote-tracking branch 'origin/trunk' into partialproc-by-reference 2021-11-03 15:32:39 +01:00
Folkert
353ad04229 simplify noncapturing closure IR gen 2021-11-03 15:18:11 +01:00
Folkert
bc71cf53d6 simplify capturing closure IR gen 2021-11-03 14:26:14 +01:00
Folkert
a15183a7d1 refactor 2021-11-03 14:09:04 +01:00
Folkert
74df66a472 make new PartialProcs struct 2021-11-03 13:59:00 +01:00
Anton-4
a3fc724df3 removed unused maplit 2021-11-03 10:50:25 +01:00
Folkert
487948e514 WIP 2021-11-02 21:08:12 +01:00
Folkert
0ad83fe990 Merge remote-tracking branch 'origin/trunk' into morphic-spec-sortwith 2021-11-01 23:11:52 +01:00
Folkert
89b850983d all higher order lowlevels have morphic specs 2021-11-01 23:05:59 +01:00
Folkert
a36fddd27a morphic for List.map, List.mapWithIndex, List.walk 2021-11-01 21:21:26 +01:00
Folkert
ca537a44b8 thread through update_mode 2021-11-01 20:12:39 +01:00
Folkert
830764221e add specification for sortWith 2021-10-31 22:31:55 +01:00
Kevin Sjöberg
0f8047cbf0 Remove dead code 2021-10-31 21:08:41 +01:00
Kevin Sjöberg
f9ed060e49 Implement List.map4 2021-10-31 21:08:41 +01:00
Folkert
c7920b2a24 refactor 2021-10-31 17:38:07 +01:00
Folkert
a40c4f4fd5 use Entry 2021-10-31 13:47:02 +01:00
Folkert
d35686f3a8 hash less 2021-10-29 21:28:11 +02:00
Folkert
eda904e63e don't register debug idents while doing work (it happens afterwards 2021-10-29 21:26:36 +02:00
Richard Feldman
2980e195ce
Merge pull request #1835 from rtfeldman/fix-ir-clones
remove clones in ir.rs
2021-10-28 22:15:17 -04:00
Dan Gieschen Knutson
02117ba512
Merge branch 'trunk' into str_trim 2021-10-27 18:01:29 -05:00
Folkert
2adaf2be7f remove clones 2021-10-27 23:07:33 +02:00
Folkert
3559a0ed6b move check 2021-10-27 22:25:37 +02:00
Folkert
456b6fd4d9 remove clone 2021-10-27 22:25:17 +02:00
Folkert
d561f2661d speedups 2021-10-27 00:01:21 +02:00
Dan Knutson
e7523ad41d add Roc wiring 2021-10-25 20:22:37 -05:00
Folkert
127b1495a7 add comment 2021-10-22 23:00:47 +02:00
Folkert
2e773e5f66 turn module_thunks into a slice 2021-10-22 22:59:00 +02:00
Folkert
6a6ea64323 abstract checking of is module thunk 2021-10-22 22:16:52 +02:00
Folkert
6400baf2c1 shrink Procs until the last moment 2021-10-22 21:42:53 +02:00
Folkert
eaaf3eb940 simplify monomorphization first steps 2021-10-22 18:12:46 +02:00
Folkert
0529d6dbc6 refactor insert_named 2021-10-22 17:22:15 +02:00
Folkert
9d343ab206 use vector instead of set 2021-10-22 16:57:14 +02:00
Folkert
5507743776 pass arguments as owned again, borrowed caused regressions 2021-10-21 21:09:48 +02:00
Folkert
031c7cc2e2 Merge remote-tracking branch 'origin/trunk' into mono-lowlevel 2021-10-18 11:11:04 +02:00
Folkert
dbf650f7ab fixes 2021-10-17 21:14:30 +02:00
Folkert
a4f7ddb1f5 rename 2021-10-17 20:45:49 +02:00
Folkert
434ccbbf68 working parallel implementation 2021-10-17 20:42:29 +02:00
Folkert
b8a2db793f Revert "Revert "code that makes new NewHigherOrderLowLevels, use this later""
This reverts commit 5052fe68a4.
2021-10-17 19:44:24 +02:00
Folkert
5052fe68a4 Revert "code that makes new NewHigherOrderLowLevels, use this later"
This reverts commit 2c702cc893.
2021-10-17 19:40:34 +02:00
Folkert
2c702cc893 code that makes new NewHigherOrderLowLevels, use this later 2021-10-17 19:39:05 +02:00
Folkert
4152519bfb formatting & catch zig overflow error 2021-10-17 18:03:40 +02:00
Chelsea Troy
0cc6e44d35
Thread through the divCeil implementation from Zig:
+ OPEN QUESTION: Evidently the Zig implementation can throw an overflow error. Do we want to do something in Roc to fix this?
2021-10-17 10:46:16 -05:00
Folkert
9763f9b51b WIP 2021-10-17 16:08:41 +02:00
Richard Feldman
8a4975ee8a
Merge pull request #1781 from rtfeldman/fix-parens
Remove parentheses from unapplied tags
2021-10-13 20:38:37 -04:00
Folkert
408aa899bf remove old code 2021-10-13 15:10:42 +02:00
Folkert
ebcee4021c flip list.walk passed function arguments 2021-10-10 12:35:03 +02:00
Folkert
94e8c62613 make things compile, base64 has a memory leak 2021-10-06 22:57:11 +02:00
Richard Feldman
c6a8bdfdbe Swap closure indices in alias analysis 2021-10-06 08:59:38 -04:00
Richard Feldman
54a1a33ddf Improve unreachable error message 2021-10-05 21:19:08 -04:00
Folkert de Vries
fa4875da83
Merge pull request #1761 from rtfeldman/giesch
Add List.dropAt
2021-10-04 15:01:17 +02:00
Richard Feldman
1054095e1a
Merge pull request #1744 from rtfeldman/call-with-closure
Call with closure
2021-10-03 15:49:34 -05:00
Dan Knutson
3baff93a97 add first version of List.dropAt
* adds an implementation with no uniqueness/mutability
2021-10-03 13:55:11 -05:00
Folkert
0690633116 spec for List.reverse 2021-10-03 13:34:09 +02:00
Folkert
486f1d540f add specifications for fromUtf8 and toUtf8 2021-10-03 13:22:03 +02:00
Folkert
7e6a3431e2 trick morphic into updating a value that comes from the host 2021-10-03 00:07:38 +02:00
Folkert
5a8547f2d4 trick morphic into specializing closure callers 2021-10-03 00:05:17 +02:00
Kofi Gumbs
b32a42f05a Add Str.repeat builtin 2021-09-29 17:32:42 -04:00
Folkert
bd6e966833 clippy 2021-09-26 13:28:03 +02:00
Folkert
e9f2fb6193 actually define the arguments 2021-09-26 13:06:06 +02:00
Folkert
ed658ca2aa ugly but working fix for passing the closure env to a function 2021-09-26 13:05:58 +02:00
Folkert de Vries
f7c1a6e952
Merge pull request #1734 from rtfeldman/alias-analysis-const-list
alias analysis static list
2021-09-26 12:43:28 +02:00
Folkert
f43c10373f represent empty closure as unit (not void) 2021-09-24 15:41:00 +02:00
Folkert
f3fae8ea61 alias analysis static list 2021-09-23 23:18:05 +02:00
Folkert
3c53435e7e properly handle arguments to a closure caller 2021-09-22 21:16:50 +02:00
Brendan Hansknecht
0c6f8f308f Remove f16. It is not really supported by modern CPU hardware. 2021-09-21 16:51:47 -07:00
Folkert
3541d1fc6c formatting 2021-09-18 22:58:44 +02:00
Folkert
ada331567a respect int/float precision in pattern matchs 2021-09-18 22:55:34 +02:00
Folkert
77911cb68a store closure data for bool/byte again 2021-09-18 01:01:38 +02:00
Folkert
7416cc4e81 don't pass closure argument if not expected 2021-09-17 22:51:51 +02:00
Folkert
c68689a52b drop closure argument if the function does not use it 2021-09-17 22:43:09 +02:00
Folkert
02ffcc2096 Merge remote-tracking branch 'origin/trunk' into mix-function-closure 2021-09-17 20:45:15 +02:00
Folkert
e97df90bda don't wrap in LambdaSet 2021-09-15 23:26:13 +02:00
Folkert
7fe652ab19 add Development optimization option 2021-09-15 20:05:39 +02:00
Folkert
58ee7f0bfc fix argument order bug for mapWithIndex 2021-09-14 22:20:35 +02:00
Richard Feldman
f619932255
Merge pull request #1699 from rtfeldman/effect-after
Fix closures only monomorphizing once
2021-09-13 19:50:50 -04:00
Folkert
52d36cbe72 fix closure weirdness (skipping or infinite looping) 2021-09-13 22:50:48 +02:00
Folkert
350891468a add LambdaSet layout variant 2021-09-12 17:00:09 +02:00
Folkert
0b893eb972 remove alignment bump again 2021-09-12 14:01:41 +02:00
Folkert de Vries
575aaa1f0b
Merge pull request #1682 from rtfeldman/gen_wasm_join
joinpoints for the wasm backend
2021-09-10 16:23:34 +02:00
Folkert
daf0a0e02b Merge remote-tracking branch 'origin/trunk' into gen_wasm_join 2021-09-10 13:16:46 +02:00
Folkert de Vries
001e94a071
Merge branch 'trunk' into single-record-update 2021-09-09 12:12:41 +02:00
Folkert
fe83de39fb don't do aliasing in join points any more 2021-09-08 19:55:30 +02:00
Folkert
bdd07b0968 special-case properly 2021-09-08 13:10:44 +02:00
Folkert
0d1cc3844e don't special-case a single element record any more in updates 2021-09-08 12:59:38 +02:00
Folkert
0865826364 Merge remote-tracking branch 'origin/trunk' into wasm-base64 2021-09-06 22:17:52 +02:00
Folkert
b97c2d5d84 store literals in lists directly 2021-09-05 21:23:08 +02:00
Folkert
8e7aef314a add ListLiteralElement 2021-09-05 21:23:08 +02:00
Folkert
9713645806 only round up to 2*usize on 32-bit platforms 2021-09-04 16:00:22 +02:00
Folkert
1d17a21d1f higher alignment requirement on rocstr/roclist 2021-09-04 15:18:37 +02:00
Folkert
97577c92cf layout add allocation_alignment_bytes 2021-09-04 00:03:10 +02:00
Folkert
c6163a73f6 use environment size of pointer 2021-08-27 12:25:21 +02:00
Richard Feldman
18231876be
Drop comment 2021-08-26 21:39:46 -04:00
Richard Feldman
ffeaa1ac08
Merge branch 'trunk' into store-dec-as-str 2021-08-26 21:24:56 -04:00
Folkert
e95cf7dd5f use non-hardcoded alignment 2021-08-26 22:58:24 +02:00
Folkert
a070a7fcc7 add ptr_bytes to layout env 2021-08-26 22:12:44 +02:00
Folkert
af1051ef89 add ptr_bytes to the layout cache 2021-08-26 22:06:47 +02:00
Jared Ramirez
4b2a63fb30 Merge branch 'trunk' of https://github.com/rtfeldman/roc into store-dec-as-str 2021-08-26 11:23:17 -07:00
Jared Ramirez
8594f2efbe Change how decimals are stored in mono 2021-08-26 11:18:26 -07:00
Folkert
6a43be26d3 fix usize vs. u32/u64 conflict 2021-08-25 20:58:42 +02:00
Folkert
b6255748b3 emit an error message when a symbol is not defined
i.e. don't panic in this case
2021-08-22 21:58:07 +02:00
Folkert
ecba687243 Unify variables directly when possible
instead of going through a solved type
2021-08-22 16:30:06 +02:00
Richard Feldman
1348ec433b
Merge pull request #1605 from rtfeldman/drop-libcxx
Clean up some libc++ and libunwind deps
2021-08-20 23:37:10 -04:00
Richard Feldman
349b799d00
Merge pull request #1610 from rtfeldman/captured-symbols-layout-error
Captured symbols layout error
2021-08-20 23:22:54 -04:00
Richard Feldman
d15f7480dc
Merge pull request #1609 from rtfeldman/type-error-does-not-generate-function
Type error does not generate function
2021-08-20 23:17:14 -04:00
Richard Feldman
a0fe80f202 Fix some unused args 2021-08-20 23:12:32 -04:00
Folkert
f35a20bc16 the test 2021-08-20 23:43:38 +02:00
Folkert
82a4b31c08 the fix 2021-08-20 23:41:54 +02:00
Folkert
807e00ca96 fix the issue 2021-08-20 22:42:29 +02:00
Folkert
194918fe4b remove Invoke 2021-08-20 19:32:55 +02:00
Folkert de Vries
86d46825aa
Merge branch 'trunk' into NumBytesTo 2021-08-20 11:32:20 +02:00
Richard Feldman
4c72aba4a7
Merge branch 'trunk' into store-dec-as-str 2021-08-19 23:06:04 -04:00
Joshua Hoeflich
b57ebb6229 Remove castToNat 2021-08-19 16:11:21 -05:00
Richard Feldman
f279485edf
Merge branch 'trunk' into roc_panic 2021-08-19 07:20:26 -04:00
Richard Feldman
0bebb64bae
Merge branch 'trunk' into NumBytesTo 2021-08-19 01:37:39 -04:00
Richard Feldman
ce9f85ecbc
Merge pull request #1601 from rtfeldman/panic-lookup-not-in-scope
Delay panicking on LookupNotInScope until the error is reported
2021-08-19 01:36:36 -04:00
Jared Ramirez
d69b9173fc Also store f64 for things like pattern comparisons, etc 2021-08-18 17:18:13 -07:00
Folkert
92d1b5fe83 clippy 2021-08-18 23:23:01 +02:00
Folkert
bb5b733de4 Try to recover from LookupNotInScope until the error is reported 2021-08-18 23:12:12 +02:00
Folkert
6be68b0d21 tests 2021-08-18 20:33:59 +02:00
Folkert
2793c90272 cleanup 2021-08-18 18:35:27 +02:00
Folkert
8c9bbf1a99 comments 2021-08-18 18:35:08 +02:00
Folkert
012b4baa2e clippy 2021-08-18 18:33:33 +02:00
Joshua Hoeflich
92da003fba Adds castToNat 2021-08-18 11:02:20 -05:00
Folkert
6284a90785 a working version 2021-08-18 17:36:27 +02:00
Folkert
73358b98bd clippy 2021-08-18 15:14:46 +02:00
Folkert
9c27535cee some work, some don't 2021-08-18 15:13:48 +02:00
Folkert
c09b3b89f3 test_gen works again 2021-08-18 13:46:09 +02:00
Folkert
5fc629e5b8 copy relevant parts of from_var 2021-08-18 12:49:17 +02:00
Folkert
48e447e558 remove more invoke stuff 2021-08-16 21:14:56 +02:00
Folkert
8effd19ff9 stop emitting invoke again 2021-08-16 21:03:26 +02:00
Folkert
dca577df82 clippy 2021-08-16 20:46:31 +02:00
Folkert
5171d181ac emit invoke again to see what's up here 2021-08-16 20:44:55 +02:00
Folkert
8b36bfbc71 clippy 2021-08-16 20:37:37 +02:00
Folkert
b06a1715e2 stop generating invoke 2021-08-16 20:22:17 +02:00
Joshua Hoeflich
1b04ad0535 Merge branch 'trunk' into NumBytesTo 2021-08-14 20:41:33 -05:00
Joshua Hoeflich
22e781259d TODO: Actually implement the functions 2021-08-14 19:28:13 -05:00
Joshua Hoeflich
9dad304e95 Passing arguments successfully to bytesToU16 2021-08-14 19:11:27 -05:00
Joshua Hoeflich
ff2c3d7945 Dummy implementation that doesn't do what we want 2021-08-14 17:59:53 -05:00
Richard Feldman
bb7726b0e0
Merge branch 'trunk' into store-bool-closure-as-unit 2021-08-14 16:47:42 -04:00
Folkert
44253049e2 more tests 2021-08-14 19:08:58 +02:00
Folkert
2c1ab68ea7 represent byte/bool closure as unit 2021-08-14 18:56:05 +02:00
Folkert
441eb02ca3 represent bool closure as unit 2021-08-14 15:54:05 +02:00
Folkert
7d51a6bca3 comment is not a test... 2021-08-13 15:42:18 +02:00
Folkert
1b0d6110cc strip the layout cache so it does no extra work 2021-08-13 15:09:56 +02:00
Folkert
24ddc4b1e8 further optimizations 2021-08-13 13:25:36 +02:00
Folkert
df83bf0d48 Merge remote-tracking branch 'origin/soa-alias' into alias-nominal-equality 2021-08-13 12:11:36 +02:00
Folkert
c9040c012e make things work 2021-08-13 11:04:31 +02:00
Folkert
42f04fcc77 use variablesubsslice for Apply 2021-08-12 22:49:56 +02:00
Folkert
ecfb0e2685 also for recursive tags 2021-08-12 21:46:35 +02:00
Folkert
c058368a6d optimize tag union type -> layout conversion 2021-08-12 21:32:23 +02:00
Folkert
cf05afeacc use vec 2021-08-12 21:02:59 +02:00
Folkert
3bbf1a5506 use UnionTags for recursive tag unions 2021-08-12 20:50:33 +02:00
Folkert de Vries
255ddbe8c1
Merge branch 'trunk' into stack_size_with_alignment 2021-08-12 09:49:33 +02:00
Richard Feldman
c5289522e5 Try to help the branch predictor 2021-08-11 21:52:56 -04:00
Folkert
eb5439ee96 take alignment into account when calculating stack size 2021-08-11 22:37:00 +02:00
Folkert
6c0860b6bf milestone all but one gen tests passing 2021-08-11 21:50:11 +02:00
Folkert
0e66995437 Merge remote-tracking branch 'origin/trunk' into tags-soa-phase-0 2021-08-11 17:25:00 +02:00
Joshua Hoeflich
c00d400d85 Fixes merge conflict 2021-08-08 21:38:15 -05:00
Joshua Hoeflich
b8b20a376a Passing without bounds checks 2021-08-08 11:26:49 -05:00
Joshua Hoeflich
4231b340ee Glue code working 2021-08-08 11:06:10 -05:00
Richard Feldman
2a616103c6 Rename Str.toBytes to Str.toUtf8 2021-08-07 22:46:24 -04:00
Richard Feldman
267836226c s/CodePoint/CodePt/g 2021-08-07 21:46:20 -04:00
Folkert
83ad331bb1 remove chase_record_ext_var 2021-08-07 15:35:57 +02:00
Folkert
ad3d006a11 use a SubsIndex instead of Box 2021-08-07 13:50:53 +02:00
Folkert
fe773995c8 make VariableSubsSlice 2021-08-07 13:12:39 +02:00
Folkert
c09acb255c also sort by stack size 2021-08-07 13:08:55 +02:00
Folkert
3ca2140b69 fix double sorting in record layout 2021-08-07 12:25:56 +02:00
Folkert
e0039b94c9 clippy 2021-08-07 01:12:42 +02:00
Folkert
69c224843e all the work 2021-08-07 00:51:53 +02:00
Folkert
efab1ef2ca implement 2021-08-04 00:33:05 +02:00
Folkert
ceb5cc66fa use IdentStr 2021-08-03 21:14:36 +02:00
Folkert
54198d7da1 one more shrinkage 2021-08-02 23:05:22 +02:00
Folkert
a47f9baef4 Merge remote-tracking branch 'origin/trunk' into alias-nominal-equality 2021-07-31 22:59:01 +02:00
Richard Feldman
5f9ab038fc
Merge pull request #1505 from rtfeldman/subs-get-ref
Subs get ref
2021-07-30 23:35:55 -04:00
Folkert
894ef2b7b2 Merge remote-tracking branch 'origin/trunk' into alias-nominal-equality 2021-07-30 23:34:16 +02:00
Folkert
9447ff6f66 clippy 2021-07-30 23:31:33 +02:00
Folkert
aea0ddce30 use vector instead of hashmap 2021-07-30 23:30:06 +02:00
Folkert
35404bd25f use get_content_without_compacting more 2021-07-30 22:15:17 +02:00
Folkert
e0648d348d new formatting 2021-07-30 17:13:50 +02:00
Folkert
e805e63db6 typos 2021-07-30 16:54:22 +02:00
Folkert
13b05e54e8 Merge remote-tracking branch 'origin/clippy-1.54' into alias-nominal-equality 2021-07-30 14:25:50 +02:00