| OLD | NEW | 
|     1 // Copyright 2006-2009 the V8 project authors. All rights reserved. |     1 // Copyright 2006-2009 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 4556 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  4567     // Calling convention says that first double is in r0 and r1. |  4567     // Calling convention says that first double is in r0 and r1. | 
|  4568     __ ldr(r0, FieldMemOperand(r1, HeapNumber::kValueOffset)); |  4568     __ ldr(r0, FieldMemOperand(r1, HeapNumber::kValueOffset)); | 
|  4569     __ ldr(r1, FieldMemOperand(r1, HeapNumber::kValueOffset + kPointerSize)); |  4569     __ ldr(r1, FieldMemOperand(r1, HeapNumber::kValueOffset + kPointerSize)); | 
|  4570     // Call C routine that may not cause GC or other trouble. |  4570     // Call C routine that may not cause GC or other trouble. | 
|  4571     __ mov(r5, Operand(ExternalReference::double_fp_operation(operation))); |  4571     __ mov(r5, Operand(ExternalReference::double_fp_operation(operation))); | 
|  4572 #if !defined(__arm__) |  4572 #if !defined(__arm__) | 
|  4573     // Notify the simulator that we are calling an add routine in C. |  4573     // Notify the simulator that we are calling an add routine in C. | 
|  4574     __ swi(swi_number); |  4574     __ swi(swi_number); | 
|  4575 #else |  4575 #else | 
|  4576     // Actually call the add routine written in C. |  4576     // Actually call the add routine written in C. | 
|  4577     __ blx(r5); |  4577     __ Call(r5); | 
|  4578 #endif |  4578 #endif | 
|  4579     // Store answer in the overwritable heap number. |  4579     // Store answer in the overwritable heap number. | 
|  4580     __ pop(r4); |  4580     __ pop(r4); | 
|  4581     __ str(r0, FieldMemOperand(r4, HeapNumber::kValueOffset)); |  4581     __ str(r0, FieldMemOperand(r4, HeapNumber::kValueOffset)); | 
|  4582     __ str(r1, FieldMemOperand(r4, HeapNumber::kValueOffset + kPointerSize)); |  4582     __ str(r1, FieldMemOperand(r4, HeapNumber::kValueOffset + kPointerSize)); | 
|  4583     __ mov(r0, Operand(r4)); |  4583     __ mov(r0, Operand(r4)); | 
|  4584     // And we are done. |  4584     // And we are done. | 
|  4585     __ pop(pc); |  4585     __ pop(pc); | 
|  4586   } |  4586   } | 
|  4587 } |  4587 } | 
| (...skipping 725 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  5313   __ mov(r2, Operand(0)); |  5313   __ mov(r2, Operand(0)); | 
|  5314   __ GetBuiltinEntry(r3, Builtins::CALL_NON_FUNCTION); |  5314   __ GetBuiltinEntry(r3, Builtins::CALL_NON_FUNCTION); | 
|  5315   __ Jump(Handle<Code>(Builtins::builtin(Builtins::ArgumentsAdaptorTrampoline)), |  5315   __ Jump(Handle<Code>(Builtins::builtin(Builtins::ArgumentsAdaptorTrampoline)), | 
|  5316           RelocInfo::CODE_TARGET); |  5316           RelocInfo::CODE_TARGET); | 
|  5317 } |  5317 } | 
|  5318  |  5318  | 
|  5319  |  5319  | 
|  5320 #undef __ |  5320 #undef __ | 
|  5321  |  5321  | 
|  5322 } }  // namespace v8::internal |  5322 } }  // namespace v8::internal | 
| OLD | NEW |