| Index: runtime/vm/flow_graph_compiler_ia32.cc
|
| ===================================================================
|
| --- runtime/vm/flow_graph_compiler_ia32.cc (revision 13666)
|
| +++ runtime/vm/flow_graph_compiler_ia32.cc (working copy)
|
| @@ -26,6 +26,24 @@
|
| DEFINE_FLAG(bool, unbox_mints, true, "Optimize 64-bit integer arithmetic.");
|
|
|
|
|
| +FieldAddress FlowGraphCompiler::ElementAddressForRegIndex(intptr_t cid,
|
| + Register array,
|
| + Register index) {
|
| + // Note that index is Smi, i.e, times 2.
|
| + ASSERT(kSmiTagShift == 1);
|
| + switch (cid) {
|
| + case kArrayCid:
|
| + case kImmutableArrayCid:
|
| + return FieldAddress(array, index, TIMES_2, sizeof(RawArray));
|
| + case kFloat64ArrayCid:
|
| + return FieldAddress(array, index, TIMES_4, Float64Array::data_offset());
|
| + default:
|
| + UNIMPLEMENTED();
|
| + return FieldAddress(SPREG, 0);
|
| + }
|
| +}
|
| +
|
| +
|
| bool FlowGraphCompiler::SupportsUnboxedMints() {
|
| // Support unboxed mints when SSE 4.1 is available.
|
| return FLAG_unbox_mints && CPUFeatures::sse4_1_supported();
|
|
|