| OLD | NEW | 
|     1 // Copyright 2009 the V8 project authors. All rights reserved. |     1 // Copyright 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 380 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   391  |   391  | 
|   392   // rax: untagged index |   392   // rax: untagged index | 
|   393   // rcx: elements array |   393   // rcx: elements array | 
|   394   __ movq(rcx, FieldOperand(rcx, ExternalArray::kExternalPointerOffset)); |   394   __ movq(rcx, FieldOperand(rcx, ExternalArray::kExternalPointerOffset)); | 
|   395   // rcx: base pointer of external storage |   395   // rcx: base pointer of external storage | 
|   396   switch (array_type) { |   396   switch (array_type) { | 
|   397     case kExternalByteArray: |   397     case kExternalByteArray: | 
|   398       __ movsxbq(rax, Operand(rcx, rax, times_1, 0)); |   398       __ movsxbq(rax, Operand(rcx, rax, times_1, 0)); | 
|   399       break; |   399       break; | 
|   400     case kExternalUnsignedByteArray: |   400     case kExternalUnsignedByteArray: | 
|   401       __ movb(rax, Operand(rcx, rax, times_1, 0)); |   401       __ movzxbq(rax, Operand(rcx, rax, times_1, 0)); | 
|   402       break; |   402       break; | 
|   403     case kExternalShortArray: |   403     case kExternalShortArray: | 
|   404       __ movsxwq(rax, Operand(rcx, rax, times_2, 0)); |   404       __ movsxwq(rax, Operand(rcx, rax, times_2, 0)); | 
|   405       break; |   405       break; | 
|   406     case kExternalUnsignedShortArray: |   406     case kExternalUnsignedShortArray: | 
|   407       __ movzxwq(rax, Operand(rcx, rax, times_2, 0)); |   407       __ movzxwq(rax, Operand(rcx, rax, times_2, 0)); | 
|   408       break; |   408       break; | 
|   409     case kExternalIntArray: |   409     case kExternalIntArray: | 
|   410       __ movsxlq(rax, Operand(rcx, rax, times_4, 0)); |   410       __ movsxlq(rax, Operand(rcx, rax, times_4, 0)); | 
|   411       break; |   411       break; | 
| (...skipping 900 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  1312  |  1312  | 
|  1313   // Cache miss: Jump to runtime. |  1313   // Cache miss: Jump to runtime. | 
|  1314   Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss))); |  1314   Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss))); | 
|  1315 } |  1315 } | 
|  1316  |  1316  | 
|  1317  |  1317  | 
|  1318 #undef __ |  1318 #undef __ | 
|  1319  |  1319  | 
|  1320  |  1320  | 
|  1321 } }  // namespace v8::internal |  1321 } }  // namespace v8::internal | 
| OLD | NEW |