Merged r18286, r18289, r18291, r18292, r18299, r18327 into 3.23 branch.

Fix patching the receiver (global object -> global proxy) after the interceptor.

Properly restore the receiver after the interceptor call.

Fix popping order on ARM.

Push receiver and holder separately, given that they can be the same.

Fixed global object leak caused by overwriting the global receiver (the global proxy) in the global object with the global object itself.

Move the receiver into r0 for PatchGlobalProxy. This fixes the ARM/android bug http://build.chromium.org/p/tryserver.chromium/builders/android_dbg_triggered_tests/builds/112686/steps/androidwebview_instrumentation_tests TBR=dcarney@chromium.org

BUG=324812
LOG=N
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/137993018

git-svn-id: https://v8.googlecode.com/svn/branches/3.23@18624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00