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

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

Issue 272163002: Make BitField3 a raw uint32 field, and move to the start of the map. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 7 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/full-codegen-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 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_IA32_MACRO_ASSEMBLER_IA32_H_ 5 #ifndef V8_IA32_MACRO_ASSEMBLER_IA32_H_
6 #define V8_IA32_MACRO_ASSEMBLER_IA32_H_ 6 #define V8_IA32_MACRO_ASSEMBLER_IA32_H_
7 7
8 #include "assembler.h" 8 #include "assembler.h"
9 #include "frames.h" 9 #include "frames.h"
10 #include "v8globals.h" 10 #include "v8globals.h"
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
493 j(not_zero, not_smi_label, distance); 493 j(not_zero, not_smi_label, distance);
494 } 494 }
495 495
496 void LoadInstanceDescriptors(Register map, Register descriptors); 496 void LoadInstanceDescriptors(Register map, Register descriptors);
497 void EnumLength(Register dst, Register map); 497 void EnumLength(Register dst, Register map);
498 void NumberOfOwnDescriptors(Register dst, Register map); 498 void NumberOfOwnDescriptors(Register dst, Register map);
499 499
500 template<typename Field> 500 template<typename Field>
501 void DecodeField(Register reg) { 501 void DecodeField(Register reg) {
502 static const int shift = Field::kShift; 502 static const int shift = Field::kShift;
503 static const int mask = (Field::kMask >> Field::kShift) << kSmiTagSize; 503 static const int mask = Field::kMask >> Field::kShift;
504 sar(reg, shift); 504 sar(reg, shift);
505 and_(reg, Immediate(mask)); 505 and_(reg, Immediate(mask));
506 } 506 }
507 void LoadPowerOf2(XMMRegister dst, Register scratch, int power); 507 void LoadPowerOf2(XMMRegister dst, Register scratch, int power);
508 508
509 // Abort execution if argument is not a number, enabled via --debug-code. 509 // Abort execution if argument is not a number, enabled via --debug-code.
510 void AssertNumber(Register object); 510 void AssertNumber(Register object);
511 511
512 // Abort execution if argument is not a smi, enabled via --debug-code. 512 // Abort execution if argument is not a smi, enabled via --debug-code.
513 void AssertSmi(Register object); 513 void AssertSmi(Register object);
(...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after
1090 } \ 1090 } \
1091 masm-> 1091 masm->
1092 #else 1092 #else
1093 #define ACCESS_MASM(masm) masm-> 1093 #define ACCESS_MASM(masm) masm->
1094 #endif 1094 #endif
1095 1095
1096 1096
1097 } } // namespace v8::internal 1097 } } // namespace v8::internal
1098 1098
1099 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_ 1099 #endif // V8_IA32_MACRO_ASSEMBLER_IA32_H_
OLDNEW
« no previous file with comments | « src/ia32/full-codegen-ia32.cc ('k') | src/ia32/macro-assembler-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698