Store(rep, base, Int32Constant(0), value);
}
void Store(MachineRepresentation rep, Node* base, Node* index, Node* value) {
- NEW_NODE_3(MACHINE()->Store(rep), base, index, value);
+ NEW_NODE_3(MACHINE()->Store(rep, kNoWriteBarrier), base, index, value);
}
// Arithmetic Operations.
Node* WordAnd(Node* a, Node* b) {
OP1(Load, MachineRepresentation, rep, Operator::kNoWrite, 2, 1);
}
// store [base + index], value
- Operator* Store(MachineRepresentation rep,
- WriteBarrierKind kind = kNoWriteBarrier) {
+ Operator* Store(MachineRepresentation rep, WriteBarrierKind kind) {
StoreRepresentation store_rep = {rep, kind};
OP1(Store, StoreRepresentation, store_rep, Operator::kNoRead, 3, 0);
}
double result;
t.BuildStoreAndLower(t.simplified()->ChangeTaggedToFloat64(),
- t.machine()->Store(kMachineFloat64), &result);
+ t.machine()->Store(kMachineFloat64, kNoWriteBarrier),
+ &result);
if (Pipeline::SupportedTarget()) {
FOR_INT32_INPUTS(i) {
}
{
- Node* store =
- R.graph.NewNode(R.machine.Store(kMachineWord32), base, index, load);
+ Node* store = R.graph.NewNode(
+ R.machine.Store(kMachineWord32, kNoWriteBarrier), base, index, load);
MachineOperatorReducer reducer(&R.graph);
Reduction reduction = reducer.Reduce(store);
CHECK(!reduction.Changed()); // stores should not be reduced.