Home
last modified time | relevance | path

Searched refs:InstructionOperand (Results 1 – 25 of 29) sorted by relevance

12

/external/v8/src/compiler/
Dinstruction-selector.h39 Instruction* Emit(InstructionCode opcode, InstructionOperand* output,
40 size_t temp_count = 0, InstructionOperand* *temps = NULL);
41 Instruction* Emit(InstructionCode opcode, InstructionOperand* output,
42 InstructionOperand* a, size_t temp_count = 0,
43 InstructionOperand* *temps = NULL);
44 Instruction* Emit(InstructionCode opcode, InstructionOperand* output,
45 InstructionOperand* a, InstructionOperand* b,
46 size_t temp_count = 0, InstructionOperand* *temps = NULL);
47 Instruction* Emit(InstructionCode opcode, InstructionOperand* output,
48 InstructionOperand* a, InstructionOperand* b,
[all …]
Dinstruction.h47 class InstructionOperand : public ZoneObject {
60 InstructionOperand() : value_(KindField::encode(INVALID)) {} in InstructionOperand() function
61 InstructionOperand(Kind kind, int index) { ConvertTo(kind, index); } in InstructionOperand() function
71 bool Equals(InstructionOperand* other) const { in Equals()
92 typedef ZoneVector<InstructionOperand*> InstructionOperandVector;
94 OStream& operator<<(OStream& os, const InstructionOperand& op);
96 class UnallocatedOperand : public InstructionOperand {
124 : InstructionOperand(UNALLOCATED, 0) { in UnallocatedOperand()
131 : InstructionOperand(UNALLOCATED, 0) { in UnallocatedOperand()
139 : InstructionOperand(UNALLOCATED, 0) { in UnallocatedOperand()
[all …]
Dregister-allocator.h20 class InstructionOperand; variable
155 UsePosition(LifetimePosition pos, InstructionOperand* operand,
156 InstructionOperand* hint);
158 InstructionOperand* operand() const { return operand_; } in operand()
161 InstructionOperand* hint() const { return hint_; } in hint()
171 InstructionOperand* const operand_;
172 InstructionOperand* const hint_;
196 InstructionOperand* CreateAssignedOperand(Zone* zone);
242 InstructionOperand* current_hint_operand() const { in current_hint_operand()
246 InstructionOperand* FirstHint() const { in FirstHint()
[all …]
Dinstruction-selector-impl.h23 InstructionOperand* DefineAsRegister(Node* node) { in DefineAsRegister()
28 InstructionOperand* DefineSameAsFirst(Node* result) { in DefineSameAsFirst()
33 InstructionOperand* DefineAsFixed(Node* node, Register reg) { in DefineAsFixed()
39 InstructionOperand* DefineAsFixed(Node* node, DoubleRegister reg) { in DefineAsFixed()
45 InstructionOperand* DefineAsConstant(Node* node) { in DefineAsConstant()
51 InstructionOperand* DefineAsLocation(Node* node, LinkageLocation location, in DefineAsLocation()
56 InstructionOperand* Use(Node* node) { in Use()
62 InstructionOperand* UseRegister(Node* node) { in UseRegister()
70 InstructionOperand* UseUnique(Node* node) { in UseUnique()
76 InstructionOperand* UseUniqueRegister(Node* node) { in UseUniqueRegister()
[all …]
Dinstruction.cc13 OStream& operator<<(OStream& os, const InstructionOperand& op) { in operator <<()
15 case InstructionOperand::INVALID: in operator <<()
17 case InstructionOperand::UNALLOCATED: { in operator <<()
40 case InstructionOperand::CONSTANT: in operator <<()
42 case InstructionOperand::IMMEDIATE: in operator <<()
44 case InstructionOperand::STACK_SLOT: in operator <<()
46 case InstructionOperand::DOUBLE_STACK_SLOT: in operator <<()
48 case InstructionOperand::REGISTER: in operator <<()
51 case InstructionOperand::DOUBLE_REGISTER: in operator <<()
60 template <InstructionOperand::Kind kOperandKind, int kNumCachedOperands>
[all …]
Dgap-resolver.h22 virtual void AssembleMove(InstructionOperand* source,
23 InstructionOperand* destination) = 0;
25 virtual void AssembleSwap(InstructionOperand* source,
26 InstructionOperand* destination) = 0;
Dinstruction-selector-unittest.h125 bool IsDouble(const InstructionOperand* operand) const { in IsDouble()
132 bool IsInteger(const InstructionOperand* operand) const { in IsInteger()
139 bool IsReference(const InstructionOperand* operand) const { in IsReference()
146 int32_t ToInt32(const InstructionOperand* operand) const { in ToInt32()
150 int64_t ToInt64(const InstructionOperand* operand) const { in ToInt64()
154 int ToVreg(const InstructionOperand* operand) const { in ToVreg()
156 EXPECT_EQ(InstructionOperand::UNALLOCATED, operand->kind()); in ToVreg()
170 Constant ToConstant(const InstructionOperand* operand) const { in ToConstant()
176 EXPECT_EQ(InstructionOperand::IMMEDIATE, operand->kind()); in ToConstant()
Dinstruction-selector.cc70 InstructionOperand* output, in Emit()
72 InstructionOperand** temps) { in Emit()
79 InstructionOperand* output, in Emit()
80 InstructionOperand* a, size_t temp_count, in Emit()
81 InstructionOperand** temps) { in Emit()
88 InstructionOperand* output, in Emit()
89 InstructionOperand* a, in Emit()
90 InstructionOperand* b, size_t temp_count, in Emit()
91 InstructionOperand** temps) { in Emit()
93 InstructionOperand* inputs[] = {a, b}; in Emit()
[all …]
Dcode-generator-impl.h85 Register ToRegister(InstructionOperand* op) { in ToRegister()
90 DoubleRegister ToDoubleRegister(InstructionOperand* op) { in ToDoubleRegister()
95 Constant ToConstant(InstructionOperand* operand) { in ToConstant()
102 double ToDouble(InstructionOperand* operand) { in ToDouble()
106 Handle<HeapObject> ToHeapObject(InstructionOperand* operand) { in ToHeapObject()
Dgap-resolver.cc20 bool operator()(const InstructionOperand* x, in operator ()()
21 const InstructionOperand* y) const { in operator ()()
31 std::set<InstructionOperand*, InstructionOperandComparator> seen; in VerifyMovesAreInjective()
69 InstructionOperand* destination = move->destination(); in PerformMove()
96 InstructionOperand* source = move->source(); in PerformMove()
Dcode-generator.h79 virtual void AssembleMove(InstructionOperand* source,
80 InstructionOperand* destination) OVERRIDE;
81 virtual void AssembleSwap(InstructionOperand* source,
82 InstructionOperand* destination) OVERRIDE;
99 InstructionOperand* op);
Dregister-allocator.cc25 UsePosition::UsePosition(LifetimePosition pos, InstructionOperand* operand, in UsePosition()
26 InstructionOperand* hint) in UsePosition()
107 spill_operand_(new (zone) InstructionOperand()), in LiveRange()
133 void LiveRange::SetSpillOperand(InstructionOperand* operand) { in SetSpillOperand()
193 InstructionOperand* LiveRange::CreateAssignedOperand(Zone* zone) { in CreateAssignedOperand()
194 InstructionOperand* op = NULL; in CreateAssignedOperand()
411 InstructionOperand* operand, in AddUsePosition()
412 InstructionOperand* hint, Zone* zone) { in AddUsePosition()
440 InstructionOperand* op = CreateAssignedOperand(zone); in ConvertOperands()
583 InstructionOperand* RegisterAllocator::AllocateFixed( in AllocateFixed()
[all …]
Dcode-generator.cc86 const ZoneList<InstructionOperand*>* operands = in RecordSafepoint()
91 InstructionOperand* pointer = operands->at(i); in RecordSafepoint()
272 InstructionOperand* op = instr->InputAt(frame_state_offset + 1 + i); in AddSafepointAndDeopt()
371 InstructionOperand* op) { in AddTranslationForOperand()
442 void CodeGenerator::AssembleMove(InstructionOperand* source, in AssembleMove()
443 InstructionOperand* destination) { in AssembleMove()
448 void CodeGenerator::AssembleSwap(InstructionOperand* source, in AssembleSwap()
449 InstructionOperand* destination) { in AssembleSwap()
Dinstruction-selector-unittest.cc68 InstructionOperand* output = instr->OutputAt(i); in Build()
69 EXPECT_NE(InstructionOperand::IMMEDIATE, output->kind()); in Build()
80 InstructionOperand* input = instr->InputAt(i); in Build()
81 EXPECT_NE(InstructionOperand::CONSTANT, input->kind()); in Build()
135 EXPECT_EQ(InstructionOperand::CONSTANT, s[0]->OutputAt(0)->kind()); in TARGET_TEST_F()
/external/v8/test/cctest/compiler/
Dtest-gap-resolver.cc36 typedef std::pair<InstructionOperand::Kind, int> Key;
40 Value read(const InstructionOperand* op) const { in read()
45 void write(const InstructionOperand* op, Value v) { in write()
53 static Key KeyFor(const InstructionOperand* op) { in KeyFor()
57 static Value ValueFor(const InstructionOperand* op) { in ValueFor()
65 InstructionOperand source(it->first.first, it->first.second); in operator <<()
66 InstructionOperand destination(it->second.first, it->second.second); in operator <<()
79 virtual void AssembleMove(InstructionOperand* source, in AssembleMove()
80 InstructionOperand* destination) OVERRIDE { in AssembleMove()
86 virtual void AssembleSwap(InstructionOperand* source, in AssembleSwap()
[all …]
Dinstruction-selector-tester.h101 int32_t ToInt32(const InstructionOperand* operand) const { in ToInt32()
104 CHECK_EQ(InstructionOperand::IMMEDIATE, operand->kind()); in ToInt32()
115 static inline void CheckSameVreg(InstructionOperand* exp, in CheckSameVreg()
116 InstructionOperand* val) { in CheckSameVreg()
117 CHECK_EQ(InstructionOperand::UNALLOCATED, exp->kind()); in CheckSameVreg()
118 CHECK_EQ(InstructionOperand::UNALLOCATED, val->kind()); in CheckSameVreg()
Dtest-instruction.cc309 InstructionOperand* outputs[] = { in TEST()
315 InstructionOperand* inputs[] = { in TEST()
321 InstructionOperand* temps[] = { in TEST()
/external/v8/src/compiler/arm/
Dinstruction-selector-arm.cc19 InstructionOperand* UseOperand(Node* node, InstructionCode opcode) { in UseOperand()
123 InstructionOperand** value_return, in TryMatchROR()
124 InstructionOperand** shift_return) { in TryMatchROR()
142 InstructionOperand** value_return, in TryMatchASR()
143 InstructionOperand** shift_return) { in TryMatchASR()
161 InstructionOperand** value_return, in TryMatchLSL()
162 InstructionOperand** shift_return) { in TryMatchLSL()
180 InstructionOperand** value_return, in TryMatchLSR()
181 InstructionOperand** shift_return) { in TryMatchLSR()
199 InstructionOperand** value_return, in TryMatchShift()
[all …]
/external/v8/src/compiler/x64/
Dinstruction-selector-x64.cc18 InstructionOperand* TempRegister(Register reg) { in TempRegister()
23 InstructionOperand* UseByteRegister(Node* node) { in UseByteRegister()
28 InstructionOperand* UseImmediate64(Node* node) { return UseImmediate(node); } in UseImmediate64()
120 InstructionOperand* temps[] = {g.TempRegister(rcx), g.TempRegister(rdx)}; in VisitStore()
127 InstructionOperand* val; in VisitStore()
181 InstructionOperand* inputs[4]; in VisitBinop()
183 InstructionOperand* outputs[2]; in VisitBinop()
424 InstructionOperand* temps[] = {g.TempRegister(rdx)}; in VisitDiv()
454 InstructionOperand* temps[] = {g.TempRegister(rax), g.TempRegister(rdx)}; in VisitMod()
555 InstructionOperand* temps[] = {g.TempRegister(rax)}; in VisitFloat64Mod()
[all …]
Dcode-generator-x64.cc68 Immediate64 ToImmediate64(InstructionOperand* operand) { in ToImmediate64()
96 Immediate ToImmediate(InstructionOperand* operand) { in ToImmediate()
111 Operand ToOperand(InstructionOperand* op, int extra = 0) { in ToOperand()
117 RegisterOrOperand ToRegisterOrOperand(InstructionOperand* op, int extra = 0) { in ToRegisterOrOperand()
873 void CodeGenerator::AssembleMove(InstructionOperand* source, in AssembleMove()
874 InstructionOperand* destination) { in AssembleMove()
958 void CodeGenerator::AssembleSwap(InstructionOperand* source, in AssembleSwap()
959 InstructionOperand* destination) { in AssembleSwap()
/external/v8/src/compiler/ia32/
Dinstruction-selector-ia32.cc19 InstructionOperand* UseByteRegister(Node* node) { in UseByteRegister()
107 InstructionOperand* temps[] = {g.TempRegister(ecx), g.TempRegister(edx)}; in VisitStore()
114 InstructionOperand* val; in VisitStore()
169 InstructionOperand* inputs[4]; in VisitBinop()
171 InstructionOperand* outputs[2]; in VisitBinop()
318 InstructionOperand* temps[] = {g.TempRegister(edx)}; in VisitDiv()
339 InstructionOperand* temps[] = {g.TempRegister(eax), g.TempRegister(edx)}; in VisitMod()
413 InstructionOperand* temps[] = {g.TempRegister(eax)}; in VisitFloat64Mod()
441 InstructionOperand* left, in VisitCompare()
442 InstructionOperand* right, in VisitCompare()
Dinstruction-selector-ia32-unittest.cc134 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
150 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
180 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
198 ASSERT_EQ(InstructionOperand::IMMEDIATE, s[0]->InputAt(1)->kind()); in TEST_P()
Dcode-generator-ia32.cc38 Operand ToOperand(InstructionOperand* op, int extra = 0) { in ToOperand()
52 Operand HighOperand(InstructionOperand* op) { in HighOperand()
57 Immediate ToImmediate(InstructionOperand* operand) { in ToImmediate()
793 void CodeGenerator::AssembleMove(InstructionOperand* source, in AssembleMove()
794 InstructionOperand* destination) { in AssembleMove()
882 void CodeGenerator::AssembleSwap(InstructionOperand* source, in AssembleSwap()
883 InstructionOperand* destination) { in AssembleSwap()
/external/v8/src/compiler/arm64/
Dinstruction-selector-arm64.cc32 InstructionOperand* UseOperand(Node* node, ImmediateMode mode) { in UseOperand()
120 InstructionOperand* inputs[4]; in VisitBinop()
122 InstructionOperand* outputs[2]; in VisitBinop()
220 InstructionOperand* temps[] = {g.TempRegister(x11), g.TempRegister(x12)}; in VisitStore()
530 InstructionOperand* left, InstructionOperand* right, in VisitCompare()
Dcode-generator-arm64.cc71 Operand ToOperand(InstructionOperand* op) { in ToOperand()
78 Operand ToOperand32(InstructionOperand* op) { in ToOperand32()
85 Operand ToImmediate(InstructionOperand* operand) { in ToImmediate()
104 MemOperand ToMemOperand(InstructionOperand* op, MacroAssembler* masm) const { in ToMemOperand()
720 void CodeGenerator::AssembleMove(InstructionOperand* source, in AssembleMove()
721 InstructionOperand* destination) { in AssembleMove()
795 void CodeGenerator::AssembleSwap(InstructionOperand* source, in AssembleSwap()
796 InstructionOperand* destination) { in AssembleSwap()

12