diff options
author | Alon Zakai <alonzakai@gmail.com> | 2018-01-22 17:36:06 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-22 17:36:06 -0800 |
commit | 155d0b5f42b57100582649dfbdb81806b10579a2 (patch) | |
tree | 991421bf9fcd120aa0c4d6cad41df14de1fc7afd /src/passes/Print.cpp | |
parent | 02729a12e1735f629d3066b51c96a056f712b080 (diff) | |
download | binaryen-155d0b5f42b57100582649dfbdb81806b10579a2.tar.gz binaryen-155d0b5f42b57100582649dfbdb81806b10579a2.tar.bz2 binaryen-155d0b5f42b57100582649dfbdb81806b10579a2.zip |
Atomic wait/wake fixes (#1383)
* fix wait and wake binary format support, they have alignments and offsets
* don't emit unreachable parts of atomic operations, for simplicity and to avoid special handling
* don't emit atomic waits by default in the fuzzer, they hang in native vm support
Diffstat (limited to 'src/passes/Print.cpp')
-rw-r--r-- | src/passes/Print.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp index 7651414e0..66b0fa8f5 100644 --- a/src/passes/Print.cpp +++ b/src/passes/Print.cpp @@ -411,6 +411,9 @@ struct PrintSExpression : public Visitor<PrintSExpression> { o << '(' ; prepareColor(o); o << printWasmType(curr->expectedType) << ".wait"; + if (curr->offset) { + o << " offset=" << curr->offset; + } restoreNormalColor(o); incIndent(); printFullLine(curr->ptr); @@ -420,6 +423,9 @@ struct PrintSExpression : public Visitor<PrintSExpression> { } void visitAtomicWake(AtomicWake* curr) { printOpening(o, "wake"); + if (curr->offset) { + o << " offset=" << curr->offset; + } incIndent(); printFullLine(curr->ptr); printFullLine(curr->wakeCount); |