summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2019-01-02 11:14:08 -0800
committerGitHub <noreply@github.com>2019-01-02 11:14:08 -0800
commit18fb2c238f3b4c04e3666d8a0d34492936a6bcc0 (patch)
treea6d8baba2dd9edc00c8279f242a03a8acc40d609 /src
parent3f3fc857ff6204517281ed5caa3209cc8f02d4fc (diff)
downloadbinaryen-18fb2c238f3b4c04e3666d8a0d34492936a6bcc0.tar.gz
binaryen-18fb2c238f3b4c04e3666d8a0d34492936a6bcc0.tar.bz2
binaryen-18fb2c238f3b4c04e3666d8a0d34492936a6bcc0.zip
Minor code style cleanups (#1844)
Diffstat (limited to 'src')
-rw-r--r--src/ir/cost.h49
-rw-r--r--src/wasm/wasm-type.cpp2
2 files changed, 25 insertions, 26 deletions
diff --git a/src/ir/cost.h b/src/ir/cost.h
index b64ca5110..5179f80b1 100644
--- a/src/ir/cost.h
+++ b/src/ir/cost.h
@@ -25,8 +25,7 @@ namespace wasm {
// Measure the execution cost of an AST. Very handwave-ey
struct CostAnalyzer : public Visitor<CostAnalyzer, Index> {
- CostAnalyzer(Expression *ast) {
- assert(ast);
+ CostAnalyzer(Expression* ast) {
cost = visit(ast);
}
@@ -36,63 +35,63 @@ struct CostAnalyzer : public Visitor<CostAnalyzer, Index> {
return curr ? visit(curr) : 0;
}
- Index visitBlock(Block *curr) {
+ Index visitBlock(Block* curr) {
Index ret = 0;
for (auto* child : curr->list) ret += visit(child);
return ret;
}
- Index visitIf(If *curr) {
+ Index visitIf(If* curr) {
return 1 + visit(curr->condition) + std::max(visit(curr->ifTrue), maybeVisit(curr->ifFalse));
}
- Index visitLoop(Loop *curr) {
+ Index visitLoop(Loop* curr) {
return 5 * visit(curr->body);
}
- Index visitBreak(Break *curr) {
+ Index visitBreak(Break* curr) {
return 1 + maybeVisit(curr->value) + maybeVisit(curr->condition);
}
- Index visitSwitch(Switch *curr) {
+ Index visitSwitch(Switch* curr) {
return 2 + visit(curr->condition) + maybeVisit(curr->value);
}
- Index visitCall(Call *curr) {
+ Index visitCall(Call* curr) {
// XXX this does not take into account if the call is to an import, which
// may be costlier in general
Index ret = 4;
for (auto* child : curr->operands) ret += visit(child);
return ret;
}
- Index visitCallIndirect(CallIndirect *curr) {
+ Index visitCallIndirect(CallIndirect* curr) {
Index ret = 6 + visit(curr->target);
for (auto* child : curr->operands) ret += visit(child);
return ret;
}
- Index visitGetLocal(GetLocal *curr) {
+ Index visitGetLocal(GetLocal* curr) {
return 0;
}
- Index visitSetLocal(SetLocal *curr) {
+ Index visitSetLocal(SetLocal* curr) {
return 1;
}
- Index visitGetGlobal(GetGlobal *curr) {
+ Index visitGetGlobal(GetGlobal* curr) {
return 1;
}
- Index visitSetGlobal(SetGlobal *curr) {
+ Index visitSetGlobal(SetGlobal* curr) {
return 2;
}
- Index visitLoad(Load *curr) {
+ Index visitLoad(Load* curr) {
return 1 + visit(curr->ptr) + 10 * curr->isAtomic;
}
- Index visitStore(Store *curr) {
+ Index visitStore(Store* curr) {
return 2 + visit(curr->ptr) + visit(curr->value) + 10 * curr->isAtomic;
}
- Index visitAtomicRMW(AtomicRMW *curr) {
+ Index visitAtomicRMW(AtomicRMW* curr) {
return 100;
}
Index visitAtomicCmpxchg(AtomicCmpxchg* curr) {
return 100;
}
- Index visitConst(Const *curr) {
+ Index visitConst(Const* curr) {
return 1;
}
- Index visitUnary(Unary *curr) {
+ Index visitUnary(Unary* curr) {
Index ret = 0;
switch (curr->op) {
case ClzInt32:
@@ -192,7 +191,7 @@ struct CostAnalyzer : public Visitor<CostAnalyzer, Index> {
}
return ret + visit(curr->value);
}
- Index visitBinary(Binary *curr) {
+ Index visitBinary(Binary* curr) {
Index ret = 0;
switch (curr->op) {
case AddInt32: ret = 1; break;
@@ -351,22 +350,22 @@ struct CostAnalyzer : public Visitor<CostAnalyzer, Index> {
}
return ret + visit(curr->left) + visit(curr->right);
}
- Index visitSelect(Select *curr) {
+ Index visitSelect(Select* curr) {
return 2 + visit(curr->condition) + visit(curr->ifTrue) + visit(curr->ifFalse);
}
- Index visitDrop(Drop *curr) {
+ Index visitDrop(Drop* curr) {
return visit(curr->value);
}
- Index visitReturn(Return *curr) {
+ Index visitReturn(Return* curr) {
return maybeVisit(curr->value);
}
- Index visitHost(Host *curr) {
+ Index visitHost(Host* curr) {
return 100;
}
- Index visitNop(Nop *curr) {
+ Index visitNop(Nop* curr) {
return 0;
}
- Index visitUnreachable(Unreachable *curr) {
+ Index visitUnreachable(Unreachable* curr) {
return 0;
}
};
diff --git a/src/wasm/wasm-type.cpp b/src/wasm/wasm-type.cpp
index b7ed12947..f9371ffab 100644
--- a/src/wasm/wasm-type.cpp
+++ b/src/wasm/wasm-type.cpp
@@ -36,12 +36,12 @@ const char* printType(Type type) {
unsigned getTypeSize(Type type) {
switch (type) {
- case Type::none: abort();
case Type::i32: return 4;
case Type::i64: return 8;
case Type::f32: return 4;
case Type::f64: return 8;
case Type::v128: return 16;
+ case Type::none:
case Type::unreachable: WASM_UNREACHABLE();
}
WASM_UNREACHABLE();