OLD | NEW |
1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 8498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8509 } | 8509 } |
8510 | 8510 |
8511 | 8511 |
8512 static int NegativeComparisonResult(Condition cc) { | 8512 static int NegativeComparisonResult(Condition cc) { |
8513 ASSERT(cc != equal); | 8513 ASSERT(cc != equal); |
8514 ASSERT((cc == less) || (cc == less_equal) | 8514 ASSERT((cc == less) || (cc == less_equal) |
8515 || (cc == greater) || (cc == greater_equal)); | 8515 || (cc == greater) || (cc == greater_equal)); |
8516 return (cc == greater || cc == greater_equal) ? LESS : GREATER; | 8516 return (cc == greater || cc == greater_equal) ? LESS : GREATER; |
8517 } | 8517 } |
8518 | 8518 |
| 8519 |
8519 void CompareStub::Generate(MacroAssembler* masm) { | 8520 void CompareStub::Generate(MacroAssembler* masm) { |
8520 Label call_builtin, done; | 8521 Label call_builtin, done; |
8521 // The compare stub returns a positive, negative, or zero 64-bit integer | 8522 // The compare stub returns a positive, negative, or zero 64-bit integer |
8522 // value in rax, corresponding to result of comparing the two inputs. | 8523 // value in rax, corresponding to result of comparing the two inputs. |
8523 // NOTICE! This code is only reached after a smi-fast-case check, so | 8524 // NOTICE! This code is only reached after a smi-fast-case check, so |
8524 // it is certain that at least one operand isn't a smi. | 8525 // it is certain that at least one operand isn't a smi. |
8525 | 8526 |
8526 // Two identical objects are equal unless they are both NaN or undefined. | 8527 // Two identical objects are equal unless they are both NaN or undefined. |
8527 { | 8528 { |
8528 Label not_identical; | 8529 Label not_identical; |
(...skipping 2873 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11402 // Call the function from C++. | 11403 // Call the function from C++. |
11403 return FUNCTION_CAST<ModuloFunction>(buffer); | 11404 return FUNCTION_CAST<ModuloFunction>(buffer); |
11404 } | 11405 } |
11405 | 11406 |
11406 #endif | 11407 #endif |
11407 | 11408 |
11408 | 11409 |
11409 #undef __ | 11410 #undef __ |
11410 | 11411 |
11411 } } // namespace v8::internal | 11412 } } // namespace v8::internal |
OLD | NEW |