X87: Do not cache CodeStubInterfaceDescriptor on the isolate.

port r23744.

original commit message:

  Do not cache CodeStubInterfaceDescriptor on the isolate.

BUG=
R=weiliang.lin@intel.com

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

Patch from Jing Bao <jing.bao@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23853 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Added CallInterfaceDescriptors to all code stubs. A handful
of code stubs are too complex to be described this way, and
they are encoded with the macro
DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR().

Along the way:
* allowed inheritance of CallInterfaceDescriptors.
* Defined static Register methods for some of the new
  CallInterfaceDescriptors. We could go a lot further here, but
  it doesn't have to be done immediately.
* Added Representation arrays to some CallInterfaceDescriptors,
  especially where future hydrogen versions of the stubs could
  benefit from this knowledge.

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Improve x32 detection macro.

When targeting the Microsoft ABI in 64bit mode, clang defines __x86_64__ but
doesn't define __LP64__ (Microsoft uses LLP64), so it would fall down the x32
path. cl.exe doesn't define __x86_64__ in the first place, so it didn't have
this problem.

Rather than trying to guess pointer size by looking at __x86_64__ and __LP64__,
check for pointer size directly using __POINTER_SIZE__. This is defined by both
gcc and clang, and eliminiates this problem.

This should fix hundreds of "error(clang): unknown type name 'Atomic64'" when
compiling v8 on Windows with clang for 64 bit.

BUG=chromium:82385
LOG=n
R=haitao.feng@intel.com, jochen@chromium.org

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

Patch from Nico Weber <thakis@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ARM64: Change some incorect uses of ptrdiff_t to int64_t.

R=bmeurer@chromium.org, ulan@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Make --turbo-inlining available on the command line.

R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix crash in ScriptDebugServer::wrapCallFrames

The crash happens in DebugEventListener that gets called for an unhandled exception thrown by TryCatch.ReThrow().

In DevTools some parts of DebugEventListener are implemented in JavaScript, thus we should allow JavaScript execution while handling ReThrow exception in debugger.

BUG=411196
LOG=Y
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Enable typed pipeline for TurboFan (again).

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Expect requiring access check on objects with hidden properties.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Parser cleanup: less member variables.

Parser had unnecessary member pointers to stuff stored in the
CompilationInfo (which Parser also points to).

As we add more parsing code paths (in particular, script streaming), this gets
confusing and Parser and CompilationInfo can get out of sync.

BUG=
R=jochen@chromium.org, rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add a script that can generate simple test cases for user-exposed JS builtins

(we won't check in any such tests; they can be generated on the fly when needed)

R=mbarbella@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix ElementsKind handling of prototypes in Array.concat

Double elements, typed elements, and sloppy arguments elements were all erroneously marked UNREACHABLE.

BUG=chromium:412203
LOG=n
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23863 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
[turbofan] Machine operators are globally shared singletons.

TEST=compiler-unittests,cctest
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23864 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add script streaming API.

Blink will use this API to stream script data into V8 as the scripts
load. During loading, V8 can already parse the scripts. They will be then
compiled and executed when the loading is complete.

BUG=
R=jochen@chromium.org, rossberg@chromium.org, svenpanne@chromium.org, yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add AccessorInfo handling into heap profiler.

BUG=
R=svenpanne@chromium.org, yurys@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix compilation after r23865.

TBR=ulan@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Add script streaming API."

This reverts r23865

Revert "Fix compilation after r23865."

This reverts r23867

Reason: the test contains characters too special for Windows's taste.

TBR=ulan@chromium.org

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix regress-crbug-412203.js

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Skip long running test variants for NaCL.

BUG=
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Do full GC for small heaps in idle time handler.

BUG=407593
LOG=N
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
MIPS: Added CallInterfaceDescriptors to all code stubs.

Port r23854 (3870059)

Original commit message:
Added CallInterfaceDescriptors to all code stubs. A handful
of code stubs are too complex to be described this way, and
they are encoded with the macro
DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR().

Along the way:
* allowed inheritance of CallInterfaceDescriptors.
* Defined static Register methods for some of the new
  CallInterfaceDescriptors. We could go a lot further here, but
  it doesn't have to be done immediately.
* Added Representation arrays to some CallInterfaceDescriptors,
  especially where future hydrogen versions of the stubs could
  benefit from this knowledge.

BUG=
R=dusan.milosavljevic@imgtec.com

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

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