| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 162 COND_TYPED_ARGS) { \ | 162 COND_TYPED_ARGS) { \ |
| 163 Name(target, COND_ARGS, bd); \ | 163 Name(target, COND_ARGS, bd); \ |
| 164 } | 164 } |
| 165 | 165 |
| 166 #define DECLARE_BRANCH_PROTOTYPES(Name) \ | 166 #define DECLARE_BRANCH_PROTOTYPES(Name) \ |
| 167 DECLARE_NORELOC_PROTOTYPE(Name, Label*) \ | 167 DECLARE_NORELOC_PROTOTYPE(Name, Label*) \ |
| 168 DECLARE_NORELOC_PROTOTYPE(Name, int16_t) | 168 DECLARE_NORELOC_PROTOTYPE(Name, int16_t) |
| 169 | 169 |
| 170 DECLARE_BRANCH_PROTOTYPES(Branch) | 170 DECLARE_BRANCH_PROTOTYPES(Branch) |
| 171 DECLARE_BRANCH_PROTOTYPES(BranchAndLink) | 171 DECLARE_BRANCH_PROTOTYPES(BranchAndLink) |
| 172 DECLARE_BRANCH_PROTOTYPES(BranchShort) |
| 172 | 173 |
| 173 #undef DECLARE_BRANCH_PROTOTYPES | 174 #undef DECLARE_BRANCH_PROTOTYPES |
| 174 #undef COND_TYPED_ARGS | 175 #undef COND_TYPED_ARGS |
| 175 #undef COND_ARGS | 176 #undef COND_ARGS |
| 176 | 177 |
| 177 | 178 |
| 178 // Jump, Call, and Ret pseudo instructions implementing inter-working. | 179 // Jump, Call, and Ret pseudo instructions implementing inter-working. |
| 179 #define COND_ARGS Condition cond = al, Register rs = zero_reg, \ | 180 #define COND_ARGS Condition cond = al, Register rs = zero_reg, \ |
| 180 const Operand& rt = Operand(zero_reg), BranchDelaySlot bd = PROTECT | 181 const Operand& rt = Operand(zero_reg), BranchDelaySlot bd = PROTECT |
| 181 | 182 |
| (...skipping 1381 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1563 | 1564 |
| 1564 // Jumps to found label if a prototype map has dictionary elements. | 1565 // Jumps to found label if a prototype map has dictionary elements. |
| 1565 void JumpIfDictionaryInPrototypeChain(Register object, Register scratch0, | 1566 void JumpIfDictionaryInPrototypeChain(Register object, Register scratch0, |
| 1566 Register scratch1, Label* found); | 1567 Register scratch1, Label* found); |
| 1567 | 1568 |
| 1568 private: | 1569 private: |
| 1569 void CallCFunctionHelper(Register function, | 1570 void CallCFunctionHelper(Register function, |
| 1570 int num_reg_arguments, | 1571 int num_reg_arguments, |
| 1571 int num_double_arguments); | 1572 int num_double_arguments); |
| 1572 | 1573 |
| 1573 void BranchShort(int16_t offset, BranchDelaySlot bdslot = PROTECT); | |
| 1574 void BranchShort(int16_t offset, Condition cond, Register rs, | |
| 1575 const Operand& rt, | |
| 1576 BranchDelaySlot bdslot = PROTECT); | |
| 1577 void BranchShort(Label* L, BranchDelaySlot bdslot = PROTECT); | |
| 1578 void BranchShort(Label* L, Condition cond, Register rs, | |
| 1579 const Operand& rt, | |
| 1580 BranchDelaySlot bdslot = PROTECT); | |
| 1581 void BranchAndLinkShort(int16_t offset, BranchDelaySlot bdslot = PROTECT); | 1574 void BranchAndLinkShort(int16_t offset, BranchDelaySlot bdslot = PROTECT); |
| 1582 void BranchAndLinkShort(int16_t offset, Condition cond, Register rs, | 1575 void BranchAndLinkShort(int16_t offset, Condition cond, Register rs, |
| 1583 const Operand& rt, | 1576 const Operand& rt, |
| 1584 BranchDelaySlot bdslot = PROTECT); | 1577 BranchDelaySlot bdslot = PROTECT); |
| 1585 void BranchAndLinkShort(Label* L, BranchDelaySlot bdslot = PROTECT); | 1578 void BranchAndLinkShort(Label* L, BranchDelaySlot bdslot = PROTECT); |
| 1586 void BranchAndLinkShort(Label* L, Condition cond, Register rs, | 1579 void BranchAndLinkShort(Label* L, Condition cond, Register rs, |
| 1587 const Operand& rt, | 1580 const Operand& rt, |
| 1588 BranchDelaySlot bdslot = PROTECT); | 1581 BranchDelaySlot bdslot = PROTECT); |
| 1589 void J(Label* L, BranchDelaySlot bdslot); | 1582 void J(Label* L, BranchDelaySlot bdslot); |
| 1590 void Jr(Label* L, BranchDelaySlot bdslot); | 1583 void Jr(Label* L, BranchDelaySlot bdslot); |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1679 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 1672 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
| 1680 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 1673 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
| 1681 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 1674 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
| 1682 #else | 1675 #else |
| 1683 #define ACCESS_MASM(masm) masm-> | 1676 #define ACCESS_MASM(masm) masm-> |
| 1684 #endif | 1677 #endif |
| 1685 | 1678 |
| 1686 } } // namespace v8::internal | 1679 } } // namespace v8::internal |
| 1687 | 1680 |
| 1688 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ | 1681 #endif // V8_MIPS_MACRO_ASSEMBLER_MIPS_H_ |
| OLD | NEW |