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 #include "src/builtins/builtins.h" | 5 #include "src/builtins/builtins.h" |
6 #include "src/builtins/builtins-utils.h" | 6 #include "src/builtins/builtins-utils.h" |
7 | 7 |
8 #include "src/code-factory.h" | 8 #include "src/code-factory.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
242 }; | 242 }; |
243 a->Switch(instance_type, &other, case_values, case_labels, | 243 a->Switch(instance_type, &other, case_values, case_labels, |
244 arraysize(case_labels)); | 244 arraysize(case_labels)); |
245 | 245 |
246 a->Bind(&u8); | 246 a->Bind(&u8); |
247 a->AtomicStore(MachineRepresentation::kWord8, backing_store, index_word, | 247 a->AtomicStore(MachineRepresentation::kWord8, backing_store, index_word, |
248 value_word32); | 248 value_word32); |
249 a->Return(value_integer); | 249 a->Return(value_integer); |
250 | 250 |
251 a->Bind(&u16); | 251 a->Bind(&u16); |
252 a->SmiTag(a->AtomicStore(MachineRepresentation::kWord16, backing_store, | 252 a->AtomicStore(MachineRepresentation::kWord16, backing_store, |
253 a->WordShl(index_word, 1), value_word32)); | 253 a->WordShl(index_word, 1), value_word32); |
254 a->Return(value_integer); | 254 a->Return(value_integer); |
255 | 255 |
256 a->Bind(&u32); | 256 a->Bind(&u32); |
257 a->AtomicStore(MachineRepresentation::kWord32, backing_store, | 257 a->AtomicStore(MachineRepresentation::kWord32, backing_store, |
258 a->WordShl(index_word, 2), value_word32); | 258 a->WordShl(index_word, 2), value_word32); |
259 a->Return(value_integer); | 259 a->Return(value_integer); |
260 | 260 |
261 // This shouldn't happen, we've already validated the type. | 261 // This shouldn't happen, we've already validated the type. |
262 a->Bind(&other); | 262 a->Bind(&other); |
263 a->Return(a->Int32Constant(0)); | 263 a->Return(a->Int32Constant(0)); |
264 } | 264 } |
265 | 265 |
266 } // namespace internal | 266 } // namespace internal |
267 } // namespace v8 | 267 } // namespace v8 |
OLD | NEW |