diff options
author | Alon Zakai <alonzakai@gmail.com> | 2016-06-24 12:00:56 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-06-24 12:00:56 -0700 |
commit | ed4e614430e8864c9f02508f5920c45fd137faf1 (patch) | |
tree | 0989e222916bca09e9303805b8f8659de35571bc /src | |
parent | 51e7034690b3db8b18b2dee59e896181cf2eca24 (diff) | |
download | binaryen-ed4e614430e8864c9f02508f5920c45fd137faf1.tar.gz binaryen-ed4e614430e8864c9f02508f5920c45fd137faf1.tar.bz2 binaryen-ed4e614430e8864c9f02508f5920c45fd137faf1.zip |
add BinaryenExpressionPrint to c api (#599)
Diffstat (limited to 'src')
-rw-r--r-- | src/binaryen-c.cpp | 5 | ||||
-rw-r--r-- | src/binaryen-c.h | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index 5ae3b7a10..4dff289fb 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -364,6 +364,11 @@ BinaryenExpressionRef BinaryenUnreachable(BinaryenModuleRef module) { return static_cast<Expression*>(((Module*)module)->allocator.alloc<Unreachable>()); } +void BinaryenExpressionPrint(BinaryenExpressionRef expr) { + WasmPrinter::printExpression((Expression*)expr, std::cout); + std::cout << '\n'; +} + // Functions BinaryenFunctionRef BinaryenAddFunction(BinaryenModuleRef module, const char* name, BinaryenFunctionTypeRef type, BinaryenType* localTypes, BinaryenIndex numLocalTypes, BinaryenExpressionRef body) { diff --git a/src/binaryen-c.h b/src/binaryen-c.h index b9343012c..a587e03ac 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -288,6 +288,9 @@ BinaryenExpressionRef BinaryenHost(BinaryenModuleRef module, BinaryenOp op, cons BinaryenExpressionRef BinaryenNop(BinaryenModuleRef module); BinaryenExpressionRef BinaryenUnreachable(BinaryenModuleRef module); +// Print an expression to stdout. Useful for debugging. +void BinaryenExpressionPrint(BinaryenExpressionRef expr); + // Functions typedef void* BinaryenFunctionRef; @@ -324,7 +327,7 @@ void BinaryenSetStart(BinaryenModuleRef module, BinaryenFunctionRef start); // ========== Module Operations ========== // -// Print a module to stdout. +// Print a module to stdout. Useful for debugging. void BinaryenModulePrint(BinaryenModuleRef module); // Validate a module, showing errors on problems. |