Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(226)

Side by Side Diff: src/crankshaft/mips/lithium-codegen-mips.h

Issue 2498563002: [cleanup] Replace ToBooleanICStub::Types with ToBooleanHints (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/crankshaft/lithium.cc ('k') | src/crankshaft/mips/lithium-codegen-mips.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_ 5 #ifndef V8_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_
6 #define V8_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_ 6 #define V8_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_
7 7
8 #include "src/ast/scopes.h" 8 #include "src/ast/scopes.h"
9 #include "src/crankshaft/lithium-codegen.h" 9 #include "src/crankshaft/lithium-codegen.h"
10 #include "src/crankshaft/mips/lithium-gap-resolver-mips.h" 10 #include "src/crankshaft/mips/lithium-gap-resolver-mips.h"
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 // itself is emitted at the end of the generated code. 350 // itself is emitted at the end of the generated code.
351 SafepointTableBuilder safepoints_; 351 SafepointTableBuilder safepoints_;
352 352
353 // Compiler from a set of parallel moves to a sequential list of moves. 353 // Compiler from a set of parallel moves to a sequential list of moves.
354 LGapResolver resolver_; 354 LGapResolver resolver_;
355 355
356 Safepoint::Kind expected_safepoint_kind_; 356 Safepoint::Kind expected_safepoint_kind_;
357 357
358 class PushSafepointRegistersScope final BASE_EMBEDDED { 358 class PushSafepointRegistersScope final BASE_EMBEDDED {
359 public: 359 public:
360 explicit PushSafepointRegistersScope(LCodeGen* codegen) 360 explicit PushSafepointRegistersScope(LCodeGen* codegen);
361 : codegen_(codegen) {
362 DCHECK(codegen_->info()->is_calling());
363 DCHECK(codegen_->expected_safepoint_kind_ == Safepoint::kSimple);
364 codegen_->expected_safepoint_kind_ = Safepoint::kWithRegisters;
365 361
366 StoreRegistersStateStub stub(codegen_->isolate()); 362 ~PushSafepointRegistersScope();
367 codegen_->masm_->push(ra);
368 codegen_->masm_->CallStub(&stub);
369 }
370
371 ~PushSafepointRegistersScope() {
372 DCHECK(codegen_->expected_safepoint_kind_ == Safepoint::kWithRegisters);
373 RestoreRegistersStateStub stub(codegen_->isolate());
374 codegen_->masm_->push(ra);
375 codegen_->masm_->CallStub(&stub);
376 codegen_->expected_safepoint_kind_ = Safepoint::kSimple;
377 }
378 363
379 private: 364 private:
380 LCodeGen* codegen_; 365 LCodeGen* codegen_;
381 }; 366 };
382 367
383 friend class LDeferredCode; 368 friend class LDeferredCode;
384 friend class LEnvironment; 369 friend class LEnvironment;
385 friend class SafepointGenerator; 370 friend class SafepointGenerator;
386 DISALLOW_COPY_AND_ASSIGN(LCodeGen); 371 DISALLOW_COPY_AND_ASSIGN(LCodeGen);
387 }; 372 };
(...skipping 26 matching lines...) Expand all
414 Label entry_; 399 Label entry_;
415 Label exit_; 400 Label exit_;
416 Label* external_exit_; 401 Label* external_exit_;
417 int instruction_index_; 402 int instruction_index_;
418 }; 403 };
419 404
420 } // namespace internal 405 } // namespace internal
421 } // namespace v8 406 } // namespace v8
422 407
423 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_ 408 #endif // V8_CRANKSHAFT_MIPS_LITHIUM_CODEGEN_MIPS_H_
OLDNEW
« no previous file with comments | « src/crankshaft/lithium.cc ('k') | src/crankshaft/mips/lithium-codegen-mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698