Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/ssa/codegen.dart |
| =================================================================== |
| --- sdk/lib/_internal/compiler/implementation/ssa/codegen.dart (revision 17016) |
| +++ sdk/lib/_internal/compiler/implementation/ssa/codegen.dart (working copy) |
| @@ -1279,19 +1279,15 @@ |
| } |
| visitInvokeUnary(HInvokeUnary node, String op) { |
| - if (node.isBuiltin(types)) { |
| - use(node.operand); |
| - push(new js.Prefix(op, pop()), node); |
| - } else { |
| - visitInvokeStatic(node); |
| - } |
| + use(node.operand); |
| + push(new js.Prefix(op, pop()), node); |
| } |
| // We want the outcome of bit-operations to be positive. We use the unsigned |
| // shift operator to achieve this. |
| visitBitInvokeUnary(HInvokeUnary node, String op) { |
| visitInvokeUnary(node, op); |
| - if (node.isBuiltin(types) && requiresUintConversion(node)) { |
| + if (requiresUintConversion(node)) { |
| push(new js.Binary(">>>", pop(), new js.LiteralNumber("0")), node); |
| } |
| } |
| @@ -2143,17 +2139,13 @@ |
| } |
| void visitIndexAssign(HIndexAssign node) { |
| - if (node.isBuiltin(types)) { |
| - use(node.inputs[1]); |
| - js.Expression receiver = pop(); |
| - use(node.inputs[2]); |
| - js.Expression index = pop(); |
| - use(node.inputs[3]); |
| - push(new js.Assignment(new js.PropertyAccess(receiver, index), pop()), |
| - node); |
| - } else { |
| - visitInvokeStatic(node); |
| - } |
| + use(node.receiver); |
| + js.Expression receiver = pop(); |
| + use(node.index); |
| + js.Expression index = pop(); |
| + use(node.value); |
| + push(new js.Assignment(new js.PropertyAccess(receiver, index), pop()), |
|
kasperl
2013/01/15 07:06:12
Fits on one line now?
ngeoffray
2013/01/15 08:56:09
No.
|
| + node); |
| } |
| void checkInt(HInstruction input, String cmp) { |