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

Side by Side Diff: src/arm/assembler-arm.h

Issue 260003006: Added a Isolate* parameter to Serializer::enabled(). (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebased. Feedback. Created 6 years, 7 months 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | src/arm/assembler-arm.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 (c) 1994-2006 Sun Microsystems Inc. 1 // Copyright (c) 1994-2006 Sun Microsystems Inc.
2 // All Rights Reserved. 2 // All Rights Reserved.
3 // 3 //
4 // Redistribution and use in source and binary forms, with or without 4 // Redistribution and use in source and binary forms, with or without
5 // modification, are permitted provided that the following conditions 5 // modification, are permitted provided that the following conditions
6 // are met: 6 // are met:
7 // 7 //
8 // - Redistributions of source code must retain the above copyright notice, 8 // - Redistributions of source code must retain the above copyright notice,
9 // this list of conditions and the following disclaimer. 9 // this list of conditions and the following disclaimer.
10 // 10 //
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 static bool IsSupported(CpuFeature f) { 68 static bool IsSupported(CpuFeature f) {
69 ASSERT(initialized_); 69 ASSERT(initialized_);
70 return Check(f, supported_); 70 return Check(f, supported_);
71 } 71 }
72 72
73 static bool IsFoundByRuntimeProbingOnly(CpuFeature f) { 73 static bool IsFoundByRuntimeProbingOnly(CpuFeature f) {
74 ASSERT(initialized_); 74 ASSERT(initialized_);
75 return Check(f, found_by_runtime_probing_only_); 75 return Check(f, found_by_runtime_probing_only_);
76 } 76 }
77 77
78 static bool IsSafeForSnapshot(CpuFeature f) { 78 static bool IsSafeForSnapshot(Isolate* isolate, CpuFeature f) {
79 return Check(f, cross_compile_) || 79 return Check(f, cross_compile_) ||
80 (IsSupported(f) && 80 (IsSupported(f) &&
81 (!Serializer::enabled() || !IsFoundByRuntimeProbingOnly(f))); 81 (!Serializer::enabled(isolate) || !IsFoundByRuntimeProbingOnly(f)));
82 } 82 }
83 83
84 static unsigned cache_line_size() { return cache_line_size_; } 84 static unsigned cache_line_size() { return cache_line_size_; }
85 85
86 static bool VerifyCrossCompiling() { 86 static bool VerifyCrossCompiling() {
87 return cross_compile_ == 0; 87 return cross_compile_ == 0;
88 } 88 }
89 89
90 static bool VerifyCrossCompiling(CpuFeature f) { 90 static bool VerifyCrossCompiling(CpuFeature f) {
91 unsigned mask = flag2set(f); 91 unsigned mask = flag2set(f);
(...skipping 493 matching lines...) Expand 10 before | Expand all | Expand 10 after
585 explicit Operand(Register rm, ShiftOp shift_op, Register rs); 585 explicit Operand(Register rm, ShiftOp shift_op, Register rs);
586 586
587 // Return true if this is a register operand. 587 // Return true if this is a register operand.
588 INLINE(bool is_reg() const); 588 INLINE(bool is_reg() const);
589 589
590 // Return true if this operand fits in one instruction so that no 590 // Return true if this operand fits in one instruction so that no
591 // 2-instruction solution with a load into the ip register is necessary. If 591 // 2-instruction solution with a load into the ip register is necessary. If
592 // the instruction this operand is used for is a MOV or MVN instruction the 592 // the instruction this operand is used for is a MOV or MVN instruction the
593 // actual instruction to use is required for this calculation. For other 593 // actual instruction to use is required for this calculation. For other
594 // instructions instr is ignored. 594 // instructions instr is ignored.
595 bool is_single_instruction(const Assembler* assembler, Instr instr = 0) const; 595 bool is_single_instruction(Isolate* isolate,
596 bool must_output_reloc_info(const Assembler* assembler) const; 596 const Assembler* assembler,
597 Instr instr = 0) const;
598 bool must_output_reloc_info(Isolate* isolate,
599 const Assembler* assembler) const;
597 600
598 inline int32_t immediate() const { 601 inline int32_t immediate() const {
599 ASSERT(!rm_.is_valid()); 602 ASSERT(!rm_.is_valid());
600 return imm32_; 603 return imm32_;
601 } 604 }
602 605
603 Register rm() const { return rm_; } 606 Register rm() const { return rm_; }
604 Register rs() const { return rs_; } 607 Register rs() const { return rs_; }
605 ShiftOp shift_op() const { return shift_op_; } 608 ShiftOp shift_op() const { return shift_op_; }
606 609
(...skipping 1086 matching lines...) Expand 10 before | Expand all | Expand 10 after
1693 public: 1696 public:
1694 explicit EnsureSpace(Assembler* assembler) { 1697 explicit EnsureSpace(Assembler* assembler) {
1695 assembler->CheckBuffer(); 1698 assembler->CheckBuffer();
1696 } 1699 }
1697 }; 1700 };
1698 1701
1699 1702
1700 } } // namespace v8::internal 1703 } } // namespace v8::internal
1701 1704
1702 #endif // V8_ARM_ASSEMBLER_ARM_H_ 1705 #endif // V8_ARM_ASSEMBLER_ARM_H_
OLDNEW
« no previous file with comments | « no previous file | src/arm/assembler-arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698