Commit graph

6920 commits

Author SHA1 Message Date
ayazhafiz
fe114e5e09 Improve test names 2022-01-10 23:42:15 -05:00
ayazhafiz
fba1c64c4b Fix another quicksort bug 2022-01-10 23:41:08 -05:00
ayazhafiz
2c41c43aea Implement saturated add/subtract 2022-01-10 22:37:08 -05:00
ayazhafiz
103e85f339 Pretty-print laayouts when PRETTY_PRINT_IR_SYMBOLS is true 2022-01-10 19:21:18 -05:00
ayazhafiz
abe42781d5 Use unsigned LLVM intrinsic arithmetic for unsigned integers
Closes #2331
2022-01-10 19:20:51 -05:00
Brian Carroll
c5653951a4 Wasm: improve the TypeSection preload test 2022-01-10 10:26:43 +00:00
Brian Carroll
8f73b722ff Wasm: fix release build 2022-01-10 10:26:43 +00:00
Brian Carroll
fc677e8d58 Wasm: add preloading logic for Types section 2022-01-10 10:26:43 +00:00
Brian Carroll
59278a02d6 Wasm: Create a LinkingSegment to keep string data aligned correctly 2022-01-10 10:26:43 +00:00
Brian Carroll
c89f74f7e8 Wasm: clippy fixes 2022-01-10 10:26:43 +00:00
Brian Carroll
a1f737d6d8 Wasm: Create OpaqueSection for sections that may be used in builtins but not by us 2022-01-10 10:26:43 +00:00
Brian Carroll
738434329e Wasm: refactor the model of the Linking section 2022-01-10 10:26:42 +00:00
Brian Carroll
8cf82ae1b3 Wasm: Delete old output files before compiling new ones 2022-01-10 10:26:42 +00:00
Brian Carroll
6db7dbed1c Wasm: Store DataSection as bytes and segment count 2022-01-10 10:26:42 +00:00
Brian Carroll
265171ad17 Wasm: Make sure string constants are placed at a properly aligned offset 2022-01-10 10:26:42 +00:00
Brian Carroll
b8f51fb1bb Wasm: add preloaded_bytes and preloaded_count to Code section 2022-01-10 10:26:42 +00:00
Brian Carroll
743e14148c Wasm: Store Function section as bytes and a count 2022-01-10 10:26:42 +00:00
Brian Carroll
7a6c6b675c Wasm: Store type signatures in serialized form 2022-01-10 10:26:42 +00:00
Richard Feldman
2f3919c870
Merge pull request #2327 from rtfeldman/expand-tutorial
Expand tutorial
2022-01-09 09:30:57 -05:00
Richard Feldman
46d36ed942 Fix tutorial table formatting 2022-01-07 19:48:43 -05:00
Richard Feldman
9cd27b72d7 Fix some links in Num docs 2022-01-07 19:48:43 -05:00
Brian Carroll
5560ecb63e Implement tail recursion for union refcounting procs 2022-01-06 22:43:02 +00:00
Brian Carroll
71a5013ed4 Add an HTML file for debugging wasm 2022-01-06 10:49:58 +00:00
Brian Carroll
8ebdc8ea7f Tests for linked list tail recursion in helper procs 2022-01-06 10:49:34 +00:00
Brian Carroll
bfec255501 More refcount tests 2022-01-06 10:49:34 +00:00
Brian Carroll
854106972c Nicer assertions in C test platform 2022-01-06 10:49:34 +00:00
Brian Carroll
040b8ce430 Reduce code size for Union refcount procedures 2022-01-06 10:49:34 +00:00
Brian Carroll
d9cc3c5692 Modify refcount of contents *before* structure to prevent use-after-free 2022-01-06 10:49:34 +00:00
Brian Carroll
456bda0895 Prevent confusion between separate instances of RecursivePointer 2022-01-06 10:49:34 +00:00
Brian Carroll
ad95ea4a3b Remove a debug assert 2022-01-06 10:49:34 +00:00
Brian Carroll
5e642c880c Mask out union tag ID from pointer when calculating refcount address 2022-01-06 10:49:34 +00:00
Brian Carroll
94dea1df9f Add a refcount test for recursive unions 2022-01-05 12:24:04 +00:00
Brian Carroll
e0d0e1884d Check number of allocations in refcount tests 2022-01-05 12:24:04 +00:00
Brian Carroll
5d7b4018b7 Generate refcounting helper procedures for tag unions 2022-01-05 12:24:04 +00:00
Joshua Warner
a3c6bfce43 Mark infer_union_def_position as a test (followup to #2305) 2022-01-03 20:11:06 -08:00
Joshua Warner
d9cfa2b2a5 Remove unused State::fail method 2022-01-03 20:11:01 -08:00
Joshua Warner
352c7979eb Re-enable debug_assert in State::advance 2022-01-03 20:10:53 -08:00
Joshua Warner
f22f96843e Refactor ParseProblem
* Remove the `pos` field, which was always being assigned Position::default()
* Remove one use of this `pos`, by removing the never-used SyntaxError::ConditionFailed variant
* Adjust the other use to do what was probably intended - which is to say, pointing to the beginning of the def with the error
* Rename to FileError, reuse `SourceError` as an inner field, to avoid duplicating the `bytes`
2022-01-03 20:10:50 -08:00
Richard Feldman
226237d1cd
Merge pull request #2316 from rtfeldman/imported-function-thunk
Imported function thunk
2022-01-03 21:46:18 -05:00
Richard Feldman
54eb9ef669
Merge pull request #2307 from rtfeldman/make-tag-recursive-loop
Make tag recursive loop
2022-01-03 21:44:50 -05:00
Lucas
ef4bb5e124
Merge pull request #2287 from rtfeldman/str_to_num
WASM StrToNum
2022-01-03 19:28:18 -05:00
rvcas
d2f95bde63 chore(StrToNum): layout is always a Struct, we don't need the Union case 2022-01-03 18:15:46 -05:00
Folkert
fc4cea9f75 don't throw away a jump 2022-01-03 16:50:43 +01:00
Folkert
7044e95df8 fix imported function thunk 2022-01-03 16:18:53 +01:00
Anton-4
b9665a8f0c fixed precedence comment 2022-01-03 15:51:31 +01:00
Joshua Warner
650c29de3c Change LineColumn::column to u32 to avoid overflow, and remove LineTooLong error 2022-01-02 21:50:42 -08:00
Chelsea Troy
922d8e57c7 trying to see if we have access to our testing modules elsewhere 2022-01-02 22:53:48 -05:00
Richard Feldman
74cca25aec Use global mutex over threadlocal 2022-01-02 22:53:48 -05:00
Richard Feldman
ac67eaf837 Use deinitFailures in expectFailure test 2022-01-02 22:43:15 -05:00
Richard Feldman
bfdf0bf916 Use roc_realloc in expect failures 2022-01-02 22:43:15 -05:00