function_->scope()->ContextChainLength(source->var()->scope());
__ LoadContext(scratch, context_chain_length);
return CodeGenerator::ContextOperand(scratch, source->index());
- break;
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- // Fall-through.
- default:
- UNREACHABLE();
- return MemOperand(r0, 0); // Dead code to make the compiler happy.
}
+ UNREACHABLE();
+ return MemOperand(r0, 0);
}
UNREACHABLE();
case Expression::kEffect:
break;
- case Expression::kValue: // Fall through.
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kValue:
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
Move(scratch, source);
Move(context, scratch);
UNREACHABLE();
case Expression::kEffect:
break;
- case Expression::kValue: // Fall through.
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kValue:
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
__ mov(ip, Operand(expr->handle()));
Move(context, ip);
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- default:
- UNREACHABLE();
}
}
if (slot != NULL) {
switch (slot->type()) {
- case Slot::PARAMETER: // Fall through.
+ case Slot::PARAMETER:
case Slot::LOCAL:
if (decl->mode() == Variable::CONST) {
__ LoadRoot(ip, Heap::kTheHoleValueRootIndex);
Slot* slot = rewrite->AsSlot();
if (FLAG_debug_code) {
switch (slot->type()) {
- case Slot::LOCAL:
- case Slot::PARAMETER: {
+ case Slot::PARAMETER:
+ case Slot::LOCAL: {
Comment cmnt(masm_, "Stack slot");
break;
}
case Slot::LOOKUP:
UNIMPLEMENTED();
break;
- default:
- UNREACHABLE();
}
}
Move(context, slot, r0);
__ ldr(r0, MemOperand(sp)); // Restore result into r0.
break;
- case ObjectLiteral::Property::GETTER: // Fall through.
+ case ObjectLiteral::Property::GETTER:
case ObjectLiteral::Property::SETTER:
__ push(r0);
Visit(key);
// Value is false so it's needed.
__ LoadRoot(ip, Heap::kUndefinedValueRootIndex);
__ push(ip);
- case Expression::kTest: // Fall through.
+ case Expression::kTest:
case Expression::kValueTest:
__ jmp(false_label_);
break;
case Expression::kEffect:
// Do not save result.
break;
- case Expression::kValue: // Fall through
- case Expression::kTest: // Fall through
- case Expression::kTestValue: // Fall through
+ case Expression::kValue:
+ case Expression::kTest:
+ case Expression::kTestValue:
case Expression::kValueTest:
// Save the result on the stack. If we have a named or keyed property
// we store the result under the receiver that is currently on top
case Slot::LOCAL:
offset += JavaScriptFrameConstants::kLocal0Offset;
break;
- default:
+ case Slot::CONTEXT:
+ case Slot::LOOKUP:
UNREACHABLE();
}
return offset;
switch (expr->context()) {
case Expression::kUninitialized:
UNREACHABLE();
- case Expression::kEffect: // Fall through.
+ case Expression::kEffect:
case Expression::kTest:
// The value of the left subexpression is not needed.
expected = Expression::kTest;
function_->scope()->ContextChainLength(source->var()->scope());
__ LoadContext(scratch, context_chain_length);
return CodeGenerator::ContextOperand(scratch, source->index());
- break;
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- // Fall-through.
- default:
- UNREACHABLE();
- return Operand(eax, 0); // Dead code to make the compiler happy.
}
+ UNREACHABLE();
+ return Operand(eax, 0);
}
__ push(location);
break;
}
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
Move(scratch, source);
Move(context, scratch);
case Expression::kValue:
__ push(Immediate(expr->handle()));
break;
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
__ mov(eax, expr->handle());
Move(context, eax);
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- default:
- UNREACHABLE();
}
}
if (slot != NULL) {
switch (slot->type()) {
- case Slot::PARAMETER: // Fall through.
+ case Slot::PARAMETER:
case Slot::LOCAL:
if (decl->mode() == Variable::CONST) {
__ mov(Operand(ebp, SlotOffset(var->slot())),
Slot* slot = rewrite->AsSlot();
if (FLAG_debug_code) {
switch (slot->type()) {
- case Slot::LOCAL:
- case Slot::PARAMETER: {
+ case Slot::PARAMETER:
+ case Slot::LOCAL: {
Comment cmnt(masm_, "Stack slot");
break;
}
case Slot::LOOKUP:
UNIMPLEMENTED();
break;
- default:
- UNREACHABLE();
}
}
Move(context, slot, eax);
result_saved = true;
}
switch (property->kind()) {
- case ObjectLiteral::Property::MATERIALIZED_LITERAL: // fall through
+ case ObjectLiteral::Property::MATERIALIZED_LITERAL: // Fall through.
ASSERT(!CompileTimeValue::IsCompileTimeValue(value));
case ObjectLiteral::Property::COMPUTED:
if (key->handle()->IsSymbol()) {
__ mov(eax, Operand(esp, 0)); // Restore result into eax.
break;
}
- // fall through
+ // Fall through.
case ObjectLiteral::Property::PROTOTYPE:
__ push(eax);
Visit(key);
__ CallRuntime(Runtime::kSetProperty, 3);
__ mov(eax, Operand(esp, 0)); // Restore result into eax.
break;
- case ObjectLiteral::Property::SETTER: // fall through
+ case ObjectLiteral::Property::SETTER:
case ObjectLiteral::Property::GETTER:
__ push(eax);
Visit(key);
// Value is false so it's needed.
__ push(Immediate(Factory::undefined_value()));
// Fall through.
- case Expression::kTest: // Fall through.
+ case Expression::kTest:
case Expression::kValueTest:
__ jmp(false_label_);
break;
case Expression::kEffect:
// Do not save result.
break;
- case Expression::kValue: // Fall through
- case Expression::kTest: // Fall through
- case Expression::kTestValue: // Fall through
+ case Expression::kValue:
+ case Expression::kTest:
+ case Expression::kTestValue:
case Expression::kValueTest:
// Save the result on the stack. If we have a named or keyed property
// we store the result under the receiver that is currently on top
function_->scope()->ContextChainLength(source->var()->scope());
__ LoadContext(scratch, context_chain_length);
return CodeGenerator::ContextOperand(scratch, source->index());
- break;
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- // Fall-through.
- default:
- UNREACHABLE();
- return Operand(rax, 0); // Dead code to make the compiler happy.
}
+ UNREACHABLE();
+ return Operand(rax, 0);
}
__ push(location);
break;
}
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
Move(scratch, source);
Move(context, scratch);
case Expression::kValue:
__ Push(expr->handle());
break;
- case Expression::kTest: // Fall through.
- case Expression::kValueTest: // Fall through.
+ case Expression::kTest:
+ case Expression::kValueTest:
case Expression::kTestValue:
__ Move(rax, expr->handle());
Move(context, rax);
}
case Slot::LOOKUP:
UNIMPLEMENTED();
- default:
- UNREACHABLE();
}
}
if (slot != NULL) {
switch (slot->type()) {
- case Slot::PARAMETER: // Fall through.
+ case Slot::PARAMETER:
case Slot::LOCAL:
if (decl->mode() == Variable::CONST) {
__ LoadRoot(kScratchRegister, Heap::kTheHoleValueRootIndex);
case Slot::LOOKUP:
UNIMPLEMENTED();
break;
- default:
- UNREACHABLE();
}
}
Move(context, slot, rax);
result_saved = true;
}
switch (property->kind()) {
- case ObjectLiteral::Property::MATERIALIZED_LITERAL: // fall through
+ case ObjectLiteral::Property::MATERIALIZED_LITERAL:
ASSERT(!CompileTimeValue::IsCompileTimeValue(value));
case ObjectLiteral::Property::COMPUTED:
if (key->handle()->IsSymbol()) {
__ movq(rax, Operand(rsp, 0)); // Restore result back into rax.
break;
}
- // fall through
+ // Fall through.
case ObjectLiteral::Property::PROTOTYPE:
__ push(rax);
Visit(key);
__ CallRuntime(Runtime::kSetProperty, 3);
__ movq(rax, Operand(rsp, 0)); // Restore result into rax.
break;
- case ObjectLiteral::Property::SETTER: // fall through
+ case ObjectLiteral::Property::SETTER:
case ObjectLiteral::Property::GETTER:
__ push(rax);
Visit(key);
// Value is false so it's needed.
__ PushRoot(Heap::kUndefinedValueRootIndex);
// Fall through.
- case Expression::kTest: // Fall through.
+ case Expression::kTest:
case Expression::kValueTest:
__ jmp(false_label_);
break;
switch (expr->op()) {
case Token::EQ_STRICT:
strict = true;
- // Fall through
+ // Fall through.
case Token::EQ:
cc = equal;
__ pop(rax);