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 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 | 71 |
72 | 72 |
73 // Simple accessors. | 73 // Simple accessors. |
74 MacroAssembler* masm() const { return masm_; } | 74 MacroAssembler* masm() const { return masm_; } |
75 CompilationInfo* info() const { return info_; } | 75 CompilationInfo* info() const { return info_; } |
76 Isolate* isolate() const { return info_->isolate(); } | 76 Isolate* isolate() const { return info_->isolate(); } |
77 Factory* factory() const { return isolate()->factory(); } | 77 Factory* factory() const { return isolate()->factory(); } |
78 Heap* heap() const { return isolate()->heap(); } | 78 Heap* heap() const { return isolate()->heap(); } |
79 Zone* zone() const { return zone_; } | 79 Zone* zone() const { return zone_; } |
80 | 80 |
81 // TODO(svenpanne) Use this consistently. | |
82 int LookupDestination(int block_id) const { | 81 int LookupDestination(int block_id) const { |
83 return chunk()->LookupDestination(block_id); | 82 return chunk()->LookupDestination(block_id); |
84 } | 83 } |
85 | 84 |
86 bool IsNextEmittedBlock(int block_id) const { | 85 bool IsNextEmittedBlock(int block_id) const { |
87 return LookupDestination(block_id) == GetNextEmittedBlock(); | 86 return LookupDestination(block_id) == GetNextEmittedBlock(); |
88 } | 87 } |
89 | 88 |
90 bool NeedsEagerFrame() const { | 89 bool NeedsEagerFrame() const { |
91 return GetStackSlotCount() > 0 || | 90 return GetStackSlotCount() > 0 || |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
315 void RecordSafepointWithRegisters(LPointerMap* pointers, | 314 void RecordSafepointWithRegisters(LPointerMap* pointers, |
316 int arguments, | 315 int arguments, |
317 Safepoint::DeoptMode mode); | 316 Safepoint::DeoptMode mode); |
318 void RecordSafepointWithRegistersAndDoubles(LPointerMap* pointers, | 317 void RecordSafepointWithRegistersAndDoubles(LPointerMap* pointers, |
319 int arguments, | 318 int arguments, |
320 Safepoint::DeoptMode mode); | 319 Safepoint::DeoptMode mode); |
321 void RecordPosition(int position); | 320 void RecordPosition(int position); |
322 | 321 |
323 static Condition TokenToCondition(Token::Value op, bool is_unsigned); | 322 static Condition TokenToCondition(Token::Value op, bool is_unsigned); |
324 void EmitGoto(int block); | 323 void EmitGoto(int block); |
325 void EmitBranch(int left_block, | 324 template<class InstrType> |
326 int right_block, | 325 void EmitBranch(InstrType instr, |
327 Condition cc, | 326 Condition cc, |
328 Register src1, | 327 Register src1, |
329 const Operand& src2); | 328 const Operand& src2); |
330 void EmitBranchF(int left_block, | 329 template<class InstrType> |
331 int right_block, | 330 void EmitBranchF(InstrType instr, |
332 Condition cc, | 331 Condition cc, |
333 FPURegister src1, | 332 FPURegister src1, |
334 FPURegister src2); | 333 FPURegister src2); |
335 void EmitCmpI(LOperand* left, LOperand* right); | 334 void EmitCmpI(LOperand* left, LOperand* right); |
336 void EmitNumberUntagD(Register input, | 335 void EmitNumberUntagD(Register input, |
337 DoubleRegister result, | 336 DoubleRegister result, |
338 bool allow_undefined_as_nan, | 337 bool allow_undefined_as_nan, |
339 bool deoptimize_on_minus_zero, | 338 bool deoptimize_on_minus_zero, |
340 LEnvironment* env, | 339 LEnvironment* env, |
341 NumberUntagDMode mode); | 340 NumberUntagDMode mode); |
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
508 LCodeGen* codegen_; | 507 LCodeGen* codegen_; |
509 Label entry_; | 508 Label entry_; |
510 Label exit_; | 509 Label exit_; |
511 Label* external_exit_; | 510 Label* external_exit_; |
512 int instruction_index_; | 511 int instruction_index_; |
513 }; | 512 }; |
514 | 513 |
515 } } // namespace v8::internal | 514 } } // namespace v8::internal |
516 | 515 |
517 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ | 516 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ |
OLD | NEW |