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

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

Issue 2937933002: Reduce copying, redundancy & repetition for codegen of comparison instructions (Closed)
Patch Set: Feedback from Slava Created 3 years, 6 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
« no previous file with comments | « runtime/vm/constants_dbc.h ('k') | runtime/vm/constants_mips.h » ('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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 RUNTIME_VM_CONSTANTS_IA32_H_ 5 #ifndef RUNTIME_VM_CONSTANTS_IA32_H_
6 #define RUNTIME_VM_CONSTANTS_IA32_H_ 6 #define RUNTIME_VM_CONSTANTS_IA32_H_
7 7
8 #include "platform/assert.h" 8 #include "platform/assert.h"
9 9
10 namespace dart { 10 namespace dart {
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 LESS = 12, 115 LESS = 12,
116 GREATER_EQUAL = 13, 116 GREATER_EQUAL = 13,
117 LESS_EQUAL = 14, 117 LESS_EQUAL = 14,
118 GREATER = 15, 118 GREATER = 15,
119 119
120 ZERO = EQUAL, 120 ZERO = EQUAL,
121 NOT_ZERO = NOT_EQUAL, 121 NOT_ZERO = NOT_EQUAL,
122 NEGATIVE = SIGN, 122 NEGATIVE = SIGN,
123 POSITIVE = NOT_SIGN, 123 POSITIVE = NOT_SIGN,
124 CARRY = BELOW, 124 CARRY = BELOW,
125 NOT_CARRY = ABOVE_EQUAL 125 NOT_CARRY = ABOVE_EQUAL,
126
127 INVALID_CONDITION = 16
126 }; 128 };
127 129
128 130
129 class Instr { 131 class Instr {
130 public: 132 public:
131 static const uint8_t kHltInstruction = 0xF4; 133 static const uint8_t kHltInstruction = 0xF4;
132 // We prefer not to use the int3 instruction since it conflicts with gdb. 134 // We prefer not to use the int3 instruction since it conflicts with gdb.
133 static const uint8_t kBreakPointInstruction = kHltInstruction; 135 static const uint8_t kBreakPointInstruction = kHltInstruction;
134 static const int kBreakPointInstructionSize = 1; 136 static const int kBreakPointInstructionSize = 1;
135 137
(...skipping 15 matching lines...) Expand all
151 }; 153 };
152 154
153 155
154 // The largest multibyte nop we will emit. This could go up to 15 if it 156 // The largest multibyte nop we will emit. This could go up to 15 if it
155 // becomes important to us. 157 // becomes important to us.
156 const int MAX_NOP_SIZE = 8; 158 const int MAX_NOP_SIZE = 8;
157 159
158 } // namespace dart 160 } // namespace dart
159 161
160 #endif // RUNTIME_VM_CONSTANTS_IA32_H_ 162 #endif // RUNTIME_VM_CONSTANTS_IA32_H_
OLDNEW
« no previous file with comments | « runtime/vm/constants_dbc.h ('k') | runtime/vm/constants_mips.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698