| Index: runtime/vm/constants_dbc.h
|
| diff --git a/runtime/vm/constants_dbc.h b/runtime/vm/constants_dbc.h
|
| index e2ea8042e0963bfc0492bffef567efd0b4b958d7..9784d9877c342280d9f890cdbfe54bb685257807 100644
|
| --- a/runtime/vm/constants_dbc.h
|
| +++ b/runtime/vm/constants_dbc.h
|
| @@ -193,27 +193,18 @@ namespace dart {
|
| // FP[rA] <- {min, max}(FP[rB], FP[rC]). Assumes that FP[rB], and FP[rC] are
|
| // Smis.
|
| //
|
| -// - DAdd, DSub, DMul, DDiv rA, rB, rC
|
| -//
|
| -// Arithmetic operaions on unboxed doubles. FP[rA] <- FP[rB] op FP[rC].
|
| -//
|
| // - Neg rA , rD
|
| //
|
| // FP[rA] <- -FP[rD]. Assumes FP[rD] is a Smi. If there is no overflow the
|
| // immediately following instruction is skipped.
|
| //
|
| -// - DNeg rA, rD
|
| -//
|
| -// FP[rA] <- -FP[rD]. Assumes FP[rD] is an unboxed double.
|
| -//
|
| -// - DSqrt rA, rD
|
| +// - DMin, DMax, DAdd, DSub, DMul, DDiv, DPow, DMod rA, rB, rC
|
| //
|
| -// FP[rA] <- sqrt(FP[rD]). Assumes FP[rD] is an unboxed double.
|
| +// Arithmetic operaions on unboxed doubles. FP[rA] <- FP[rB] op FP[rC].
|
| //
|
| -// - DMin, DMax rA, rB, rC
|
| +// - DNeg, DCos, DSin, DSqrt rA, rD
|
| //
|
| -// FP[rA] <- {min, max}(FP[rB], FP[rC]). Assumes FP[rB] and FP[rC] are
|
| -// unboxed doubles.
|
| +// FP[rA] <- op(FP[rD]). Assumes FP[rD] is an unboxed double.
|
| //
|
| // - BitOr, BitAnd, BitXor rA, rB, rC
|
| //
|
| @@ -305,14 +296,24 @@ namespace dart {
|
| //
|
| // - StoreIndexed rA, rB, rC
|
| //
|
| -// Store rC into array rA at index rB. No typechecking is done.
|
| -// rA is assumed to be a RawArray, rB to be a smi.
|
| +// Store FP[rC] into array FP[rA] at index FP[rB]. No typechecking is done.
|
| +// FP[rA] is assumed to be a RawArray, FP[rB] to be a smi.
|
| +//
|
| +// - StoreFloat64Indexed rA, rB, rC
|
| +//
|
| +// Store the unboxed double in FP[rC] into the typed data array at FP[rA]
|
| +// at index FP[rB].
|
| //
|
| // - LoadIndexed rA, rB, rC
|
| //
|
| // Loads from array FP[rB] at index FP[rC] into FP[rA]. No typechecking is
|
| // done. FP[rB] is assumed to be a RawArray, and to contain a Smi at FP[rC].
|
| //
|
| +// - Load{Float64, OneByteString, TwoByteString}Indexed rA, rB, rC
|
| +//
|
| +// Loads from typed data array FP[rB] at index FP[rC] into an unboxed double,
|
| +// or tagged Smi in FP[rA] as indicated by the type in the name.
|
| +//
|
| // - StoreField rA, B, rC
|
| //
|
| // Store value FP[rC] into object FP[rA] at offset (in words) B.
|
| @@ -598,6 +599,10 @@ namespace dart {
|
| V(DSqrt, A_D, reg, reg, ___) \
|
| V(DMin, A_B_C, reg, reg, reg) \
|
| V(DMax, A_B_C, reg, reg, reg) \
|
| + V(DCos, A_D, reg, reg, ___) \
|
| + V(DSin, A_D, reg, reg, ___) \
|
| + V(DPow, A_B_C, reg, reg, reg) \
|
| + V(DMod, A_B_C, reg, reg, reg) \
|
| V(StoreStaticTOS, D, lit, ___, ___) \
|
| V(PushStatic, D, lit, ___, ___) \
|
| V(InitStaticTOS, 0, ___, ___, ___) \
|
| @@ -630,7 +635,11 @@ namespace dart {
|
| V(AllocateT, 0, ___, ___, ___) \
|
| V(StoreIndexedTOS, 0, ___, ___, ___) \
|
| V(StoreIndexed, A_B_C, reg, reg, reg) \
|
| + V(StoreFloat64Indexed, A_B_C, reg, reg, reg) \
|
| V(LoadIndexed, A_B_C, reg, reg, reg) \
|
| + V(LoadFloat64Indexed, A_B_C, reg, reg, reg) \
|
| + V(LoadOneByteStringIndexed, A_B_C, reg, reg, reg) \
|
| + V(LoadTwoByteStringIndexed, A_B_C, reg, reg, reg) \
|
| V(StoreField, A_B_C, reg, num, reg) \
|
| V(StoreFieldTOS, D, num, ___, ___) \
|
| V(LoadField, A_B_C, reg, reg, num) \
|
|
|