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

Side by Side Diff: runtime/vm/constants_x64.h

Issue 8818001: Add 64-bit stubs to call into the runtime and to call native functions. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: '' Created 9 years 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 | « runtime/vm/code_generator_ia32.cc ('k') | runtime/vm/runtime_entry_test.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 (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_CONSTANTS_X64_H_ 5 #ifndef VM_CONSTANTS_X64_H_
6 #define VM_CONSTANTS_X64_H_ 6 #define VM_CONSTANTS_X64_H_
7 7
8 namespace dart { 8 namespace dart {
9 9
10 enum Register { 10 enum Register {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 XMM3 = 3, 49 XMM3 = 3,
50 XMM4 = 4, 50 XMM4 = 4,
51 XMM5 = 5, 51 XMM5 = 5,
52 XMM6 = 6, 52 XMM6 = 6,
53 XMM7 = 7, 53 XMM7 = 7,
54 kNumberOfXmmRegisters = 8, 54 kNumberOfXmmRegisters = 8,
55 kNoXmmRegister = -1 // Signals an illegal register. 55 kNoXmmRegister = -1 // Signals an illegal register.
56 }; 56 };
57 57
58 58
59 enum RexBits {
60 REX_NONE = 0,
61 REX_B = 1 << 0,
62 REX_X = 1 << 1,
63 REX_R = 1 << 2,
64 REX_W = 1 << 3,
65 REX_PREFIX = 1 << 6
66 };
67
68
59 // Register aliases. 69 // Register aliases.
60 const Register TMP = R11; // Used as scratch register by the assembler. 70 const Register TMP = R11; // Used as scratch register by the assembler.
61 const Register CTX = R12; // Caches current context in generated code. 71 const Register CTX = R15; // Caches current context in generated code.
62 72
63 // Exception object is passed in this register to the catch handlers when an 73 // Exception object is passed in this register to the catch handlers when an
64 // exception is thrown. 74 // exception is thrown.
65 const Register kExceptionObjectReg = RAX; 75 const Register kExceptionObjectReg = RAX;
66 76
67 // Stack trace object is passed in this register to the catch handlers when 77 // Stack trace object is passed in this register to the catch handlers when
68 // an exception is thrown. 78 // an exception is thrown.
69 const Register kStackTraceObjectReg = RDX; 79 const Register kStackTraceObjectReg = RDX;
70 80
71 enum ScaleFactor { 81 enum ScaleFactor {
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 131
122 private: 132 private:
123 DISALLOW_ALLOCATION(); 133 DISALLOW_ALLOCATION();
124 // We need to prevent the creation of instances of class Instr. 134 // We need to prevent the creation of instances of class Instr.
125 DISALLOW_IMPLICIT_CONSTRUCTORS(Instr); 135 DISALLOW_IMPLICIT_CONSTRUCTORS(Instr);
126 }; 136 };
127 137
128 } // namespace dart 138 } // namespace dart
129 139
130 #endif // VM_CONSTANTS_X64_H_ 140 #endif // VM_CONSTANTS_X64_H_
OLDNEW
« no previous file with comments | « runtime/vm/code_generator_ia32.cc ('k') | runtime/vm/runtime_entry_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698