Commit Graph

  • 5418241dc6 Allow blocks to return values in any register Jef 2018-12-18 17:16:38 +01:00
  • 74ffb8560c Fix use of locals Jef 2018-12-18 12:12:17 +01:00
  • 0d1c4f3290 Allow calling functions with any signature Jef 2018-12-12 11:52:48 +01:00
  • 46d9a3cd1a Use an FxHashMap in RegDiversions. Nicholas Nethercote 2018-12-14 09:34:23 +11:00
  • 4d4ecfd812 Bump version to 0.1.0 Dan Gohman 2018-12-17 13:45:12 -08:00
  • 53841cdb07 Add loops Jef 2018-12-17 12:50:29 +01:00
  • 23b5a56a7d Fix locals not being restored properly (which may cause us to read garbage values from the stack) Jef 2018-12-17 12:16:40 +01:00
  • 48f86bde82 Make appveyor.yml more verbose, and other misc fixes. Dan Gohman 2018-12-14 12:46:18 -08:00
  • 81bbf8f057 Disable the x86-32 build in appveyor, as it isn't supported yet. Dan Gohman 2018-12-14 10:31:52 -08:00
  • bd2ee53c89 Optimize pop_i32_into, check more fib values Jef 2018-12-15 16:39:38 +01:00
  • 5511f92088 Add call alignment requirement. Sergey Pepyakin 2018-12-13 16:31:08 +01:00
  • 23476e82ff Fix typo. Sergey Pepyakin 2018-12-13 16:21:30 +01:00
  • aab191b460 Comment FuncDef. Sergey Pepyakin 2018-12-13 16:20:03 +01:00
  • 94e2f0c2a5 Add the fib test. Sergey Pepyakin 2018-12-11 20:13:27 +01:00
  • d6b300c87f Implement returns. Sergey Pepyakin 2018-12-11 20:13:20 +01:00
  • 38590cbcb9 Add i32 literals support. Sergey Pepyakin 2018-12-11 20:12:55 +01:00
  • a3719e08e5 Pass arguments. Sergey Pepyakin 2018-12-11 19:45:33 +01:00
  • eb60c2587a Basic form of a function call Sergey Pepyakin 2018-12-07 19:16:32 +01:00
  • 635ccc6916 Introduce TranslationContext Sergey Pepyakin 2018-11-29 22:28:10 +01:00
  • f22b9903b6 Pass function sig in function_body::translate Sergey Pepyakin 2018-11-29 18:55:49 +01:00
  • 66120cdede Prune unnecessary dependencies. Dan Gohman 2018-12-14 08:09:01 -08:00
  • 1e04dc90b6 Make more tests quickcheck-compatible, remove unused code Jef 2018-12-14 16:35:48 +01:00
  • b832832c76 Add const folding, fix returning values from blocks Jef 2018-12-14 16:20:28 +01:00
  • 17ecd049a1 Register allocation V2 Jef 2018-12-13 16:05:24 +01:00
  • 0c0ccc5d09 Add unsigned access methods to VMGlobalDefinition. Dan Gohman 2018-12-13 15:50:58 -08:00
  • 717f60bda1 Misc cleanups in the trap handling code. Dan Gohman 2018-12-13 12:09:04 -08:00
  • 26eb8131da Avoid unnecessary clone() calls. Dan Gohman 2018-12-12 14:20:36 -08:00
  • c9666381f6 Fixed links in …/docs/compare-llvm.rst Vincent Esche 2018-12-13 14:17:18 +01:00
  • bee4ee4b6e Clarify that cranelift-wasm is just one component. Dan Gohman 2018-12-13 06:03:28 -08:00
  • 4994e3671c Remove unused argument from fibonacci example Jef 2018-12-13 11:08:34 +01:00
  • 912fa83fff Add benchmarks Jef 2018-12-12 16:47:06 +01:00
  • 5bb7430976 Add quickcheck, implement simple binary operations Jef 2018-12-12 14:02:11 +01:00
  • 5b448ce3c7 Stop leaking stack space on function call Jef 2018-12-13 10:25:17 +01:00
  • 5c2395ee32 Elaborate on a TODO comment. Dan Gohman 2018-12-12 14:16:46 -08:00
  • 562a66cc27 Update status. Dan Gohman 2018-12-12 13:05:32 -08:00
  • eba0f9925a no_std fixes. Dan Gohman 2018-12-12 13:00:53 -08:00
  • bc4333d857 Implement assert_malformed and assert_invalid. Dan Gohman 2018-12-12 12:28:51 -08:00
  • 3f24098edc Implement the remaining valid spec tests. Dan Gohman 2018-12-11 17:12:33 -08:00
  • 189996accd Fix receiving more than 6 arguments, allow calling functions with more than 6 arguments Jef 2018-12-12 13:23:43 +01:00
  • 86353cba5e Allow calling functions with any signature Jef 2018-12-12 11:52:48 +01:00
  • 8bd35e154b Tidy up some match bindings to be more consistent with the rest of the codebase. Dan Gohman 2018-12-11 13:22:28 -08:00
  • 6dd39dee6a Update to Cranelift 0.26.0. Dan Gohman 2018-12-11 13:21:03 -08:00
  • c8e457e834 Bump version to 0.26.0 Dan Gohman 2018-12-11 12:54:23 -08:00
  • 56850d481d Initial support for function, table, memory, and global imports. Dan Gohman 2018-12-08 17:38:28 -05:00
  • bc18085ad1 Use EntityRef::from_u32 to reduce casting. Dan Gohman 2018-12-11 12:25:06 -08:00
  • a55c933f19 Factor out a MemFlags constructor for trusted notrap/aligned accesses. Dan Gohman 2018-12-11 05:44:26 -08:00
  • 68a13646f9 Add a from_u32 function to EntityRef. Dan Gohman 2018-12-10 07:17:39 -08:00
  • b841652539 Add a Slice to supplement PrimaryMap. Dan Gohman 2018-12-10 07:12:20 -08:00
  • 5b03581442 Tidy up use declaration syntax. Dan Gohman 2018-12-06 17:59:58 -05:00
  • 95a6a25db3 Update to pretty_env_logger 0.3.0. Dan Gohman 2018-12-06 17:55:24 -05:00
  • 7b51195f49 Add an offset to cranelift-wasm's GlobalVariable. Dan Gohman 2018-12-06 17:54:10 -05:00
  • 605f34257b Fix a missing #[test]. Dan Gohman 2018-12-06 16:24:54 -05:00
  • 30a0890319 Rename GlobalInit::GlobalRef to GlobalInit::GetGlobal. Dan Gohman 2018-12-06 16:00:25 -05:00
  • 566c160c37 Add a function to return the pointer type for a given triple. Dan Gohman 2018-12-06 10:50:12 -05:00
  • 38d1d58e06 Change GlobalInit::Import() to GlobalInit::Import. Dan Gohman 2018-12-06 09:37:34 -05:00
  • 76583192a8 Change ZeroOneOrMore::Zero() to TableElementType::Zero. Dan Gohman 2018-12-06 09:36:48 -05:00
  • 42e35c4c57 Implement PrimaryMap::with_capacity. Dan Gohman 2018-11-30 16:59:35 -08:00
  • 6e17bebf44 Publish TableElementType for library users. Dan Gohman 2018-11-30 16:41:54 -08:00
  • f0dbba0ec8 Change TableElementType::Func() to TableElementType::Func. Dan Gohman 2018-11-30 16:37:00 -08:00
  • c287231720 Implement FromIterator for PrimaryMap. Dan Gohman 2018-11-30 16:31:00 -08:00
  • e623da51c6 Suppress dead-code warnings on functions expanded from entity_impl!. Dan Gohman 2018-11-30 16:27:00 -08:00
  • 91477d21c8 Add an as_u32() member to entity_impl types. Dan Gohman 2018-11-30 16:16:35 -08:00
  • 954573440d Remove ModuleEnvironment::get_func_name, which is unused. Dan Gohman 2018-11-30 16:11:59 -08:00
  • a20c852148 Support heaps with no offset-guard pages. Dan Gohman 2018-11-29 04:53:30 -08:00
  • b32f77ea02 Add the fib test. Sergey Pepyakin 2018-12-11 20:13:27 +01:00
  • 0cd70c649a Implement returns. Sergey Pepyakin 2018-12-11 20:13:20 +01:00
  • e02dbf1bc2 Add i32 literals support. Sergey Pepyakin 2018-12-11 20:12:55 +01:00
  • 0e9ba8332f Pass arguments. Sergey Pepyakin 2018-12-11 19:45:33 +01:00
  • 93696a80bb Fixes #614: Implement a debug trap; Benjamin Bouvier 2018-12-05 17:30:22 +01:00
  • 93f33141e9 Introduce VMFunctionBody to add extra type safety. Dan Gohman 2018-12-08 16:22:48 -05:00
  • 10bb311aea Reorganize unsafe code. Dan Gohman 2018-12-08 15:28:33 -05:00
  • 7dcca6be5b Improve error handling, and start refactoring Instance. Dan Gohman 2018-12-07 15:32:51 -05:00
  • 078486e080 Basic form of a function call Sergey Pepyakin 2018-12-07 19:16:32 +01:00
  • fe562297a7 Rename wasmtime's --function to --invoke. Dan Gohman 2018-12-07 01:21:34 -05:00
  • f065b39d65 Add Wasmtime as another example user of Cranelift. Dan Gohman 2018-12-07 01:01:12 -05:00
  • a635861425 Report traps in functions invoked from the command line. Dan Gohman 2018-12-06 23:56:45 -05:00
  • 3b280e8799 Update to Rust 1.31.0. Dan Gohman 2018-12-06 23:20:16 -05:00
  • 230079d460 Improved error handling. Dan Gohman 2018-12-06 04:25:10 -05:00
  • 1fda62ed33 Flesh out the README.md with more specific goals. Dan Gohman 2018-12-06 04:13:01 -05:00
  • dca7729313 Improve error handling and misc cleanups. Dan Gohman 2018-12-06 03:43:58 -05:00
  • 6198b89110 Update to pretty_env_logger 0.3.0. Dan Gohman 2018-12-06 03:03:02 -05:00
  • 08488591a9 Fix clippy warning namespaces. Dan Gohman 2018-12-06 02:59:39 -05:00
  • 06de604729 Rename InvokeOutcome to ActionOutcome and move it to its own module. Dan Gohman 2018-12-06 02:52:54 -05:00
  • d9b4bd1de8 Support imports. Dan Gohman 2018-12-06 02:02:44 -05:00
  • 8170a9db79 Update to the rustfmt in rust 1.31, which is now stable. Dan Gohman 2018-12-06 11:34:38 -05:00
  • 5d7ece3d15 Fix clippy warning namespaces. Dan Gohman 2018-12-06 16:20:10 -05:00
  • 5adab629f2 Update to the rustfmt in rust 1.31, which is now stable. Dan Gohman 2018-12-06 16:15:48 -05:00
  • 323a9925e5 Change the Rust version banner to green, because that looks nicer here. Dan Gohman 2018-12-05 18:49:59 -05:00
  • d3eb06209b Enable RUST_BACKTRACE=1 when running "cargo test". Dan Gohman 2018-12-05 18:49:23 -05:00
  • fc28923b6e The Gitter chat is currently shared for all CraneStation projects. Dan Gohman 2018-12-05 18:48:56 -05:00
  • 96941a59af Implement call_indirect signature checking. Dan Gohman 2018-12-05 08:46:17 -05:00
  • 57635eb62b Implement minimal call_indirect signature checking. Dan Gohman 2018-12-05 07:46:25 -05:00
  • 27c2f82628 Add Emacs backup and autosave files to .gitignore. Dan Gohman 2018-12-03 15:33:43 -08:00
  • 0a2ecf5a1e On Darwin, guard page accesses are raised as SIGBUS. Dan Gohman 2018-12-04 21:57:48 -05:00
  • cfd28a7bc5 Temporarily disable use of Mach ports for trap handling on Darwin. Dan Gohman 2018-12-04 19:57:12 -05:00
  • 4ae552c7bd Reword the lib/wast README.md and add a link to the spec testsuite. Dan Gohman 2018-12-03 16:49:13 -08:00
  • 4db11b610e Generalize to better support the spec proposals tests. Dan Gohman 2018-12-03 15:18:23 -08:00
  • 974355e20b Handle write errors in the build script. Dan Gohman 2018-12-03 15:08:18 -08:00
  • c3dd82b0d5 Enable RUST_BACKTRACE=1 when running "cargo test". Dan Gohman 2018-12-03 08:27:44 -08:00
  • e06b99b165 Add a spec testsuite submodule. Dan Gohman 2018-12-03 05:53:07 -08:00