diff options
author | Ben Smith <binjimin@gmail.com> | 2017-11-11 13:36:34 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-11 13:36:34 -0800 |
commit | 500b617b1c8ea88a2cf46f60205071da9c7569bc (patch) | |
tree | 510459c898ac5bd4d68e25e5fd7b275e4e1f9683 /src/binary-reader-objdump.cc | |
parent | 2b196f1ee90ef04c6434d0694945214d31550aa7 (diff) | |
download | wabt-500b617b1c8ea88a2cf46f60205071da9c7569bc.tar.gz wabt-500b617b1c8ea88a2cf46f60205071da9c7569bc.tar.bz2 wabt-500b617b1c8ea88a2cf46f60205071da9c7569bc.zip |
Update testsuite; call_indirect has new syntax (#667)
The `call_indirect` instruction now allows the type to be specified
inline or via the common "type use" syntax (or both):
```
call_indirect (type $t1) ...
call_indirect (param i32 f32) (result f64) ...
call_indirect (type $t2) (param i32) ...
```
This means that `CallIndirectExpr` changes from storing a `Var` (the
referenced func type) to a `FuncDeclaration`, which can store both a
type use and a function signature. Most of the changes here are fallout
from that change.
The other major change is that function signature resolution and error
checking now needs to iterate over a functions expr list looking for
`call_indirect` instructions. I'm not sure if this is a significant
overhead in parsing/validation yet, but there are plenty of ways to
optimize it if it ends up in profiles.
Diffstat (limited to 'src/binary-reader-objdump.cc')
0 files changed, 0 insertions, 0 deletions