Chromium Code Reviews| Index: src/wasm/asm-wasm-builder.cc |
| diff --git a/src/wasm/asm-wasm-builder.cc b/src/wasm/asm-wasm-builder.cc |
| index 57df68b9f2c25bde9090a1b6a0d19081d1d4c08a..ca31c977f9852e538dfc3a171c23e9b1e4bbc424 100644 |
| --- a/src/wasm/asm-wasm-builder.cc |
| +++ b/src/wasm/asm-wasm-builder.cc |
| @@ -77,7 +77,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitFunctionDeclaration(FunctionDeclaration* decl) { |
| DCHECK(!in_function_); |
| - DCHECK(current_function_builder_ == nullptr); |
| + DCHECK_NULL(current_function_builder_); |
| uint16_t index = LookupOrInsertFunction(decl->proxy()->var()); |
| current_function_builder_ = builder_->FunctionAt(index); |
| in_function_ = true; |
| @@ -169,7 +169,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitContinueStatement(ContinueStatement* stmt) { |
| DCHECK(in_function_); |
| - DCHECK(stmt->target() != NULL); |
| + DCHECK_NOT_NULL(stmt->target()); |
| int i = static_cast<int>(breakable_blocks_.size()) - 1; |
| int block_distance = 0; |
| for (; i >= 0; i--) { |
| @@ -190,7 +190,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitBreakStatement(BreakStatement* stmt) { |
| DCHECK(in_function_); |
| - DCHECK(stmt->target() != NULL); |
| + DCHECK_NOT_NULL(stmt->target()); |
| int i = static_cast<int>(breakable_blocks_.size()) - 1; |
| int block_distance = 0; |
| for (; i >= 0; i--) { |
| @@ -236,7 +236,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void CompileCase(CaseClause* clause, uint16_t fall_through, |
| VariableProxy* tag) { |
| Literal* label = clause->label()->AsLiteral(); |
| - DCHECK(label != nullptr); |
| + DCHECK_NOT_NULL(label); |
| block_size_++; |
| current_function_builder_->Emit(kExprIf); |
| current_function_builder_->Emit(kExprI32Ior); |
| @@ -254,7 +254,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitSwitchStatement(SwitchStatement* stmt) { |
| VariableProxy* tag = stmt->tag()->AsVariableProxy(); |
| - DCHECK(tag != NULL); |
| + DCHECK_NOT_NULL(tag); |
| BlockVisitor visitor(this, stmt->AsBreakableStatement(), kExprBlock, false, |
| 0); |
| uint16_t fall_through = current_function_builder_->AddLocal(kAstI32); |
| @@ -344,7 +344,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| current_function_builder_->ReturnType(return_type); |
| for (int i = 0; i < expr->parameter_count(); i++) { |
| LocalType type = TypeFrom(func_type->Parameter(i)); |
| - DCHECK(type != kAstStmt); |
| + DCHECK_NE(kAstStmt, type); |
| LookupOrInsertLocal(scope->parameter(i), type); |
| } |
| } else { |
| @@ -385,7 +385,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| } |
| } |
| LocalType var_type = TypeOf(expr); |
| - DCHECK(var_type != kAstStmt); |
| + DCHECK_NE(kAstStmt, var_type); |
| if (var->IsContextSlot()) { |
| AddLeb128(LookupOrInsertGlobal(var, var_type), false); |
| } else { |
| @@ -432,10 +432,10 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| ObjectLiteralProperty* prop = props->at(i); |
| DCHECK(marking_exported); |
| VariableProxy* expr = prop->value()->AsVariableProxy(); |
| - DCHECK(expr != nullptr); |
| + DCHECK_NOT_NULL(expr); |
| Variable* var = expr->var(); |
| Literal* name = prop->key()->AsLiteral(); |
| - DCHECK(name != nullptr); |
| + DCHECK_NOT_NULL(name); |
| DCHECK(name->IsPropertyName()); |
| const AstRawString* raw_name = name->AsRawPropertyName(); |
| if (var->is_function()) { |
| @@ -476,7 +476,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| next_table_index_ += funcs->values()->length(); |
| for (int i = 0; i < funcs->values()->length(); i++) { |
| VariableProxy* func = funcs->values()->at(i)->AsVariableProxy(); |
| - DCHECK(func != nullptr); |
| + DCHECK_NOT_NULL(func); |
| builder_->AddIndirectFunction(LookupOrInsertFunction(func->var())); |
| } |
| } |
| @@ -499,7 +499,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| FunctionTableIndices* LookupFunctionTable(Variable* v) { |
| ZoneHashMap::Entry* entry = |
| function_tables_.Lookup(v, ComputePointerHash(v)); |
| - DCHECK(entry != nullptr); |
| + DCHECK_NOT_NULL(entry); |
| return reinterpret_cast<FunctionTableIndices*>(entry->value); |
| } |
| @@ -534,7 +534,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| uint16_t GetFunctionIndex(Variable* v, FunctionSig* sig) { |
| ZoneHashMap::Entry* entry = table_.Lookup(v, ComputePointerHash(v)); |
| - DCHECK(entry != nullptr); |
| + DCHECK_NOT_NULL(entry); |
| ImportedFunctionIndices* indices = |
| reinterpret_cast<ImportedFunctionIndices*>(entry->value); |
| WasmModuleBuilder::SignatureMap::iterator pos = |
| @@ -564,19 +564,19 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| BinaryOperation* binop = expr->value()->AsBinaryOperation(); |
| if (binop != nullptr) { |
| Property* prop = binop->left()->AsProperty(); |
| - DCHECK(prop != nullptr); |
| + DCHECK_NOT_NULL(prop); |
| LoadInitFunction(); |
| is_set_op_ = true; |
| RECURSE(Visit(expr->target())); |
| DCHECK(!is_set_op_); |
| if (binop->op() == Token::MUL) { |
| DCHECK(binop->right()->IsLiteral()); |
| - DCHECK(binop->right()->AsLiteral()->raw_value()->AsNumber() == 1.0); |
| + DCHECK_EQ(1.0, binop->right()->AsLiteral()->raw_value()->AsNumber()); |
| DCHECK(binop->right()->AsLiteral()->raw_value()->ContainsDot()); |
| VisitForeignVariable(true, prop); |
| } else if (binop->op() == Token::BIT_OR) { |
| DCHECK(binop->right()->IsLiteral()); |
| - DCHECK(binop->right()->AsLiteral()->raw_value()->AsNumber() == 0.0); |
| + DCHECK_EQ(0.0, binop->right()->AsLiteral()->raw_value()->AsNumber()); |
| DCHECK(!binop->right()->AsLiteral()->raw_value()->ContainsDot()); |
| VisitForeignVariable(false, prop); |
| } else { |
| @@ -605,7 +605,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| if (funcs != nullptr && |
| funcs->bounds().lower->AsArray()->Element()->IsFunction()) { |
| VariableProxy* target = expr->target()->AsVariableProxy(); |
| - DCHECK(target != nullptr); |
| + DCHECK_NOT_NULL(target); |
| AddFunctionTable(target, funcs); |
| } |
| return; |
| @@ -638,11 +638,11 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitForeignVariable(bool is_float, Property* expr) { |
| DCHECK(expr->obj()->AsVariableProxy()); |
| - DCHECK(expr->obj()->AsVariableProxy()->var()->location() == |
| - VariableLocation::PARAMETER); |
| - DCHECK(expr->obj()->AsVariableProxy()->var()->index() == 1); |
| + DCHECK(VariableLocation::PARAMETER == |
|
ahaas
2016/02/15 08:39:37
Why don't you use DCHECK_EQ here?
|
| + expr->obj()->AsVariableProxy()->var()->location()); |
| + DCHECK_EQ(1, expr->obj()->AsVariableProxy()->var()->index()); |
| Literal* key_literal = expr->key()->AsLiteral(); |
| - DCHECK(key_literal != nullptr); |
| + DCHECK_NOT_NULL(key_literal); |
| if (!key_literal->value().is_null() && !foreign_.is_null() && |
| foreign_->IsObject()) { |
| Handle<Name> name = |
| @@ -687,7 +687,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitProperty(Property* expr) { |
| Expression* obj = expr->obj(); |
| - DCHECK(obj->bounds().lower == obj->bounds().upper); |
| + DCHECK_EQ(obj->bounds().lower, obj->bounds().upper); |
| Type* type = obj->bounds().lower; |
| MachineType mtype; |
| int size; |
| @@ -736,7 +736,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| Literal* value = expr->key()->AsLiteral(); |
| if (value) { |
| DCHECK(value->raw_value()->IsNumber()); |
| - DCHECK(kAstI32 == TypeOf(value)); |
| + DCHECK_EQ(kAstI32, TypeOf(value)); |
| int val = static_cast<int>(value->raw_value()->AsNumber()); |
| byte code[] = {WASM_I32(val * size)}; |
| current_function_builder_->EmitCode(code, sizeof(code)); |
| @@ -744,12 +744,12 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| } |
| BinaryOperation* binop = expr->key()->AsBinaryOperation(); |
| if (binop) { |
| - DCHECK(Token::SAR == binop->op()); |
| + DCHECK_EQ(Token::SAR, binop->op()); |
| DCHECK(binop->right()->AsLiteral()->raw_value()->IsNumber()); |
| DCHECK(kAstI32 == TypeOf(binop->right()->AsLiteral())); |
| - DCHECK(size == |
| - 1 << static_cast<int>( |
| - binop->right()->AsLiteral()->raw_value()->AsNumber())); |
| + DCHECK_EQ(size, |
| + 1 << static_cast<int>( |
| + binop->right()->AsLiteral()->raw_value()->AsNumber())); |
| // Mask bottom bits to match asm.js behavior. |
| current_function_builder_->Emit(kExprI32And); |
| byte code[] = {WASM_I8(~(size - 1))}; |
| @@ -794,9 +794,9 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| case Call::KEYED_PROPERTY_CALL: { |
| DCHECK(in_function_); |
| Property* p = expr->expression()->AsProperty(); |
| - DCHECK(p != nullptr); |
| + DCHECK_NOT_NULL(p); |
| VariableProxy* var = p->obj()->AsVariableProxy(); |
| - DCHECK(var != nullptr); |
| + DCHECK_NOT_NULL(var); |
| FunctionTableIndices* indices = LookupFunctionTable(var->var()); |
| current_function_builder_->EmitWithU8(kExprCallIndirect, |
| indices->signature_index); |
| @@ -823,7 +823,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| void VisitUnaryOperation(UnaryOperation* expr) { |
| switch (expr->op()) { |
| case Token::NOT: { |
| - DCHECK(TypeOf(expr->expression()) == kAstI32); |
| + DCHECK_EQ(kAstI32, TypeOf(expr->expression())); |
| current_function_builder_->Emit(kExprBoolNot); |
| break; |
| } |
| @@ -837,7 +837,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| bool MatchIntBinaryOperation(BinaryOperation* expr, Token::Value op, |
| int32_t val) { |
| - DCHECK(expr->right() != nullptr); |
| + DCHECK_NOT_NULL(expr->right()); |
| if (expr->op() == op && expr->right()->IsLiteral() && |
| TypeOf(expr) == kAstI32) { |
| Literal* right = expr->right()->AsLiteral(); |
| @@ -851,7 +851,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| bool MatchDoubleBinaryOperation(BinaryOperation* expr, Token::Value op, |
| double val) { |
| - DCHECK(expr->right() != nullptr); |
| + DCHECK_NOT_NULL(expr->right()); |
| if (expr->op() == op && expr->right()->IsLiteral() && |
| TypeOf(expr) == kAstF64) { |
| Literal* right = expr->right()->AsLiteral(); |
| @@ -886,12 +886,12 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| ConvertOperation MatchXor(BinaryOperation* expr) { |
| if (MatchIntBinaryOperation(expr, Token::BIT_XOR, 0xffffffff)) { |
| - DCHECK(TypeOf(expr->left()) == kAstI32); |
| - DCHECK(TypeOf(expr->right()) == kAstI32); |
| + DCHECK_EQ(kAstI32, TypeOf(expr->left())); |
| + DCHECK_EQ(kAstI32, TypeOf(expr->right())); |
| BinaryOperation* op = expr->left()->AsBinaryOperation(); |
| if (op != nullptr) { |
| if (MatchIntBinaryOperation(op, Token::BIT_XOR, 0xffffffff)) { |
| - DCHECK(TypeOf(op->right()) == kAstI32); |
| + DCHECK_EQ(kAstI32, TypeOf(op->right())); |
| if (TypeOf(op->left()) != kAstI32) { |
| return kToInt; |
| } else { |
| @@ -905,7 +905,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| ConvertOperation MatchMul(BinaryOperation* expr) { |
| if (MatchDoubleBinaryOperation(expr, Token::MUL, 1.0)) { |
| - DCHECK(TypeOf(expr->right()) == kAstF64); |
| + DCHECK_EQ(kAstF64, TypeOf(expr->right())); |
| if (TypeOf(expr->left()) != kAstF64) { |
| return kToDouble; |
| } else { |
| @@ -1119,7 +1119,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| } |
| TypeIndex TypeIndexOf(Expression* expr) { |
| - DCHECK(expr->bounds().lower == expr->bounds().upper); |
| + DCHECK_EQ(expr->bounds().lower, expr->bounds().upper); |
| Type* type = expr->bounds().lower; |
| if (type->Is(cache_.kAsmFixnum)) { |
| return kFixnum; |
| @@ -1179,7 +1179,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| }; |
| uint16_t LookupOrInsertLocal(Variable* v, LocalType type) { |
| - DCHECK(current_function_builder_ != nullptr); |
| + DCHECK_NOT_NULL(current_function_builder_); |
| ZoneHashMap::Entry* entry = |
| local_variables_.Lookup(v, ComputePointerHash(v)); |
| if (entry == nullptr) { |
| @@ -1214,7 +1214,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| } |
| uint16_t LookupOrInsertFunction(Variable* v) { |
| - DCHECK(builder_ != nullptr); |
| + DCHECK_NOT_NULL(builder_); |
| ZoneHashMap::Entry* entry = functions_.Lookup(v, ComputePointerHash(v)); |
| if (entry == nullptr) { |
| uint16_t index = builder_->AddFunction(); |
| @@ -1228,7 +1228,7 @@ class AsmWasmBuilderImpl : public AstVisitor { |
| } |
| LocalType TypeOf(Expression* expr) { |
| - DCHECK(expr->bounds().lower == expr->bounds().upper); |
| + DCHECK_EQ(expr->bounds().lower, expr->bounds().upper); |
| return TypeFrom(expr->bounds().lower); |
| } |