summaryrefslogtreecommitdiff
path: root/src/wasm-stack.h
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2018-08-14 11:29:34 -0700
committerGitHub <noreply@github.com>2018-08-14 11:29:34 -0700
commit15b4a4c66fdad9a31bfb3912673378c1c9cf7e1c (patch)
treedea56d226fffa2fb832e6981a930efc3f9a7f0d8 /src/wasm-stack.h
parent9f8fa5a14d3b48c650c2574529fd95c329cb5358 (diff)
downloadbinaryen-15b4a4c66fdad9a31bfb3912673378c1c9cf7e1c.tar.gz
binaryen-15b4a4c66fdad9a31bfb3912673378c1c9cf7e1c.tar.bz2
binaryen-15b4a4c66fdad9a31bfb3912673378c1c9cf7e1c.zip
Print Stack IR in proper .wat format (#1630)
This now makes --generate-stack-ir --print-stack-ir emit a fully valid .wat wasm file, in stacky format.
Diffstat (limited to 'src/wasm-stack.h')
-rw-r--r--src/wasm-stack.h45
1 files changed, 0 insertions, 45 deletions
diff --git a/src/wasm-stack.h b/src/wasm-stack.h
index 8648148b6..fffc0ce45 100644
--- a/src/wasm-stack.h
+++ b/src/wasm-stack.h
@@ -70,51 +70,6 @@ public:
// e.g. wasm has no unreachable blocks, they must be none
};
-} // namespace wasm
-
-namespace std {
-
-inline std::ostream& operator<<(std::ostream& o, wasm::StackInst& inst) {
- switch (inst.op) {
- case wasm::StackInst::Basic: {
- std::cout << wasm::getExpressionName(inst.origin) << " (" << wasm::printType(inst.type) << ')';
- break;
- }
- case wasm::StackInst::BlockBegin:
- case wasm::StackInst::IfBegin:
- case wasm::StackInst::LoopBegin: {
- std::cout << wasm::getExpressionName(inst.origin);
- break;
- }
- case wasm::StackInst::BlockEnd:
- case wasm::StackInst::IfEnd:
- case wasm::StackInst::LoopEnd: {
- std::cout << "end (" << wasm::printType(inst.type) << ')';
- break;
- }
- case wasm::StackInst::IfElse: {
- std::cout << "else";
- break;
- }
- default: WASM_UNREACHABLE();
- }
- return o;
-}
-
-inline std::ostream& operator<<(std::ostream& o, wasm::StackIR& insts) {
- wasm::Index index = 0;
- for (wasm::Index i = 0; i < insts.size(); i++) {
- auto* inst = insts[i];
- if (!inst) continue;
- std::cout << index++ << ' ' << *inst << '\n';
- }
- return o;
-}
-
-} // namespace std
-
-namespace wasm {
-
//
// StackWriter: Writes out binary format stack machine code for a Binaryen IR expression
//