| OLD | NEW |
| 1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 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 5872 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5883 // Enter the exit frame that transitions from JavaScript to C++. | 5883 // Enter the exit frame that transitions from JavaScript to C++. |
| 5884 __ EnterExitFrame(frame_type); | 5884 __ EnterExitFrame(frame_type); |
| 5885 | 5885 |
| 5886 // r4: number of arguments (C callee-saved) | 5886 // r4: number of arguments (C callee-saved) |
| 5887 // r5: pointer to builtin function (C callee-saved) | 5887 // r5: pointer to builtin function (C callee-saved) |
| 5888 // r6: pointer to first argument (C callee-saved) | 5888 // r6: pointer to first argument (C callee-saved) |
| 5889 | 5889 |
| 5890 Label throw_out_of_memory_exception; | 5890 Label throw_out_of_memory_exception; |
| 5891 Label throw_normal_exception; | 5891 Label throw_normal_exception; |
| 5892 | 5892 |
| 5893 // Call into the runtime system. Collect garbage before the call if | 5893 // Call into the runtime system. |
| 5894 // running with --gc-greedy set. | |
| 5895 if (FLAG_gc_greedy) { | |
| 5896 Failure* failure = Failure::RetryAfterGC(0); | |
| 5897 __ mov(r0, Operand(reinterpret_cast<intptr_t>(failure))); | |
| 5898 } | |
| 5899 GenerateCore(masm, &throw_normal_exception, | 5894 GenerateCore(masm, &throw_normal_exception, |
| 5900 &throw_out_of_memory_exception, | 5895 &throw_out_of_memory_exception, |
| 5901 frame_type, | 5896 frame_type, |
| 5902 FLAG_gc_greedy, | 5897 false, |
| 5903 false); | 5898 false); |
| 5904 | 5899 |
| 5905 // Do space-specific GC and retry runtime call. | 5900 // Do space-specific GC and retry runtime call. |
| 5906 GenerateCore(masm, | 5901 GenerateCore(masm, |
| 5907 &throw_normal_exception, | 5902 &throw_normal_exception, |
| 5908 &throw_out_of_memory_exception, | 5903 &throw_out_of_memory_exception, |
| 5909 frame_type, | 5904 frame_type, |
| 5910 true, | 5905 true, |
| 5911 false); | 5906 false); |
| 5912 | 5907 |
| (...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6233 int CompareStub::MinorKey() { | 6228 int CompareStub::MinorKey() { |
| 6234 // Encode the two parameters in a unique 16 bit value. | 6229 // Encode the two parameters in a unique 16 bit value. |
| 6235 ASSERT(static_cast<unsigned>(cc_) >> 28 < (1 << 15)); | 6230 ASSERT(static_cast<unsigned>(cc_) >> 28 < (1 << 15)); |
| 6236 return (static_cast<unsigned>(cc_) >> 27) | (strict_ ? 1 : 0); | 6231 return (static_cast<unsigned>(cc_) >> 27) | (strict_ ? 1 : 0); |
| 6237 } | 6232 } |
| 6238 | 6233 |
| 6239 | 6234 |
| 6240 #undef __ | 6235 #undef __ |
| 6241 | 6236 |
| 6242 } } // namespace v8::internal | 6237 } } // namespace v8::internal |
| OLD | NEW |