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

Side by Side Diff: src/arm64/lithium-arm64.h

Issue 255343004: ARM64: Use default-NaN mode to canonicalize NaNs. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Reset FPCR for cctest/test-assembler-a64.cc. 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
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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_ARM64_LITHIUM_ARM64_H_ 5 #ifndef V8_ARM64_LITHIUM_ARM64_H_
6 #define V8_ARM64_LITHIUM_ARM64_H_ 6 #define V8_ARM64_LITHIUM_ARM64_H_
7 7
8 #include "hydrogen.h" 8 #include "hydrogen.h"
9 #include "lithium-allocator.h" 9 #include "lithium-allocator.h"
10 #include "lithium.h" 10 #include "lithium.h"
(...skipping 2343 matching lines...) Expand 10 before | Expand all | Expand 10 after
2354 return is_external() || is_fixed_typed_array(); 2354 return is_external() || is_fixed_typed_array();
2355 } 2355 }
2356 LOperand* elements() { return this->inputs_[0]; } 2356 LOperand* elements() { return this->inputs_[0]; }
2357 LOperand* key() { return this->inputs_[1]; } 2357 LOperand* key() { return this->inputs_[1]; }
2358 LOperand* value() { return this->inputs_[2]; } 2358 LOperand* value() { return this->inputs_[2]; }
2359 ElementsKind elements_kind() const { 2359 ElementsKind elements_kind() const {
2360 return this->hydrogen()->elements_kind(); 2360 return this->hydrogen()->elements_kind();
2361 } 2361 }
2362 2362
2363 bool NeedsCanonicalization() { 2363 bool NeedsCanonicalization() {
2364 if (hydrogen()->value()->IsAdd() || hydrogen()->value()->IsSub() ||
2365 hydrogen()->value()->IsMul() || hydrogen()->value()->IsDiv()) {
2366 return false;
2367 }
2364 return this->hydrogen()->NeedsCanonicalization(); 2368 return this->hydrogen()->NeedsCanonicalization();
2365 } 2369 }
2366 uint32_t additional_index() const { return this->hydrogen()->index_offset(); } 2370 uint32_t additional_index() const { return this->hydrogen()->index_offset(); }
2367 2371
2368 void PrintDataTo(StringStream* stream) V8_OVERRIDE { 2372 void PrintDataTo(StringStream* stream) V8_OVERRIDE {
2369 this->elements()->PrintTo(stream); 2373 this->elements()->PrintTo(stream);
2370 stream->Add("["); 2374 stream->Add("[");
2371 this->key()->PrintTo(stream); 2375 this->key()->PrintTo(stream);
2372 if (this->hydrogen()->IsDehoisted()) { 2376 if (this->hydrogen()->IsDehoisted()) {
2373 stream->Add(" + %d] <-", this->additional_index()); 2377 stream->Add(" + %d] <-", this->additional_index());
(...skipping 694 matching lines...) Expand 10 before | Expand all | Expand 10 after
3068 3072
3069 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder); 3073 DISALLOW_COPY_AND_ASSIGN(LChunkBuilder);
3070 }; 3074 };
3071 3075
3072 #undef DECLARE_HYDROGEN_ACCESSOR 3076 #undef DECLARE_HYDROGEN_ACCESSOR
3073 #undef DECLARE_CONCRETE_INSTRUCTION 3077 #undef DECLARE_CONCRETE_INSTRUCTION
3074 3078
3075 } } // namespace v8::internal 3079 } } // namespace v8::internal
3076 3080
3077 #endif // V8_ARM64_LITHIUM_ARM64_H_ 3081 #endif // V8_ARM64_LITHIUM_ARM64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698