Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
test: Add example of using large stack space
Browse files Browse the repository at this point in the history
chfast committed Jun 3, 2020

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
1 parent 08f09d0 commit ef515a5
Showing 1 changed file with 47 additions and 1 deletion.
48 changes: 47 additions & 1 deletion test/unittests/execute_test.cpp
Original file line number Diff line number Diff line change
@@ -1007,4 +1007,50 @@ TEST(execute, reuse_args)
EXPECT_THAT(args, ElementsAre(20, 3));

EXPECT_THAT(execute(parse(wasm), 1, {}), Result(23 % (23 / 5)));
}
}

TEST(execute, stack_abuse)
{
/* wat2wasm
(func (param i32) (result i32)
local.get 0
i32.const 1
i32.const 2
i32.const 3
i32.const 4
i32.const 5
i32.const 6
i32.const 7
i32.const 8
i32.const 9
i32.const 10
i32.const 11
i32.const 12
i32.const 13
i32.const 14
i32.const 15
i32.const 16
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
i32.add
)
*/
const auto wasm = from_hex(
"0061736d0100000001060160017f017f030201000a360134002000410141024103410441054106410741084109"
"410a410b410c410d410e410f41106a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a0b");

EXPECT_THAT(execute(parse(wasm), 0, {1000}), Result(1136));
}

0 comments on commit ef515a5

Please sign in to comment.