OLD | NEW |
---|---|
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 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_CODE_STUB_ASSEMBLER_H_ | 5 #ifndef V8_CODE_STUB_ASSEMBLER_H_ |
6 #define V8_CODE_STUB_ASSEMBLER_H_ | 6 #define V8_CODE_STUB_ASSEMBLER_H_ |
7 | 7 |
8 #include <functional> | 8 #include <functional> |
9 | 9 |
10 #include "src/compiler/code-assembler.h" | 10 #include "src/compiler/code-assembler.h" |
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
226 const NodeGenerator& false_body, MachineRepresentation rep); | 226 const NodeGenerator& false_body, MachineRepresentation rep); |
227 | 227 |
228 Node* SelectConstant(Node* condition, Node* true_value, Node* false_value, | 228 Node* SelectConstant(Node* condition, Node* true_value, Node* false_value, |
229 MachineRepresentation rep); | 229 MachineRepresentation rep); |
230 | 230 |
231 Node* SelectInt32Constant(Node* condition, int true_value, int false_value); | 231 Node* SelectInt32Constant(Node* condition, int true_value, int false_value); |
232 Node* SelectIntPtrConstant(Node* condition, int true_value, int false_value); | 232 Node* SelectIntPtrConstant(Node* condition, int true_value, int false_value); |
233 Node* SelectBooleanConstant(Node* condition); | 233 Node* SelectBooleanConstant(Node* condition); |
234 Node* SelectTaggedConstant(Node* condition, Node* true_value, | 234 Node* SelectTaggedConstant(Node* condition, Node* true_value, |
235 Node* false_value); | 235 Node* false_value); |
236 Node* SelectSmiConstant(Node* condition, Smi* true_value, Smi* false_value); | |
rmcilroy
2017/01/10 15:05:50
nit - I would prefer just to have the Smi version
Leszek Swirski
2017/01/11 10:10:03
I'd rather keep this as is, for consistency with S
| |
237 Node* SelectSmiConstant(Node* condition, int true_value, Smi* false_value) { | |
238 return SelectSmiConstant(condition, Smi::FromInt(true_value), false_value); | |
239 } | |
240 Node* SelectSmiConstant(Node* condition, Smi* true_value, int false_value) { | |
241 return SelectSmiConstant(condition, true_value, Smi::FromInt(false_value)); | |
242 } | |
243 Node* SelectSmiConstant(Node* condition, int true_value, int false_value) { | |
244 return SelectSmiConstant(condition, Smi::FromInt(true_value), | |
245 Smi::FromInt(false_value)); | |
246 } | |
236 | 247 |
237 Node* TruncateWordToWord32(Node* value); | 248 Node* TruncateWordToWord32(Node* value); |
238 | 249 |
239 // Check a value for smi-ness | 250 // Check a value for smi-ness |
240 Node* TaggedIsSmi(Node* a); | 251 Node* TaggedIsSmi(Node* a); |
241 Node* TaggedIsNotSmi(Node* a); | 252 Node* TaggedIsNotSmi(Node* a); |
242 // Check that the value is a non-negative smi. | 253 // Check that the value is a non-negative smi. |
243 Node* TaggedIsPositiveSmi(Node* a); | 254 Node* TaggedIsPositiveSmi(Node* a); |
244 // Check that a word has a word-aligned address. | 255 // Check that a word has a word-aligned address. |
245 Node* WordIsWordAligned(Node* word); | 256 Node* WordIsWordAligned(Node* word); |
(...skipping 1006 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1252 } | 1263 } |
1253 #else | 1264 #else |
1254 #define CSA_SLOW_ASSERT(csa, x) ((void)0) | 1265 #define CSA_SLOW_ASSERT(csa, x) ((void)0) |
1255 #endif | 1266 #endif |
1256 | 1267 |
1257 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); | 1268 DEFINE_OPERATORS_FOR_FLAGS(CodeStubAssembler::AllocationFlags); |
1258 | 1269 |
1259 } // namespace internal | 1270 } // namespace internal |
1260 } // namespace v8 | 1271 } // namespace v8 |
1261 #endif // V8_CODE_STUB_ASSEMBLER_H_ | 1272 #endif // V8_CODE_STUB_ASSEMBLER_H_ |
OLD | NEW |