OLD | NEW |
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" // Needed here to get TARGET_ARCH_IA32. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_IA32. |
6 #if defined(TARGET_ARCH_IA32) | 6 #if defined(TARGET_ARCH_IA32) |
7 | 7 |
8 #include "vm/intermediate_language.h" | 8 #include "vm/intermediate_language.h" |
9 | 9 |
10 #include "vm/dart_entry.h" | 10 #include "vm/dart_entry.h" |
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
516 lo_cond = BELOW_EQUAL; | 516 lo_cond = BELOW_EQUAL; |
517 break; | 517 break; |
518 case Token::kGTE: | 518 case Token::kGTE: |
519 hi_cond = GREATER; | 519 hi_cond = GREATER; |
520 lo_cond = ABOVE_EQUAL; | 520 lo_cond = ABOVE_EQUAL; |
521 break; | 521 break; |
522 default: | 522 default: |
523 break; | 523 break; |
524 } | 524 } |
525 ASSERT(hi_cond != OVERFLOW && lo_cond != OVERFLOW); | 525 ASSERT(hi_cond != OVERFLOW && lo_cond != OVERFLOW); |
526 Label is_true, is_false; | |
527 // Compare upper halves first. | 526 // Compare upper halves first. |
528 __ cmpl(left2, right2); | 527 __ cmpl(left2, right2); |
529 __ j(hi_cond, labels.true_label); | 528 __ j(hi_cond, labels.true_label); |
530 __ j(FlipCondition(hi_cond), labels.false_label); | 529 __ j(FlipCondition(hi_cond), labels.false_label); |
531 | 530 |
532 // If upper is equal, compare lower half. | 531 // If upper is equal, compare lower half. |
533 __ cmpl(left1, right1); | 532 __ cmpl(left1, right1); |
534 return lo_cond; | 533 return lo_cond; |
535 } | 534 } |
536 | 535 |
(...skipping 6263 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6800 #if defined(DEBUG) | 6799 #if defined(DEBUG) |
6801 __ movl(EDX, Immediate(kInvalidObjectPointer)); | 6800 __ movl(EDX, Immediate(kInvalidObjectPointer)); |
6802 #endif | 6801 #endif |
6803 } | 6802 } |
6804 | 6803 |
6805 } // namespace dart | 6804 } // namespace dart |
6806 | 6805 |
6807 #undef __ | 6806 #undef __ |
6808 | 6807 |
6809 #endif // defined TARGET_ARCH_IA32 | 6808 #endif // defined TARGET_ARCH_IA32 |
OLD | NEW |