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

Side by Side Diff: runtime/vm/stub_code_mips.cc

Issue 1248113003: VM: Fix more places with isolate embedded into unoptimized code. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: minor cleanup in stub_code* Created 5 years, 5 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
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" 5 #include "vm/globals.h"
6 #if defined(TARGET_ARCH_MIPS) 6 #if defined(TARGET_ARCH_MIPS)
7 7
8 #include "vm/assembler.h" 8 #include "vm/assembler.h"
9 #include "vm/code_generator.h" 9 #include "vm/code_generator.h"
10 #include "vm/compiler.h" 10 #include "vm/compiler.h"
(...skipping 2120 matching lines...) Expand 10 before | Expand all | Expand 10 after
2131 BigintCompare, 2131 BigintCompare,
2132 RawBigint* left, 2132 RawBigint* left,
2133 RawBigint* right); 2133 RawBigint* right);
2134 2134
2135 2135
2136 // Does identical check (object references are equal or not equal) with special 2136 // Does identical check (object references are equal or not equal) with special
2137 // checks for boxed numbers. 2137 // checks for boxed numbers.
2138 // Returns: CMPRES1 is zero if equal, non-zero otherwise. 2138 // Returns: CMPRES1 is zero if equal, non-zero otherwise.
2139 // Note: A Mint cannot contain a value that would fit in Smi, a Bigint 2139 // Note: A Mint cannot contain a value that would fit in Smi, a Bigint
2140 // cannot contain a value that fits in Mint or Smi. 2140 // cannot contain a value that fits in Mint or Smi.
2141 void StubCode::GenerateIdenticalWithNumberCheckStub(Assembler* assembler, 2141 static void GenerateIdenticalWithNumberCheckStub(Assembler* assembler,
2142 const Register left, 2142 const Register left,
2143 const Register right, 2143 const Register right,
2144 const Register temp1, 2144 const Register temp1,
2145 const Register temp2) { 2145 const Register temp2) {
2146 __ Comment("IdenticalWithNumberCheckStub"); 2146 __ Comment("IdenticalWithNumberCheckStub");
2147 Label reference_compare, done, check_mint, check_bigint; 2147 Label reference_compare, done, check_mint, check_bigint;
2148 // If any of the arguments is Smi do reference compare. 2148 // If any of the arguments is Smi do reference compare.
2149 __ andi(temp1, left, Immediate(kSmiTagMask)); 2149 __ andi(temp1, left, Immediate(kSmiTagMask));
2150 __ beq(temp1, ZR, &reference_compare); 2150 __ beq(temp1, ZR, &reference_compare);
2151 __ andi(temp1, right, Immediate(kSmiTagMask)); 2151 __ andi(temp1, right, Immediate(kSmiTagMask));
2152 __ beq(temp1, ZR, &reference_compare); 2152 __ beq(temp1, ZR, &reference_compare);
2153 2153
2154 // Value compare for two doubles. 2154 // Value compare for two doubles.
2155 __ LoadImmediate(temp1, kDoubleCid); 2155 __ LoadImmediate(temp1, kDoubleCid);
(...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after
2321 // Result: 2321 // Result:
2322 // T1: entry point. 2322 // T1: entry point.
2323 void StubCode::GenerateMegamorphicLookupStub(Assembler* assembler) { 2323 void StubCode::GenerateMegamorphicLookupStub(Assembler* assembler) {
2324 EmitMegamorphicLookup(assembler, T0, T1, T1); 2324 EmitMegamorphicLookup(assembler, T0, T1, T1);
2325 __ Ret(); 2325 __ Ret();
2326 } 2326 }
2327 2327
2328 } // namespace dart 2328 } // namespace dart
2329 2329
2330 #endif // defined TARGET_ARCH_MIPS 2330 #endif // defined TARGET_ARCH_MIPS
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698