| Index: src/compiler/raw-machine-assembler.h
|
| diff --git a/src/compiler/raw-machine-assembler.h b/src/compiler/raw-machine-assembler.h
|
| index 36299440d681ac2550ed7e336741e08b94fe92f4..9e19ebfc599e21e6cd8b4ea2f0b0c6e868e4cc0d 100644
|
| --- a/src/compiler/raw-machine-assembler.h
|
| +++ b/src/compiler/raw-machine-assembler.h
|
| @@ -5,6 +5,7 @@
|
| #ifndef V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_
|
| #define V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_
|
|
|
| +#include "src/assembler.h"
|
| #include "src/compiler/common-operator.h"
|
| #include "src/compiler/graph-builder.h"
|
| #include "src/compiler/linkage.h"
|
| @@ -12,7 +13,6 @@
|
| #include "src/compiler/node.h"
|
| #include "src/compiler/operator.h"
|
|
|
| -
|
| namespace v8 {
|
| namespace internal {
|
| namespace compiler {
|
| @@ -108,12 +108,12 @@ class RawMachineAssembler : public GraphBuilder {
|
| return NewNode(machine()->Load(rep), base, index, graph()->start(),
|
| graph()->start());
|
| }
|
| - void Store(MachineType rep, Node* base, Node* value) {
|
| - Store(rep, base, IntPtrConstant(0), value);
|
| + Node* Store(MachineType rep, Node* base, Node* value) {
|
| + return Store(rep, base, IntPtrConstant(0), value);
|
| }
|
| - void Store(MachineType rep, Node* base, Node* index, Node* value) {
|
| - NewNode(machine()->Store(StoreRepresentation(rep, kNoWriteBarrier)), base,
|
| - index, value, graph()->start(), graph()->start());
|
| + Node* Store(MachineType rep, Node* base, Node* index, Node* value) {
|
| + return NewNode(machine()->Store(StoreRepresentation(rep, kNoWriteBarrier)),
|
| + base, index, value, graph()->start(), graph()->start());
|
| }
|
| // Arithmetic Operations.
|
| Node* WordAnd(Node* a, Node* b) {
|
| @@ -455,8 +455,8 @@ class RawMachineAssembler : public GraphBuilder {
|
| Node* LoadFromPointer(void* address, MachineType rep, int32_t offset = 0) {
|
| return Load(rep, PointerConstant(address), Int32Constant(offset));
|
| }
|
| - void StoreToPointer(void* address, MachineType rep, Node* node) {
|
| - Store(rep, PointerConstant(address), node);
|
| + Node* StoreToPointer(void* address, MachineType rep, Node* node) {
|
| + return Store(rep, PointerConstant(address), node);
|
| }
|
| Node* StringConstant(const char* string) {
|
| return HeapConstant(isolate()->factory()->InternalizeUtf8String(string));
|
| @@ -511,21 +511,22 @@ class RawMachineAssembler : public GraphBuilder {
|
| // MachineAssembler is invalid after export.
|
| Schedule* Export();
|
|
|
| + Schedule* schedule() {
|
| + DCHECK(ScheduleValid());
|
| + return schedule_;
|
| + }
|
| +
|
| + BasicBlock* CurrentBlock();
|
| +
|
| protected:
|
| Node* MakeNode(const Operator* op, int input_count, Node** inputs,
|
| bool incomplete) final;
|
|
|
| bool ScheduleValid() { return schedule_ != NULL; }
|
|
|
| - Schedule* schedule() {
|
| - DCHECK(ScheduleValid());
|
| - return schedule_;
|
| - }
|
| -
|
| private:
|
| BasicBlock* Use(Label* label);
|
| BasicBlock* EnsureBlock(Label* label);
|
| - BasicBlock* CurrentBlock();
|
|
|
| Schedule* schedule_;
|
| MachineOperatorBuilder machine_;
|
|
|