OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_IA32_CODE_STUBS_IA32_H_ | 5 #ifndef V8_IA32_CODE_STUBS_IA32_H_ |
6 #define V8_IA32_CODE_STUBS_IA32_H_ | 6 #define V8_IA32_CODE_STUBS_IA32_H_ |
7 | 7 |
8 #include "src/macro-assembler.h" | 8 #include "src/macro-assembler.h" |
9 #include "src/ic-inl.h" | 9 #include "src/ic-inl.h" |
10 | 10 |
(...skipping 22 matching lines...) Expand all Loading... |
33 Major MajorKey() { return StoreBufferOverflow; } | 33 Major MajorKey() { return StoreBufferOverflow; } |
34 int MinorKey() { return (save_doubles_ == kSaveFPRegs) ? 1 : 0; } | 34 int MinorKey() { return (save_doubles_ == kSaveFPRegs) ? 1 : 0; } |
35 }; | 35 }; |
36 | 36 |
37 | 37 |
38 class StringHelper : public AllStatic { | 38 class StringHelper : public AllStatic { |
39 public: | 39 public: |
40 // Generate code for copying characters using the rep movs instruction. | 40 // Generate code for copying characters using the rep movs instruction. |
41 // Copies ecx characters from esi to edi. Copying of overlapping regions is | 41 // Copies ecx characters from esi to edi. Copying of overlapping regions is |
42 // not supported. | 42 // not supported. |
43 static void GenerateCopyCharactersREP(MacroAssembler* masm, | 43 static void GenerateCopyCharacters(MacroAssembler* masm, |
44 Register dest, // Must be edi. | 44 Register dest, // Must be edi. |
45 Register src, // Must be esi. | 45 Register src, // Must be esi. |
46 Register count, // Must be ecx. | 46 Register count, // Must be ecx. |
47 Register scratch, // Neither of above. | 47 Register scratch, // Neither of above. |
48 bool ascii); | 48 String::Encoding encoding); |
49 | 49 |
50 // Generate string hash. | 50 // Generate string hash. |
51 static void GenerateHashInit(MacroAssembler* masm, | 51 static void GenerateHashInit(MacroAssembler* masm, |
52 Register hash, | 52 Register hash, |
53 Register character, | 53 Register character, |
54 Register scratch); | 54 Register scratch); |
55 static void GenerateHashAddCharacter(MacroAssembler* masm, | 55 static void GenerateHashAddCharacter(MacroAssembler* masm, |
56 Register hash, | 56 Register hash, |
57 Register character, | 57 Register character, |
58 Register scratch); | 58 Register scratch); |
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 Register address_; | 430 Register address_; |
431 RememberedSetAction remembered_set_action_; | 431 RememberedSetAction remembered_set_action_; |
432 SaveFPRegsMode save_fp_regs_mode_; | 432 SaveFPRegsMode save_fp_regs_mode_; |
433 RegisterAllocation regs_; | 433 RegisterAllocation regs_; |
434 }; | 434 }; |
435 | 435 |
436 | 436 |
437 } } // namespace v8::internal | 437 } } // namespace v8::internal |
438 | 438 |
439 #endif // V8_IA32_CODE_STUBS_IA32_H_ | 439 #endif // V8_IA32_CODE_STUBS_IA32_H_ |
OLD | NEW |