Commit Graph

24 Commits

Author SHA1 Message Date
bmeurer@chromium.org
dab61bc310 Replace our home-grown BitCast with bit_cast from Chrome/Google3.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-08 09:11:11 +00:00
weiliang.lin@intel.com
7d160cd9f2 X87: Fix build
BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23737 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 14:29:21 +00:00
svenpanne@chromium.org
051972d240 Generalized division via multiplication.
We can now compute the magic numbers for all combinations of 32bit and
64bit (un)signed multiplications.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23730 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-05 11:48:47 +00:00
weiliang.lin@intel.com
327d2389cc X87: First step to cleanup the power-of-2 mess
port r23617.

original commit message:

   First step to cleanup the power-of-2 mess

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23632 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 07:48:57 +00:00
weiliang.lin@intel.com
61805bd570 X87: Minor-key-ify four stubs.
port r23605.

orginal commit message:
  - Minor-key-ify four stubs.
  - ICCompareStub
  - BinaryOpICStub
  - CompareNilICStub - VectorLoadStub

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-09-03 04:18:06 +00:00
weiliang.lin@intel.com
ed97194cfb X87: Check that external references are registered in the serializer.
port r22896

original commit message:
  Check that external references are registered in the serializer.
  Inspired by a patch by Slava Chigrin <vchigrin@yandex-team.ru>;

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22952 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-07 07:06:52 +00:00
bmeurer@chromium.org
d07a2eb806 Rename ASSERT* to DCHECK*.
This way we don't clash with the ASSERT* macros
defined by GoogleTest, and we are one step closer
to being able to replace our homegrown base/ with
base/ from Chrome.

R=jochen@chromium.org, svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-04 11:34:54 +00:00
weiliang.lin@intel.com
5372a2a769 X87: Clean up name distinction between Keyed ICs and Element Handlers
port r22679.

original commit message:

  Clean up name distinction between Keyed ICs and Element Handlers

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22696 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-30 09:04:42 +00:00
mstarzinger@chromium.org
c0f6b34199 Support for dynamic write-barrier counters everywhere.
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22676 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-29 14:38:39 +00:00
verwaest@chromium.org
24c2a018f6 X87: Only to the relevant checks in LoadFunctionPrototype
port r22550.

original commit message:
  Only to the relevant checks in LoadFunctionPrototype

BUG=
R=verwaest@chromium.org

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-24 09:12:34 +00:00
weiliang.lin@intel.com
2aad6f0024 X87: Use register parameters in ElementsTransitionGenerator
port r22384

original commit message:
 Use register parameters in ElementsTransitionGenerator
x

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-15 09:46:10 +00:00
ishell@chromium.org
2c94151e6e Reland r22082 "Replace HeapNumber as doublebox with an explicit MutableHeapNumber."
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-07-01 15:02:31 +00:00
jochen@chromium.org
a4506cd3f2 Move platform abstraction to base library
Also split v8-core independent methods from checks.h to base/logging.h and
merge v8checks with the rest of checks.

The CPU::FlushICache method is moved to CpuFeatures::FlushICache

RoundUp and related methods are moved to base/macros.h

Remove all layering violations from src/libplatform

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 13:25:46 +00:00
ishell@chromium.org
d1190c503d Revert "Replace HeapNumber as doublebox with an explicit MutableHeapNumber."
This reverts commit r22082 for breaking arm64 build.

TBR=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22083 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 10:19:31 +00:00
ishell@chromium.org
cea1824f58 Replace HeapNumber as doublebox with an explicit MutableHeapNumber.
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-30 09:44:43 +00:00
danno@chromium.org
eaca750b29 Remove distinction between hidden and normal runtime functions
R=jkummerow@chromium.org, mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-25 15:26:10 +00:00
weiliang.lin@intel.com
eac091277f X87: Improve write barriers in optimized code.
Port r21630 (a21ff10)

Original commit message:
Use a cheaper RecordWriteForMap() to update the
write barrier for maps. And skip the value check
in RecordWriteField() when we statically know that
the value is in new space (and therefore has "pointers
to here are interesting" flag set).

BUG=
R=bmeurer@chromium.org

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21668 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-04 09:27:16 +00:00
jochen@chromium.org
56a486c322 Use full include paths everywhere
- this avoids using relative include paths which are forbidden by the style guide
- makes the code more readable since it's clear which header is meant
- allows for starting to use checkdeps

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-03 08:12:43 +00:00
weiliang.lin@intel.com
1d57c2d65f X87: Don't push eax/rax before calling Runtime_Abort
Additionally delete the unused Throw(BailoutReason)

Port r21582 (41dd40b)

BUG=
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-06-02 13:53:21 +00:00
weiliang.lin@intel.com
0f2f60bd37 X87: Convert String array index/length hash to BitField.
Port r21533 (736c779)

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:18:39 +00:00
weiliang.lin@intel.com
2312c8abdf X87: Avoid HeapObject check in HStoreNamedField.
port r21509 (78a54b0)

Original commit message:
This way an HStoreNamedField instruction can never deoptimize
itself, which is another important step towards a working
store elimination.

BUG=
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-28 08:16:11 +00:00
danno@chromium.org
621c7eb673 Convert ElementsKind into a BitField
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21515 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-27 09:38:01 +00:00
hpayer@chromium.org
6ed0102b1d Remove high promotion mode.
BUG=
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21493 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-26 12:58:55 +00:00
danno@chromium.org
9c485e182b Introduce x87 port
Support x87-only platform (ia32 without SSE)

R=danno@chromium.org

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

Patch from Weiliang Lin <weiliang.lin@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21469 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-05-23 16:37:27 +00:00