summaryrefslogtreecommitdiff
path: root/src/wasm-interpreter.h
Commit message (Collapse)AuthorAgeFilesLines
...
* fix assertion in interpreter that was too strong - we can have blocks with ↵Alon Zakai2016-03-021-3/+7
| | | | no return type, but that still end up returning a type due to a branch
* grow memory returns a value now, and we can update the spec tests after ↵Alon Zakai2016-02-231-1/+2
| | | | doing that
* Merge pull request #196 from WebAssembly/spec-startAlon Zakai2016-02-121-0/+4
|\ | | | | Fully support start in wasm modules
| * call start method in interpreterAlon Zakai2016-02-121-0/+4
| |
* | refactor operations into LiteralAlon Zakai2016-02-121-216/+107
|/
* update spec tests and shift to putting the br_if condition at the end, as ↵Alon Zakai2016-02-081-5/+5
| | | | was just changed to in the spec
* Fix selectJF Bastien2016-02-051-3/+3
| | | | | | | | | The ordering changed in: https://github.com/WebAssembly/spec/pull/221 Which changed the spec tests, breaking sexpr-wasm because it pulls in the spec tests. This was then fixed: https://github.com/WebAssembly/sexpr-wasm-prototype/commit/23dc368148fc7827a603e3853f5a40287eb9effe Which in turn breaks when binaryen feeds sexpr-wasm .wast files with the old select operand ordering. Note that this PR has new failures when running the torture tests in binaryen-shell: the order of evaluation is correct in binaryen-shell but isn't emitted properly by LLVM in the .s files. This will require another patch to fix LLVM.
* Use unsigned types to evaluate i32 and i64 binary operatorsDerek Schuff2016-02-041-40/+42
| | | | | | | Instead of defaulting to signed types and casting as necessary, use unsigned types. Explicitly make signed copies of them and us them where appropriate, avoiding lots of casting and improving readability. Avoids undefined behavior of signed overflow.
* Fix ambiguous constructor call with explicit castDerek Schuff2016-02-031-2/+2
| | | | Should fix the Travis build.
* Merge remote-tracking branch 'origin/improve-memory-trap'Alon Zakai2016-02-031-6/+14
|\
| * Shell: improve memory trapJF Bastien2016-02-031-6/+14
| | | | | | | | | | This makes it easier to debug, the message looks like: [trap final > memory: 1 > 0]
* | Merge pull request #152 from WebAssembly/float-refactorAlon Zakai2016-02-031-22/+12
|\ \ | |/ |/| Float refactoring and nan comparison change
| * fix type of large constsAlon Zakai2016-02-031-2/+2
| |
| * simplify interpreter int reinterpretingAlon Zakai2016-02-021-10/+2
| |
| * convert CopySign to use int bitsAlon Zakai2016-02-021-8/+4
| |
| * convert Neg to use int bitsAlon Zakai2016-02-021-4/+6
| |
| * convert Abs to use int bitsAlon Zakai2016-02-021-2/+2
| |
* | Move bits.h to support/JF Bastien2016-02-031-1/+1
|/ | | | Faster compiles.
* Shell: fix --entry parameter numbersJF Bastien2016-02-021-4/+16
| | | | When running the shell with --entry it was assumed that the signature had zero parameters. This isn't true for main, so look at the function's parameter list and construct a zero-initialized arguments vector of the right types. This fixes a few failures, some of which were hiding other failures.
* add return nodeAlon Zakai2016-02-011-2/+14
|
* Use LLVM style static polymorphism for WasmVisitors.Michael Bebenita2016-01-131-20/+20
|
* fix switch parsing and semantics, for br in the tableAlon Zakai2016-01-061-2/+4
|
* Simplify the bit functions... a bit!JF Bastien2015-12-241-21/+6
|
* ensure proper literal type for popcnt resultsAlon Zakai2015-12-231-2/+2
|
* Add curly.JF Bastien2015-12-231-1/+2
|
* clz32: handle 0 as with ctzJF Bastien2015-12-231-1/+3
|
* Use the new bit functionsJF Bastien2015-12-231-41/+9
|
* fix typoAlon Zakai2015-12-231-1/+1
|
* Implement feedbackAndrew Scheidecker2015-12-231-4/+2
|
* Fix a few Windows/VS2013 compile errorsAndrew Scheidecker2015-12-231-2/+27
|
* Fix / uniformize include guardsJF Bastien2015-12-221-0/+5
|
* Fix warnings found by GCCJF Bastien2015-12-221-1/+1
| | | | | | My previous patch addressed all LLVM warnings, this one addresses all the GCC ones as well (mostly signed / unsigned mix). The patch also turns on -Wall -Werror.
* Fix the license headersJF Bastien2015-12-211-1/+15
| | | | This applies Apache 2.0 properly (as far as our lawyers have told me). We can do this early since all of the code was written by Alon Zakai.
* remove Label, which was removed from the specAlon Zakai2015-12-181-6/+0
|
* unify convert/compare into unary/binary, and do a pre-pass in s-expression ↵Alon Zakai2015-11-271-118/+79
| | | | parser for function types, to fix new assertions that notice some missing types
* loops do not automatically loopAlon Zakai2015-11-211-1/+1
|
* if_else returns a value, but if does notAlon Zakai2015-11-211-1/+5
|
* some more function debugging in interpreterAlon Zakai2015-11-201-25/+25
|
* br_ifAlon Zakai2015-11-201-6/+11
|
* add assert on breakingAlon Zakai2015-11-181-1/+3
|
* add some interpreter debuggingAlon Zakai2015-11-181-0/+5
|
* improve interpreter debuggingAlon Zakai2015-11-181-4/+8
|
* add assertsAlon Zakai2015-11-171-0/+3
|
* refine trap textsAlon Zakai2015-11-171-4/+4
|
* annotate trapsAlon Zakai2015-11-171-32/+32
|
* don't store caseMap in Switch, it's a pure optimizationAlon Zakai2015-11-111-2/+7
|
* nan fixes; test suite fully passesAlon Zakai2015-11-111-1/+1
|
* more nan fixesAlon Zakai2015-11-111-22/+60
|
* start to handle new nan rulesAlon Zakai2015-11-111-18/+44
|
* unreachableAlon Zakai2015-11-111-0/+5
|