OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 4111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4122 PrepareForBailoutBeforeSplit(TOS_REG, true, if_true, if_false); | 4122 PrepareForBailoutBeforeSplit(TOS_REG, true, if_true, if_false); |
4123 // The stub returns 0 for true. | 4123 // The stub returns 0 for true. |
4124 __ tst(r0, r0); | 4124 __ tst(r0, r0); |
4125 Split(eq, if_true, if_false, fall_through); | 4125 Split(eq, if_true, if_false, fall_through); |
4126 break; | 4126 break; |
4127 } | 4127 } |
4128 | 4128 |
4129 default: { | 4129 default: { |
4130 VisitForAccumulatorValue(expr->right()); | 4130 VisitForAccumulatorValue(expr->right()); |
4131 Condition cond = eq; | 4131 Condition cond = eq; |
4132 bool strict = false; | |
4133 switch (op) { | 4132 switch (op) { |
4134 case Token::EQ_STRICT: | 4133 case Token::EQ_STRICT: |
4135 strict = true; | |
4136 // Fall through | |
4137 case Token::EQ: | 4134 case Token::EQ: |
4138 cond = eq; | 4135 cond = eq; |
4139 __ pop(r1); | 4136 __ pop(r1); |
4140 break; | 4137 break; |
4141 case Token::LT: | 4138 case Token::LT: |
4142 cond = lt; | 4139 cond = lt; |
4143 __ pop(r1); | 4140 __ pop(r1); |
4144 break; | 4141 break; |
4145 case Token::GT: | 4142 case Token::GT: |
4146 // Reverse left and right sides to obtain ECMA-262 conversion order. | 4143 // Reverse left and right sides to obtain ECMA-262 conversion order. |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4298 __ mov(r1, Operand(r1, ASR, 1)); // Un-smi-tag value. | 4295 __ mov(r1, Operand(r1, ASR, 1)); // Un-smi-tag value. |
4299 __ add(pc, r1, Operand(masm_->CodeObject())); | 4296 __ add(pc, r1, Operand(masm_->CodeObject())); |
4300 } | 4297 } |
4301 | 4298 |
4302 | 4299 |
4303 #undef __ | 4300 #undef __ |
4304 | 4301 |
4305 } } // namespace v8::internal | 4302 } } // namespace v8::internal |
4306 | 4303 |
4307 #endif // V8_TARGET_ARCH_ARM | 4304 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |