| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
| 6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
| 7 | 7 |
| 8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
| 9 #include "src/globals.h" | 9 #include "src/globals.h" |
| 10 #include "src/mips/assembler-mips.h" | 10 #include "src/mips/assembler-mips.h" |
| (...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 531 // tag_allocated_object is true the result is tagged as as a heap object. | 531 // tag_allocated_object is true the result is tagged as as a heap object. |
| 532 // All registers are clobbered also when control continues at the gc_required | 532 // All registers are clobbered also when control continues at the gc_required |
| 533 // label. | 533 // label. |
| 534 void Allocate(int object_size, | 534 void Allocate(int object_size, |
| 535 Register result, | 535 Register result, |
| 536 Register scratch1, | 536 Register scratch1, |
| 537 Register scratch2, | 537 Register scratch2, |
| 538 Label* gc_required, | 538 Label* gc_required, |
| 539 AllocationFlags flags); | 539 AllocationFlags flags); |
| 540 | 540 |
| 541 void Allocate(Register object_size, | 541 void Allocate(Register object_size, Register result, Register result_new, |
| 542 Register result, | 542 Register scratch, Label* gc_required, AllocationFlags flags); |
| 543 Register scratch1, | |
| 544 Register scratch2, | |
| 545 Label* gc_required, | |
| 546 AllocationFlags flags); | |
| 547 | 543 |
| 548 void AllocateTwoByteString(Register result, | 544 void AllocateTwoByteString(Register result, |
| 549 Register length, | 545 Register length, |
| 550 Register scratch1, | 546 Register scratch1, |
| 551 Register scratch2, | 547 Register scratch2, |
| 552 Register scratch3, | 548 Register scratch3, |
| 553 Label* gc_required); | 549 Label* gc_required); |
| 554 void AllocateOneByteString(Register result, Register length, | 550 void AllocateOneByteString(Register result, Register length, |
| 555 Register scratch1, Register scratch2, | 551 Register scratch1, Register scratch2, |
| 556 Register scratch3, Label* gc_required); | 552 Register scratch3, Label* gc_required); |
| (...skipping 468 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1025 void CopyFields(Register dst, Register src, RegList temps, int field_count); | 1021 void CopyFields(Register dst, Register src, RegList temps, int field_count); |
| 1026 | 1022 |
| 1027 // Copies a number of bytes from src to dst. All registers are clobbered. On | 1023 // Copies a number of bytes from src to dst. All registers are clobbered. On |
| 1028 // exit src and dst will point to the place just after where the last byte was | 1024 // exit src and dst will point to the place just after where the last byte was |
| 1029 // read or written and length will be zero. | 1025 // read or written and length will be zero. |
| 1030 void CopyBytes(Register src, | 1026 void CopyBytes(Register src, |
| 1031 Register dst, | 1027 Register dst, |
| 1032 Register length, | 1028 Register length, |
| 1033 Register scratch); | 1029 Register scratch); |
| 1034 | 1030 |
| 1035 // Initialize fields with filler values. Fields starting at |start_offset| | 1031 // Initialize fields with filler values. Fields starting at |current_address| |
| 1036 // not including end_offset are overwritten with the value in |filler|. At | 1032 // not including |end_address| are overwritten with the value in |filler|. At |
| 1037 // the end the loop, |start_offset| takes the value of |end_offset|. | 1033 // the end the loop, |current_address| takes the value of |end_address|. |
| 1038 void InitializeFieldsWithFiller(Register start_offset, | 1034 void InitializeFieldsWithFiller(Register current_address, |
| 1039 Register end_offset, | 1035 Register end_address, Register filler); |
| 1040 Register filler); | |
| 1041 | 1036 |
| 1042 // ------------------------------------------------------------------------- | 1037 // ------------------------------------------------------------------------- |
| 1043 // Support functions. | 1038 // Support functions. |
| 1044 | 1039 |
| 1045 // Machine code version of Map::GetConstructor(). | 1040 // Machine code version of Map::GetConstructor(). |
| 1046 // |temp| holds |result|'s map when done, and |temp2| its instance type. | 1041 // |temp| holds |result|'s map when done, and |temp2| its instance type. |
| 1047 void GetMapConstructor(Register result, Register map, Register temp, | 1042 void GetMapConstructor(Register result, Register map, Register temp, |
| 1048 Register temp2); | 1043 Register temp2); |
| 1049 | 1044 |
| 1050 // Try to get function prototype of a function and puts the value in | 1045 // Try to get function prototype of a function and puts the value in |
| (...skipping 711 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1762 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1757 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
| 1763 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1758 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
| 1764 #else | 1759 #else |
| 1765 #define ACCESS_MASM(masm) masm-> | 1760 #define ACCESS_MASM(masm) masm-> |
| 1766 #endif | 1761 #endif |
| 1767 | 1762 |
| 1768 } // namespace internal | 1763 } // namespace internal |
| 1769 } // namespace v8 | 1764 } // namespace v8 |
| 1770 | 1765 |
| 1771 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1766 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
| OLD | NEW |