ARM: Implement sqrt in inline assembly.

Call VSQRT directly to avoid the tiniest (1ulp) precision
error that occurs in the system-supplied sqrt on QNX/ARM.

All precision tests in SunSpider are now passing on this platform.

BUG=
R=bmeurer@chromium.org

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

Patch from Cosmin Truta <ctruta@gmail.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18506 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Convert some ifdefs to use their V8_OS_* macros equivalents.

R=bmeurer@chromium.org

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

Patch from Thiago Farina <tfarina@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18507 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
FunctionLiteral has work to do in the typing phase.

In crankshaft, we searched un-optimized code for a SharedFunctionInfo
that matches the FunctionLiteral we are processing. Ideally, this
work should be done in the typing phase.

R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add Isolate parameter to HandleScope::NumberOfHandles.

LOG=y
BUG=324225
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Prepare push to trunk.  Now working on version 3.24.14.

R=rossberg@chromium.org
TBR=rossberg@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18511 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix invalid debug code assertion on x64.

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Promises: some adaptations to spec

- Rename Promise.{resolved,rejected,deferred} to Promise.{resolve,reject,defer}
- Rename Promise.one to Promise.race
- Make all failures asynchronous, EXCEPT type errors for resolver
- Disallow non-construct call to Promise constructor
- Don't make combinators go through public this.defer

Also, don't bother using IsCallable.

R=dslomov@chromium.org, yhirano@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Be sure to also register the BinaryOpWithAllocationSiteStub.

R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18516 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix d8 DebugMessageDetails and DebugCommandToJSONRequest

They both returned zapped handles. Use an EscapableHandleScope and
properly return handles

BUG=none
R=jkummerow@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18517 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Array constructor can be simplified by loading context from JSFunction.

BUG=
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18518 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Skip back edge creation for "do ... while(false)" loops

Drive-by fix: Fix disassembling "prefetch" instruction on ia32

R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@18519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
ES6: Add Object.getOwnPropertySymbols

http://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.getownpropertysymbols

This allows you to get the symbols used as property keys for an object.

  var object = {};
  var sym = Symbol();
  object[sym] = 42;
  assert(Object.getOwnPropertySymbols(object)[0] === sym);

This is only available with --harmony-symbols

BUG=v8:3049
R=rossberg@chromium.org, rossberg
LOG=Y

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

Patch from Erik Arvidsson <arv@chromium.org>.

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

This is to support both heap- and zone-allocated types in the future (the latter not yet implemented).

Also, handlify the type API some more.

R=titzer@chromium.org
BUG=

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

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