Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: src/arm/macro-assembler-arm.h

Issue 1459083003: Fix object initialization when slack tracking for it's map is still enabled. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@toon
Patch Set: Fixed second nit in all platforms Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/arm/builtins-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_ARM_MACRO_ASSEMBLER_ARM_H_ 5 #ifndef V8_ARM_MACRO_ASSEMBLER_ARM_H_
6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_ 6 #define V8_ARM_MACRO_ASSEMBLER_ARM_H_
7 7
8 #include "src/assembler.h" 8 #include "src/assembler.h"
9 #include "src/bailout-reason.h" 9 #include "src/bailout-reason.h"
10 #include "src/frames.h" 10 #include "src/frames.h"
(...skipping 745 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 // tag_allocated_object is true the result is tagged as as a heap object. 756 // tag_allocated_object is true the result is tagged as as a heap object.
757 // All registers are clobbered also when control continues at the gc_required 757 // All registers are clobbered also when control continues at the gc_required
758 // label. 758 // label.
759 void Allocate(int object_size, 759 void Allocate(int object_size,
760 Register result, 760 Register result,
761 Register scratch1, 761 Register scratch1,
762 Register scratch2, 762 Register scratch2,
763 Label* gc_required, 763 Label* gc_required,
764 AllocationFlags flags); 764 AllocationFlags flags);
765 765
766 void Allocate(Register object_size, 766 void Allocate(Register object_size, Register result, Register result_end,
767 Register result, 767 Register scratch, Label* gc_required, AllocationFlags flags);
768 Register scratch1,
769 Register scratch2,
770 Label* gc_required,
771 AllocationFlags flags);
772 768
773 void AllocateTwoByteString(Register result, 769 void AllocateTwoByteString(Register result,
774 Register length, 770 Register length,
775 Register scratch1, 771 Register scratch1,
776 Register scratch2, 772 Register scratch2,
777 Register scratch3, 773 Register scratch3,
778 Label* gc_required); 774 Label* gc_required);
779 void AllocateOneByteString(Register result, Register length, 775 void AllocateOneByteString(Register result, Register length,
780 Register scratch1, Register scratch2, 776 Register scratch1, Register scratch2,
781 Register scratch3, Label* gc_required); 777 Register scratch3, Label* gc_required);
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
820 int field_count); 816 int field_count);
821 817
822 // Copies a number of bytes from src to dst. All registers are clobbered. On 818 // Copies a number of bytes from src to dst. All registers are clobbered. On
823 // exit src and dst will point to the place just after where the last byte was 819 // exit src and dst will point to the place just after where the last byte was
824 // read or written and length will be zero. 820 // read or written and length will be zero.
825 void CopyBytes(Register src, 821 void CopyBytes(Register src,
826 Register dst, 822 Register dst,
827 Register length, 823 Register length,
828 Register scratch); 824 Register scratch);
829 825
830 // Initialize fields with filler values. Fields starting at |start_offset| 826 // Initialize fields with filler values. Fields starting at |current_address|
831 // not including end_offset are overwritten with the value in |filler|. At 827 // not including |end_address| are overwritten with the value in |filler|. At
832 // the end the loop, |start_offset| takes the value of |end_offset|. 828 // the end the loop, |current_address| takes the value of |end_address|.
833 void InitializeFieldsWithFiller(Register start_offset, 829 void InitializeFieldsWithFiller(Register current_address,
834 Register end_offset, 830 Register end_address, Register filler);
835 Register filler);
836 831
837 // --------------------------------------------------------------------------- 832 // ---------------------------------------------------------------------------
838 // Support functions. 833 // Support functions.
839 834
840 // Machine code version of Map::GetConstructor(). 835 // Machine code version of Map::GetConstructor().
841 // |temp| holds |result|'s map when done, and |temp2| its instance type. 836 // |temp| holds |result|'s map when done, and |temp2| its instance type.
842 void GetMapConstructor(Register result, Register map, Register temp, 837 void GetMapConstructor(Register result, Register map, Register temp,
843 Register temp2); 838 Register temp2);
844 839
845 // Try to get function prototype of a function and puts the value in 840 // Try to get function prototype of a function and puts the value in
(...skipping 716 matching lines...) Expand 10 before | Expand all | Expand 10 after
1562 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> 1557 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm->
1563 #else 1558 #else
1564 #define ACCESS_MASM(masm) masm-> 1559 #define ACCESS_MASM(masm) masm->
1565 #endif 1560 #endif
1566 1561
1567 1562
1568 } // namespace internal 1563 } // namespace internal
1569 } // namespace v8 1564 } // namespace v8
1570 1565
1571 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_ 1566 #endif // V8_ARM_MACRO_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « src/arm/builtins-arm.cc ('k') | src/arm/macro-assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698