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 5117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5128 int mask, | 5128 int mask, |
5129 Condition cc, | 5129 Condition cc, |
5130 Label* condition_met) { | 5130 Label* condition_met) { |
5131 And(scratch, object, Operand(~Page::kPageAlignmentMask)); | 5131 And(scratch, object, Operand(~Page::kPageAlignmentMask)); |
5132 lw(scratch, MemOperand(scratch, MemoryChunk::kFlagsOffset)); | 5132 lw(scratch, MemOperand(scratch, MemoryChunk::kFlagsOffset)); |
5133 And(scratch, scratch, Operand(mask)); | 5133 And(scratch, scratch, Operand(mask)); |
5134 Branch(condition_met, cc, scratch, Operand(zero_reg)); | 5134 Branch(condition_met, cc, scratch, Operand(zero_reg)); |
5135 } | 5135 } |
5136 | 5136 |
5137 | 5137 |
| 5138 void MacroAssembler::CheckMapDeprecated(Handle<Map> map, |
| 5139 Register scratch, |
| 5140 Label* if_deprecated) { |
| 5141 if (map->CanBeDeprecated()) { |
| 5142 li(scratch, Operand(map)); |
| 5143 lw(scratch, FieldMemOperand(scratch, Map::kBitField3Offset)); |
| 5144 And(scratch, scratch, Operand(Smi::FromInt(Map::Deprecated::kMask))); |
| 5145 Branch(if_deprecated, ne, scratch, Operand(zero_reg)); |
| 5146 } |
| 5147 } |
| 5148 |
| 5149 |
5138 void MacroAssembler::JumpIfBlack(Register object, | 5150 void MacroAssembler::JumpIfBlack(Register object, |
5139 Register scratch0, | 5151 Register scratch0, |
5140 Register scratch1, | 5152 Register scratch1, |
5141 Label* on_black) { | 5153 Label* on_black) { |
5142 HasColor(object, scratch0, scratch1, on_black, 1, 0); // kBlackBitPattern. | 5154 HasColor(object, scratch0, scratch1, on_black, 1, 0); // kBlackBitPattern. |
5143 ASSERT(strcmp(Marking::kBlackBitPattern, "10") == 0); | 5155 ASSERT(strcmp(Marking::kBlackBitPattern, "10") == 0); |
5144 } | 5156 } |
5145 | 5157 |
5146 | 5158 |
5147 void MacroAssembler::HasColor(Register object, | 5159 void MacroAssembler::HasColor(Register object, |
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5499 opcode == BGTZL); | 5511 opcode == BGTZL); |
5500 opcode = (cond == eq) ? BEQ : BNE; | 5512 opcode = (cond == eq) ? BEQ : BNE; |
5501 instr = (instr & ~kOpcodeMask) | opcode; | 5513 instr = (instr & ~kOpcodeMask) | opcode; |
5502 masm_.emit(instr); | 5514 masm_.emit(instr); |
5503 } | 5515 } |
5504 | 5516 |
5505 | 5517 |
5506 } } // namespace v8::internal | 5518 } } // namespace v8::internal |
5507 | 5519 |
5508 #endif // V8_TARGET_ARCH_MIPS | 5520 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |