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 3208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3219 VisitForStackValue(args->at(1)); | 3219 VisitForStackValue(args->at(1)); |
3220 | 3220 |
3221 StringCompareStub stub; | 3221 StringCompareStub stub; |
3222 __ CallStub(&stub); | 3222 __ CallStub(&stub); |
3223 context()->Plug(r0); | 3223 context()->Plug(r0); |
3224 } | 3224 } |
3225 | 3225 |
3226 | 3226 |
3227 void FullCodeGenerator::EmitMathSin(ZoneList<Expression*>* args) { | 3227 void FullCodeGenerator::EmitMathSin(ZoneList<Expression*>* args) { |
3228 // Load the argument on the stack and call the stub. | 3228 // Load the argument on the stack and call the stub. |
3229 TranscendentalCacheStub stub(TranscendentalCache::SIN); | 3229 TranscendentalCacheStub stub(TranscendentalCache::SIN, |
| 3230 TranscendentalCacheStub::TAGGED); |
3230 ASSERT(args->length() == 1); | 3231 ASSERT(args->length() == 1); |
3231 VisitForStackValue(args->at(0)); | 3232 VisitForStackValue(args->at(0)); |
3232 __ CallStub(&stub); | 3233 __ CallStub(&stub); |
3233 context()->Plug(r0); | 3234 context()->Plug(r0); |
3234 } | 3235 } |
3235 | 3236 |
3236 | 3237 |
3237 void FullCodeGenerator::EmitMathCos(ZoneList<Expression*>* args) { | 3238 void FullCodeGenerator::EmitMathCos(ZoneList<Expression*>* args) { |
3238 // Load the argument on the stack and call the stub. | 3239 // Load the argument on the stack and call the stub. |
3239 TranscendentalCacheStub stub(TranscendentalCache::COS); | 3240 TranscendentalCacheStub stub(TranscendentalCache::COS, |
| 3241 TranscendentalCacheStub::TAGGED); |
3240 ASSERT(args->length() == 1); | 3242 ASSERT(args->length() == 1); |
3241 VisitForStackValue(args->at(0)); | 3243 VisitForStackValue(args->at(0)); |
3242 __ CallStub(&stub); | 3244 __ CallStub(&stub); |
3243 context()->Plug(r0); | 3245 context()->Plug(r0); |
3244 } | 3246 } |
3245 | 3247 |
3246 | 3248 |
3247 void FullCodeGenerator::EmitMathLog(ZoneList<Expression*>* args) { | 3249 void FullCodeGenerator::EmitMathLog(ZoneList<Expression*>* args) { |
3248 // Load the argument on the stack and call the stub. | 3250 // Load the argument on the stack and call the stub. |
3249 TranscendentalCacheStub stub(TranscendentalCache::LOG); | 3251 TranscendentalCacheStub stub(TranscendentalCache::LOG, |
| 3252 TranscendentalCacheStub::TAGGED); |
3250 ASSERT(args->length() == 1); | 3253 ASSERT(args->length() == 1); |
3251 VisitForStackValue(args->at(0)); | 3254 VisitForStackValue(args->at(0)); |
3252 __ CallStub(&stub); | 3255 __ CallStub(&stub); |
3253 context()->Plug(r0); | 3256 context()->Plug(r0); |
3254 } | 3257 } |
3255 | 3258 |
3256 | 3259 |
3257 void FullCodeGenerator::EmitMathSqrt(ZoneList<Expression*>* args) { | 3260 void FullCodeGenerator::EmitMathSqrt(ZoneList<Expression*>* args) { |
3258 // Load the argument on the stack and call the runtime function. | 3261 // Load the argument on the stack and call the runtime function. |
3259 ASSERT(args->length() == 1); | 3262 ASSERT(args->length() == 1); |
(...skipping 919 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4179 __ mov(r1, Operand(r1, ASR, 1)); // Un-smi-tag value. | 4182 __ mov(r1, Operand(r1, ASR, 1)); // Un-smi-tag value. |
4180 __ add(pc, r1, Operand(masm_->CodeObject())); | 4183 __ add(pc, r1, Operand(masm_->CodeObject())); |
4181 } | 4184 } |
4182 | 4185 |
4183 | 4186 |
4184 #undef __ | 4187 #undef __ |
4185 | 4188 |
4186 } } // namespace v8::internal | 4189 } } // namespace v8::internal |
4187 | 4190 |
4188 #endif // V8_TARGET_ARCH_ARM | 4191 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |