{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":692213509,"defaultBranch":"main","name":"WasmNet","ownerLogin":"paulirwin","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-09-15T20:28:04.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/1874103?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1698599685.0","currentOid":""},"activityList":{"items":[{"before":"57a6bf19e85f64c2c3e341306eb50f072b37531a","after":"0076d37087eed44f05c1d763cab300bd2f81d68e","ref":"refs/heads/main","pushedAt":"2023-11-20T02:49:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Use exported names for functions, or at least better names\n\nThis change makes the compiler use a function's first exported name (if\nany), or a name like `WasmFunction_N` where N is the function's index.\nThis helps in diagnosing issues in compilation, compared to the prior\ncode where function names were always new, random UUIDs.","shortMessageHtmlLink":"Compiler: Use exported names for functions, or at least better names"}},{"before":"5382f9f185b38ec36951e93ff6aa2ed81a8a0c51","after":"57a6bf19e85f64c2c3e341306eb50f072b37531a","ref":"refs/heads/main","pushedAt":"2023-11-20T02:28:41.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Support saving assembly to a file in Mono.Cecil backend\n\nReflection.Emit doesn't support this, so a new interface is added to\nrepresent that capability. This helps in debugging, and the\nIntegrationTests runner is now configured to export DLLs for all\nMono.Cecil tests.","shortMessageHtmlLink":"Compiler: Support saving assembly to a file in Mono.Cecil backend"}},{"before":"fcfc6a2da2be10dfebd92ff5bd86ec67cff0e253","after":"5382f9f185b38ec36951e93ff6aa2ed81a8a0c51","ref":"refs/heads/main","pushedAt":"2023-11-12T16:27:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add `if` opcode support, with `brfalse` CIL compilation\n\nThis adds preliminary support for the `if` opcode, which utilizes two\n`block`s and the CIL `brfalse` opcode. I'm not 100% convinced that this\nis rock solid, but simple tests pass. Still getting an invalid CIL\ngeneration in the -O2 optimized Emscripten \"hello, world!\" example, but\nmaking progress as this optimized version depended on the `if` opcode.","shortMessageHtmlLink":"Compiler: Add if opcode support, with brfalse CIL compilation"}},{"before":"87b387126e23cfd9b4d59bb6139a373b945da8d4","after":"fcfc6a2da2be10dfebd92ff5bd86ec67cff0e253","ref":"refs/heads/main","pushedAt":"2023-11-11T20:17:31.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"WASI: Fix issue with reading bytes as a string in fd_write\n\nThe prior code incorrectly assumed that these byte arrays read from WASM\nmemory would always end in \\0, but this is not true for the \"hello,\nworld!\" case when Emscripten is called with -O1. This adds a test for\nthat example, and better handles null-terminated strings (as well as\nthose that are not null-terminated).","shortMessageHtmlLink":"WASI: Fix issue with reading bytes as a string in fd_write"}},{"before":"9f5a8fda965867007ba5e86ca698e589533af8dd","after":"87b387126e23cfd9b4d59bb6139a373b945da8d4","ref":"refs/heads/main","pushedAt":"2023-11-11T19:38:01.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Runtime: Support automatic start function invocation upon instantiation\n\nThis by default will now invoke a `start` section-designated function\nupon module instantiation if present, or if one is not found, an\nexported function named `_start` to match Wasmtime behavior. This can be\ndisabled with an option flag passed into WasmRuntime (not yet available\nin the CLI). With this change, the WasmNet CLI now behaves identically\nto Wasmtime for some of the compiled unit tests that have start\nfunctions.","shortMessageHtmlLink":"Runtime: Support automatic start function invocation upon instantiation"}},{"before":"9638fb8b6adf4c51a14c86ced34fda3bde5a4891","after":"9f5a8fda965867007ba5e86ca698e589533af8dd","ref":"refs/heads/main","pushedAt":"2023-11-06T13:04:16.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Move construction of WasmCompiler into CompilationAssembly\n\nThis completes the refactoring to remove the dependency on\nReflection.Emit in WasmCompiler. This also narrows the signature of the\nWasmCompiler ctor to not require a MethodInfo when it only needs the\nmethod's return type. (Even then, a `bool isVoid` parameter could have\nbeen sufficient, but leaving it as a type for now.)","shortMessageHtmlLink":"Compiler: Move construction of WasmCompiler into CompilationAssembly"}},{"before":"1a49aea83a5c7463e844c166ee6ab24aa3abb7af","after":"9638fb8b6adf4c51a14c86ced34fda3bde5a4891","ref":"refs/heads/main","pushedAt":"2023-11-03T03:19:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Refactor out Reflection.Emit IL generation\n\nThis introduces an IILGenerator abstraction with pulling the\nReflection.Emit implementation out into its own class, so that\nWasmCompiler does not depend on a specific IL generator.\n\nThis will allow us to experiment with swapping out Reflection.Emit for\nMono.Cecil, as well as unit testing the methods that call the\nabstraction without needing to generate a real assembly.\n\nThe opcodes that take parameters are strongly typed (unlike with\nReflection.Emit's API), and all opcodes that do not take a parameter are\nin an enum. This should help prevent accidental \"Common Language Runtime\ndetected an invalid program\" errors in the future. So in a way, this\nchange helps ensure we're emitting the correct arguments for these\nopcodes (even though most of them were covered under tests previously\nanyways).\n\nThis isn't a perfect abstraction, and it might not survive contact with\nthe enemy. But it should be a good start towards experimenting with\nMono.Cecil.","shortMessageHtmlLink":"Compiler: Refactor out Reflection.Emit IL generation"}},{"before":null,"after":"33609bb0d8a9e9e83cc01cbc5bc6d61ff348f60b","ref":"refs/heads/feature/emscripten-hello-world","pushedAt":"2023-10-29T17:14:45.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Tests: Add Emscripten hello world test","shortMessageHtmlLink":"Tests: Add Emscripten hello world test"}},{"before":"57c10d860b828ac3d321c02d1da94db52cc6e79b","after":"1a49aea83a5c7463e844c166ee6ab24aa3abb7af","ref":"refs/heads/main","pushedAt":"2023-10-29T16:42:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Fix return type of select opcode, other diagnosic fixes\n\nThe select opcode was always pushing i32 onto the type stack (used for\nvalidation) when it should have been pushing the type of its selected\noperands. This is now fixed, which allows the Emscripten \"hello, world!\"\nexample to compile fully. (It still fails with a \"Common Language\nRuntime detected an invalid program.\" exception currently, though.)\n\nIn service of diagnosing these issues, I've added a Debug print of which\ninstruction is being compiled with its operands, and the state of the\ncurrent type validation stack.","shortMessageHtmlLink":"Compiler: Fix return type of select opcode, other diagnosic fixes"}},{"before":"7bbc1b559551cf3fe7194a8e4696ed1d67c4a7b9","after":"57c10d860b828ac3d321c02d1da94db52cc6e79b","ref":"refs/heads/main","pushedAt":"2023-10-28T23:42:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Runtime: Add basic WASI Preview 1 fd_write implementation for stdout\n\nThis of course needs to be made more robust, but a basic example of\nprinting to the standard output is now working! Getting closer to the\nEmscripten \"hello, world\" example being working.","shortMessageHtmlLink":"Runtime: Add basic WASI Preview 1 fd_write implementation for stdout"}},{"before":"ef13d60155670e8cb7cfb90d8af44f98de1a7b03","after":"7bbc1b559551cf3fe7194a8e4696ed1d67c4a7b9","ref":"refs/heads/main","pushedAt":"2023-10-28T23:06:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Runtime: Add WASI Preview 1 proc_exit function\n\nThis function will normally call Environment.Exit(code), but an\nintegration point was added to WasmRuntime in order to facilitate unit\ntesting (or allow a user of the runtime to choose to do something else\nupon this call).","shortMessageHtmlLink":"Runtime: Add WASI Preview 1 proc_exit function"}},{"before":"c6727ecff3916a7dcecf9aab4657fe59b385cc17","after":"ef13d60155670e8cb7cfb90d8af44f98de1a7b03","ref":"refs/heads/main","pushedAt":"2023-10-28T22:42:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add [f32|f64].convert_[i32|i64]_[s|u] opcodes\n\nThis uses conv.r4 and conv.r8 in the signed cases, and conv.r.un +\nconv.r4/conv.r8 in the unsigned cases. It might not be strictly needed\nto do the extra conversion in the unsigned case, but conv.r.un can\nseemingly return either single or double precision values depending on\nits input, while the WASM opcodes expect a specific type.","shortMessageHtmlLink":"Compiler: Add [f32|f64].convert_[i32|i64]_[s|u] opcodes"}},{"before":"d0c684c1ab2edaa235d093195ba248ccb8b2211d","after":"c6727ecff3916a7dcecf9aab4657fe59b385cc17","ref":"refs/heads/main","pushedAt":"2023-10-28T22:25:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add [i32|i64].trunc_[f32|f64]_[s|u] opcodes\n\nThis uses the conv.ovf.[i4|i8] IL opcodes to do a conversion while\ntruncating the decimal place.","shortMessageHtmlLink":"Compiler: Add [i32|i64].trunc_[f32|f64]_[s|u] opcodes"}},{"before":"e47bfcf55541c7b46795a3bdb6474126c300695a","after":"d0c684c1ab2edaa235d093195ba248ccb8b2211d","ref":"refs/heads/main","pushedAt":"2023-10-28T22:09:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add f32/f64 lt/le/gt/ge opcodes\n\nThe floating-point equivalent of the earlier work on i32/i64 versions.\nNote that there is no \"unsigned\" equivalent for floating-point, so we\nuse the clt/cgt opcodes like the signed int/long comparisons.","shortMessageHtmlLink":"Compiler: Add f32/f64 lt/le/gt/ge opcodes"}},{"before":"cfc46c1b46c37529d1e40d49f9831f57fd637021","after":"e47bfcf55541c7b46795a3bdb6474126c300695a","ref":"refs/heads/main","pushedAt":"2023-10-28T22:02:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add f32/f64 abs/neg opcodes\n\nAbs is a Math function in .NET, not a CIL opcode, so we call that. Neg\nis a CIL opcode, however.","shortMessageHtmlLink":"Compiler: Add f32/f64 abs/neg opcodes"}},{"before":"5a53f278dbb674fc8eda502d459f3b647c147fe1","after":"cfc46c1b46c37529d1e40d49f9831f57fd637021","ref":"refs/heads/main","pushedAt":"2023-10-28T21:55:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add f32/f64 store/load opcodes\n\nI really need to get around to refactoring the store/load logic one of\nthese days, but for now just continuing to copy/paste/modify it.","shortMessageHtmlLink":"Compiler: Add f32/f64 store/load opcodes"}},{"before":"7b7e4bc2b5527279b2f7ab9bfdcaa2eeafdcc09a","after":"5a53f278dbb674fc8eda502d459f3b647c147fe1","ref":"refs/heads/main","pushedAt":"2023-10-28T21:43:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i64.store[8|16|32] opcodes\n\nThe hard work for this was already done with the 32-bit counterparts, so\njust re-using that logic.","shortMessageHtmlLink":"Compiler: Add i64.store[8|16|32] opcodes"}},{"before":"7fa0091069d9135f5f3dba180e9d84a368520f3f","after":"7b7e4bc2b5527279b2f7ab9bfdcaa2eeafdcc09a","ref":"refs/heads/main","pushedAt":"2023-10-28T21:35:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i64.[lt|le|gt|ge]_[s|u] opcodes\n\nThese share the same CIL opcodes as their 32-bit counterparts.","shortMessageHtmlLink":"Compiler: Add i64.[lt|le|gt|ge]_[s|u] opcodes"}},{"before":"b57d226d971a16d37267a304268682c268e9ebd2","after":"7fa0091069d9135f5f3dba180e9d84a368520f3f","ref":"refs/heads/main","pushedAt":"2023-10-28T21:26:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add br_table opcode, fix label indexing\n\nI mistakenly implemented label indexing previously to be based on\ninsertion order, but really it's a stack-depth indexing. This has now\nbeen corrected.\n\nThe br_table opcode is implemented in this commit. I'm not 100%\nconfident in the \"ret\" case, but these examples now pass.","shortMessageHtmlLink":"Compiler: Add br_table opcode, fix label indexing"}},{"before":"88a71381d7b4b9df44a300f1ef2e3fe245f50484","after":"b57d226d971a16d37267a304268682c268e9ebd2","ref":"refs/heads/main","pushedAt":"2023-10-28T16:20:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add f32/f64 eq/ne opcodes\n\nUses the same CIL opcodes as i32/i64 eq/ne. Pretty easy.","shortMessageHtmlLink":"Compiler: Add f32/f64 eq/ne opcodes"}},{"before":"b8297738ab80a2dfe6b94f00caaf0f2ab611cb63","after":"88a71381d7b4b9df44a300f1ef2e3fe245f50484","ref":"refs/heads/main","pushedAt":"2023-10-28T16:13:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i32.wrap_i64, some test cleanup\n\nThis adds the i32.wrap_i64 opcode. Somewhat surprisingly (to this\nauthor), the CIL opcode for this just conv.i4. I guess I had assumed\nthat this opcode would do a checked conversion, but that must be the ovf\nversions of conv.\n\nThis also removes some unused memory segments from the reinterpret tests\n(which was a copy/paste fail), as well as adds some logging to the test\nexecution to help confirm that it's doing what you're expecting it to be\ndoing (instead of silently passing).","shortMessageHtmlLink":"Compiler: Add i32.wrap_i64, some test cleanup"}},{"before":"1a54d13eccfcb36e64f38efecfac2bda7be0ef1b","after":"b8297738ab80a2dfe6b94f00caaf0f2ab611cb63","ref":"refs/heads/main","pushedAt":"2023-10-28T15:59:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add reinterpret opcodes\n\nThis adds the reinterpret opcodes to/from i32/i64 and f32/f64. Since\nthere is no native opcode in CIL for this, we're just calling the\nequivalent BitConverter methods.","shortMessageHtmlLink":"Compiler: Add reinterpret opcodes"}},{"before":"133cb41549fca9657c9fc7222e70e0f6f051fb15","after":"1a54d13eccfcb36e64f38efecfac2bda7be0ef1b","ref":"refs/heads/main","pushedAt":"2023-10-28T15:15:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add [i32|i64].load[8|16|32]_[s|u] opcodes\n\nThis adds several i32/i64 opcodes for loading an 8, 16, or (i64-only)\n32-bit value from the lower bits of a larger memory value, and either\nsign-extending or zero-extending the resulting value to the larger type.","shortMessageHtmlLink":"Compiler: Add [i32|i64].load[8|16|32]_[s|u] opcodes"}},{"before":"53d003d97519b88a4ab84a6dc4301819ddae52a5","after":"133cb41549fca9657c9fc7222e70e0f6f051fb15","ref":"refs/heads/main","pushedAt":"2023-10-28T03:57:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i64.extend_i32_u opcode\n\nThis is similar to i64.extend_i32_s of course, but unsigned. Uses the\nConv_U8 IL opcode.","shortMessageHtmlLink":"Compiler: Add i64.extend_i32_u opcode"}},{"before":"373d0d2d1a77b9c047deacd9fb57ef0f6e4a70ac","after":"53d003d97519b88a4ab84a6dc4301819ddae52a5","ref":"refs/heads/main","pushedAt":"2023-10-28T03:52:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i32.store8 and i32.store16 opcodes\n\nThese take the lower 8 or 16 bits and store to a 32-bit memory space.\nThis tests the functionality by intentionally including some high bits\nthat would be dropped.\n\nHelpful tip when developing a test case for this: convert a binary value\nlike 0b1100101010 to int. 0b101010 is 42, so the high two set bits would\nbe dropped.","shortMessageHtmlLink":"Compiler: Add i32.store8 and i32.store16 opcodes"}},{"before":"b7d400fb0d6dcca616482d3292828651eb7f6117","after":"373d0d2d1a77b9c047deacd9fb57ef0f6e4a70ac","ref":"refs/heads/main","pushedAt":"2023-10-28T03:31:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add i32.ne and i64.ne opcodes\n\nThere is not a CIL opcode for not-equal, you must do a ceq, push 0 onto\nthe stack, then call ceq again, to basically compare equality then\ninvert that.","shortMessageHtmlLink":"Compiler: Add i32.ne and i64.ne opcodes"}},{"before":"d71f85a69a9c51a53489f9431dbc6dac1ae048f7","after":"b7d400fb0d6dcca616482d3292828651eb7f6117","ref":"refs/heads/main","pushedAt":"2023-10-28T03:25:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add select opcode support\n\nThis currently makes a generic method instance for its arg type, which\ndoes involve an expensive call operation when it probably could be\nimplemented in CIL directly. But given that performance is not a goal\nright now, this keeps it simple.","shortMessageHtmlLink":"Compiler: Add select opcode support"}},{"before":"71a0d55d92a2e0d49d81babd375118fa4ceeed26","after":"d71f85a69a9c51a53489f9431dbc6dac1ae048f7","ref":"refs/heads/main","pushedAt":"2023-10-28T02:56:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Rename 0xFC opcode prefix\n\nI had previously thought this was some extended prefix just for bulk\nmemory operations, but this is clearly used for other types of\ninstructions as well. Renaming this for clarity.","shortMessageHtmlLink":"Compiler: Rename 0xFC opcode prefix"}},{"before":"4c53dbb467bcf02d556c9dee0736d1b42be56aa3","after":"71a0d55d92a2e0d49d81babd375118fa4ceeed26","ref":"refs/heads/main","pushedAt":"2023-10-26T01:12:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Support for unsigned versions of i32 gt/lt opcodes\n\nThis adds the unsigned versions of the i32 gt/lt/ge/le opcodes. i64\nsupport will come another day.","shortMessageHtmlLink":"Compiler: Support for unsigned versions of i32 gt/lt opcodes"}},{"before":"e883e94de59457649d9f98ab9031050b4000b3df","after":"4c53dbb467bcf02d556c9dee0736d1b42be56aa3","ref":"refs/heads/main","pushedAt":"2023-10-26T01:02:34.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"paulirwin","name":"Paul Irwin","path":"/paulirwin","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1874103?s=80&v=4"},"commit":{"message":"Compiler: Add nop opcode\n\nThere's nop much to this one.","shortMessageHtmlLink":"Compiler: Add nop opcode"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADsunG_QA","startCursor":null,"endCursor":null}},"title":"Activity ยท paulirwin/WasmNet"}