OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 5 #ifndef V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 6 #define V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
7 | 7 |
8 #include "src/assembler.h" | 8 #include "src/assembler.h" |
9 #include "src/globals.h" | 9 #include "src/globals.h" |
10 #include "src/mips/assembler-mips.h" | 10 #include "src/mips/assembler-mips.h" |
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
186 void Jump(intptr_t target, RelocInfo::Mode rmode, COND_ARGS); | 186 void Jump(intptr_t target, RelocInfo::Mode rmode, COND_ARGS); |
187 void Jump(Address target, RelocInfo::Mode rmode, COND_ARGS); | 187 void Jump(Address target, RelocInfo::Mode rmode, COND_ARGS); |
188 void Jump(Handle<Code> code, RelocInfo::Mode rmode, COND_ARGS); | 188 void Jump(Handle<Code> code, RelocInfo::Mode rmode, COND_ARGS); |
189 static int CallSize(Register target, int16_t offset = 0, COND_ARGS); | 189 static int CallSize(Register target, int16_t offset = 0, COND_ARGS); |
190 void Call(Register target, int16_t offset = 0, COND_ARGS); | 190 void Call(Register target, int16_t offset = 0, COND_ARGS); |
191 void Call(Register target, Register base, int16_t offset = 0, COND_ARGS); | 191 void Call(Register target, Register base, int16_t offset = 0, COND_ARGS); |
192 static int CallSize(Address target, RelocInfo::Mode rmode, COND_ARGS); | 192 static int CallSize(Address target, RelocInfo::Mode rmode, COND_ARGS); |
193 void Call(Address target, RelocInfo::Mode rmode, COND_ARGS); | 193 void Call(Address target, RelocInfo::Mode rmode, COND_ARGS); |
194 int CallSize(Handle<Code> code, | 194 int CallSize(Handle<Code> code, |
195 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, | 195 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, |
196 TypeFeedbackId ast_id = TypeFeedbackId::None(), | |
197 COND_ARGS); | 196 COND_ARGS); |
198 void Call(Handle<Code> code, | 197 void Call(Handle<Code> code, |
199 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, | 198 RelocInfo::Mode rmode = RelocInfo::CODE_TARGET, |
200 TypeFeedbackId ast_id = TypeFeedbackId::None(), | |
201 COND_ARGS); | 199 COND_ARGS); |
202 void Ret(COND_ARGS); | 200 void Ret(COND_ARGS); |
203 inline void Ret(BranchDelaySlot bd, Condition cond = al, | 201 inline void Ret(BranchDelaySlot bd, Condition cond = al, |
204 Register rs = zero_reg, const Operand& rt = Operand(zero_reg)) { | 202 Register rs = zero_reg, const Operand& rt = Operand(zero_reg)) { |
205 Ret(cond, rs, rt, bd); | 203 Ret(cond, rs, rt, bd); |
206 } | 204 } |
207 | 205 |
208 bool IsNear(Label* L, Condition cond, int rs_reg); | 206 bool IsNear(Label* L, Condition cond, int rs_reg); |
209 | 207 |
210 void Branch(Label* L, | 208 void Branch(Label* L, |
(...skipping 1089 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1300 | 1298 |
1301 inline void PrepareCEntryFunction(const ExternalReference& ref) { | 1299 inline void PrepareCEntryFunction(const ExternalReference& ref) { |
1302 li(a1, Operand(ref)); | 1300 li(a1, Operand(ref)); |
1303 } | 1301 } |
1304 | 1302 |
1305 #define COND_ARGS Condition cond = al, Register rs = zero_reg, \ | 1303 #define COND_ARGS Condition cond = al, Register rs = zero_reg, \ |
1306 const Operand& rt = Operand(zero_reg), BranchDelaySlot bd = PROTECT | 1304 const Operand& rt = Operand(zero_reg), BranchDelaySlot bd = PROTECT |
1307 | 1305 |
1308 // Call a code stub. | 1306 // Call a code stub. |
1309 void CallStub(CodeStub* stub, | 1307 void CallStub(CodeStub* stub, |
1310 TypeFeedbackId ast_id = TypeFeedbackId::None(), | |
1311 COND_ARGS); | 1308 COND_ARGS); |
1312 | 1309 |
1313 // Tail call a code stub (jump). | 1310 // Tail call a code stub (jump). |
1314 void TailCallStub(CodeStub* stub, COND_ARGS); | 1311 void TailCallStub(CodeStub* stub, COND_ARGS); |
1315 | 1312 |
1316 #undef COND_ARGS | 1313 #undef COND_ARGS |
1317 | 1314 |
1318 void CallJSExitStub(CodeStub* stub); | 1315 void CallJSExitStub(CodeStub* stub); |
1319 | 1316 |
1320 // Call a runtime routine. | 1317 // Call a runtime routine. |
(...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1814 dd(GetLabelFunction(index)); | 1811 dd(GetLabelFunction(index)); |
1815 } | 1812 } |
1816 } | 1813 } |
1817 | 1814 |
1818 #define ACCESS_MASM(masm) masm-> | 1815 #define ACCESS_MASM(masm) masm-> |
1819 | 1816 |
1820 } // namespace internal | 1817 } // namespace internal |
1821 } // namespace v8 | 1818 } // namespace v8 |
1822 | 1819 |
1823 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1820 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
OLD | NEW |