summaryrefslogtreecommitdiff
path: root/src/ast_utils.h
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-04-25 20:47:05 -0700
committerAlon Zakai <alonzakai@gmail.com>2016-04-25 20:47:05 -0700
commit75f0736812804980272729c6c3e9dda84539a3d6 (patch)
treea3d3868d21e6a3c599f16f3847ff227d15116409 /src/ast_utils.h
parentcb35ee67868bdc2b8839766b7e10b65e8fcc122a (diff)
parent791c765cda070e47d90577de2d798f046431d095 (diff)
downloadbinaryen-75f0736812804980272729c6c3e9dda84539a3d6.tar.gz
binaryen-75f0736812804980272729c6c3e9dda84539a3d6.tar.bz2
binaryen-75f0736812804980272729c6c3e9dda84539a3d6.zip
Merge pull request #396 from WebAssembly/more-opts
Selectify if-elses with no side effects
Diffstat (limited to 'src/ast_utils.h')
-rw-r--r--src/ast_utils.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ast_utils.h b/src/ast_utils.h
index 36895ac51..5cda48578 100644
--- a/src/ast_utils.h
+++ b/src/ast_utils.h
@@ -52,7 +52,7 @@ struct EffectAnalyzer : public PostWalker<EffectAnalyzer, Visitor<EffectAnalyzer
bool accessesLocal() { return localsRead.size() + localsWritten.size() > 0; }
bool accessesMemory() { return calls || readsMemory || writesMemory; }
- bool hasSideEffects() { return calls || localsWritten.size() > 0 || writesMemory; }
+ bool hasSideEffects() { return calls || localsWritten.size() > 0 || writesMemory || branches; }
bool hasAnything() { return branches || calls || accessesLocal() || readsMemory || writesMemory; }
// checks if these effects would invalidate another set (e.g., if we write, we invalidate someone that reads, they can't be moved past us)