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

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

Issue 7929001: Initialize pre-allocated fields of JSObject with undefined. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Added ARM port. Created 9 years, 3 months 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 | Annotate | Revision Log
« no previous file with comments | « src/ia32/builtins-ia32.cc ('k') | src/ia32/macro-assembler-ia32.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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 439 matching lines...) Expand 10 before | Expand all | Expand 10 after
450 Label* gc_required); 450 Label* gc_required);
451 451
452 // Copy memory, byte-by-byte, from source to destination. Not optimized for 452 // Copy memory, byte-by-byte, from source to destination. Not optimized for
453 // long or aligned copies. 453 // long or aligned copies.
454 // The contents of index and scratch are destroyed. 454 // The contents of index and scratch are destroyed.
455 void CopyBytes(Register source, 455 void CopyBytes(Register source,
456 Register destination, 456 Register destination,
457 Register length, 457 Register length,
458 Register scratch); 458 Register scratch);
459 459
460 // Initialize fields with filler values. Fields starting at |start_offset|
461 // not including end_offset are overwritten with the value in |filler|. At
462 // the end the loop, |start_offset| takes the value of |end_offset|.
463 void InitializeFieldsWithFiller(Register start_offset,
464 Register end_offset,
465 Register filler);
466
460 // --------------------------------------------------------------------------- 467 // ---------------------------------------------------------------------------
461 // Support functions. 468 // Support functions.
462 469
463 // Check if result is zero and op is negative. 470 // Check if result is zero and op is negative.
464 void NegativeZeroTest(Register result, Register op, Label* then_label); 471 void NegativeZeroTest(Register result, Register op, Label* then_label);
465 472
466 // Check if result is zero and any of op1 and op2 are negative. 473 // Check if result is zero and any of op1 and op2 are negative.
467 // Register scratch is destroyed, and it must be different from op2. 474 // Register scratch is destroyed, and it must be different from op2.
468 void NegativeZeroTest(Register result, Register op1, Register op2, 475 void NegativeZeroTest(Register result, Register op1, Register op2,
469 Register scratch, Label* then_label); 476 Register scratch, Label* then_label);
(...skipping 336 matching lines...) Expand 10 before | Expand all | Expand 10 after
806 } \ 813 } \
807 masm-> 814 masm->
808 #else 815 #else
809 #define ACCESS_MASM(masm) masm-> 816 #define ACCESS_MASM(masm) masm->
810 #endif 817 #endif
811 818
812 819
813 } } // namespace v8::internal 820 } } // namespace v8::internal
814 821
815 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ 822 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_
OLDNEW
« no previous file with comments | « src/ia32/builtins-ia32.cc ('k') | src/ia32/macro-assembler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698