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

Side by Side Diff: src/arm/builtins-arm.cc

Issue 9265004: Support inlining at call-sites with mismatched number of arguments. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: finished implementation, extended tests, ported to x64&arm Created 8 years, 11 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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 1742 matching lines...) Expand 10 before | Expand all | Expand 10 after
1753 __ bind(&fill); 1753 __ bind(&fill);
1754 __ push(ip); 1754 __ push(ip);
1755 __ cmp(sp, r2); 1755 __ cmp(sp, r2);
1756 __ b(ne, &fill); 1756 __ b(ne, &fill);
1757 } 1757 }
1758 1758
1759 // Call the entry point. 1759 // Call the entry point.
1760 __ bind(&invoke); 1760 __ bind(&invoke);
1761 __ Call(r3); 1761 __ Call(r3);
1762 1762
1763 masm->isolate()->heap()->SetArgumentsAdaptorDeoptPCOffset(masm->pc_offset());
1763 // Exit frame and return. 1764 // Exit frame and return.
1764 LeaveArgumentsAdaptorFrame(masm); 1765 LeaveArgumentsAdaptorFrame(masm);
1765 __ Jump(lr); 1766 __ Jump(lr);
1766 1767
1767 1768
1768 // ------------------------------------------- 1769 // -------------------------------------------
1769 // Dont adapt arguments. 1770 // Dont adapt arguments.
1770 // ------------------------------------------- 1771 // -------------------------------------------
1771 __ bind(&dont_adapt_arguments); 1772 __ bind(&dont_adapt_arguments);
1772 __ Jump(r3); 1773 __ Jump(r3);
1773 } 1774 }
1774 1775
1775 1776
1776 #undef __ 1777 #undef __
1777 1778
1778 } } // namespace v8::internal 1779 } } // namespace v8::internal
1779 1780
1780 #endif // V8_TARGET_ARCH_ARM 1781 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « src/accessors.cc ('k') | src/arm/deoptimizer-arm.cc » ('j') | src/arm/deoptimizer-arm.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698