Commit Graph

18209 Commits

Author SHA1 Message Date
bmeurer@chromium.org
66dd869980 [turbofan] Add backend support for signed loads.
Also rename the arch opcodes to match their native counterparts.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 10:35:38 +00:00
weiliang.lin@intel.com
e6a8544a6b X87: Remove KeyedStoreIC::GenerateRuntimeSetProperty and move Store::GenerateRuntimeSetProperty to the PropertyICCompiler
port r23311.

original commit message:
  Remove KeyedStoreIC::GenerateRuntimeSetProperty and move Store::GenerateRuntimeSetProperty to the PropertyICCompiler

x

BUG=
R=verwaest@chromium.org, weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:57:11 +00:00
balazs.kilvady@imgtec.com
aff1fefe1d MIPS: Remove KeyedStoreIC::GenerateRuntimeSetProperty and move Store::GenerateRuntimeSetProperty to the PropertyICCompiler.
Port r23311 (654ca86)

BUG=
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:55:41 +00:00
weiliang.lin@intel.com
7db82e0de4 X87: Add owners files to src/ic/x87/
BUG=
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:52:21 +00:00
wingo@igalia.com
32d9aea9d8 Arguments object has @@iterator
R=arv@chromium.org, verwaest@chromium.org, rossberg@chromium.org
BUG=v8:3391
LOG=N
TEST=mjsunit/harmony/arguments-iterator.js

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:12:22 +00:00
balazs.kilvady@imgtec.com
1cdd7f5074 MIPS: Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler.
Port r23306 (b95f295)

BUG=
R=paul.lind@imgtec.com, verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:09:25 +00:00
weiliang.lin@intel.com
d171b9d535 x87: Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler
port r23306.

original commit message:
   Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler.

BUG=
R=verwaest@chromium.org, weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 09:00:04 +00:00
aandrey@chromium.org
6190ac0882 Expose Value::IsMap, IsSet, IsWeakMap, IsWeakSet in V8 API.
These checks will be needed for DevTools.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23338 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 08:56:31 +00:00
yangguo@chromium.org
b0e2cb14fa Remove mention of RegExp.$input
R=yangguo@chromium.org, arv@chromium.org
BUG=v8:3486
LOG=N

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

Patch from Mathias Bynens <mathias@qiwi.be>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 07:48:58 +00:00
yangguo@chromium.org
0944419447 Add LTO support for Android Chromium.
This is to add support for a Link-Time Optimizations experiment in Android Chromium. As it is disabled by default, it won't change anything for most configurations.

R=ulan@chromium.org

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

Patch from Fabrice de Gans <fdegans@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 07:32:29 +00:00
yangguo@chromium.org
8357e02f3c Fix GC mole warning.
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 07:04:21 +00:00
jarin@chromium.org
d8295050d2 Fix deoptimization address patching in Turbofan to use safepoints.
Since the deopt patch address needs to be available during GC to
resolve safepoints, we need to move it to the code object (instead of
the deoptimization input data) - accessing a separate fixed array
is not safe during GC. This CL adds a deoptimization_pc field to
each safepoint. The fields points to the deoptimization block.

The CL also fixes wrong register allocator constraints for
frame states on calls. These should always live on the stack
because registers are not preserved during a call.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 07:02:19 +00:00
yangguo@chromium.org
3a1c55590f Correctly forward-declare inline function headers in generic-node.h
R=bmeurer@chromium.org, jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23331 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 06:57:13 +00:00
bmeurer@chromium.org
e9ac0fe7c8 Rename CountSetBits32 to CountPopulation32 for consistency.
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23330 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-25 04:24:39 +00:00
machenbach@chromium.org
8545f713c6 Teach benchmark runner to understand generic traces.
BUG=406405
LOG=n
TEST=python -m unittest run_benchmarks_test
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23329 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-24 14:32:44 +00:00
machenbach@chromium.org
6d6749dced Whitespace change after chromium git transition.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23326 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-24 08:17:27 +00:00
machenbach@chromium.org
2299242dd1 Revert "Enable out-of-line constant pool for Arm."
This reverts commit r23323 for letting arm timeout.

Bisect build without the CL:
http://build.chromium.org/p/client.v8/builders/V8%20Arm/builds/94

Build with the CL:
http://build.chromium.org/p/client.v8/builders/V8%20Arm/builds/95

TBR=rmcilroy@chromium.org, ulan@chromium.org, yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23325 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-23 18:38:37 +00:00
machenbach@chromium.org
21edb1153c Whitespace change for chromium git migration.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23324 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-23 06:16:27 +00:00
rmcilroy@chromium.org
9133df88de Enable out-of-line constant pool for Arm.
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23323 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 15:18:41 +00:00
arv@chromium.org
74a0d0f373 Fix issue with numeric property names
We were not correctly treating 1.0 as 1, nor 1.20 as 1.2 in accessors.

BUG=v8:3507
LOG=Y
R=marja@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23321 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 14:40:38 +00:00
verwaest@chromium.org
50ea93c614 Move PropertyAccessCompiler and CallOptimization to their own files
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23320 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 14:36:54 +00:00
machenbach@chromium.org
082b65c5db Make v8 releases script ready for chromium git switch.
This uses chromium commit numbers that are supported after
the chromium git switch. Most functionality is copied from
the bot_update.py script from tools/build.

This also enables mapping bleeding edge revisions to chromium
revisions (previously the data was only retrieved for trunk).

TEST=script_test.py
TEST=tools/push-to-trunk/releases.py -c /path/to/chromium/src --branch recent

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23319 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 14:30:37 +00:00
ulan@chromium.org
785876eed2 Fix Win64 build after r23316.
TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23318 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 14:12:47 +00:00
ulan@chromium.org
8d1deb385f Fix build after r23316.
TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23317 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 13:41:29 +00:00
ulan@chromium.org
ac4c14eb73 First tests for GCIdleTimeHandler.
BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23316 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 13:26:29 +00:00
titzer@chromium.org
1addf58ed9 Fix win64 (size_t vs int in CHECK).
TBR=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 13:14:44 +00:00
ulan@chromium.org
39c83bfa08 Remove dependency on GCTrace from GCIdleTimeHandler.
This makes testing GCIdleTimeHandler easier.

BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23314 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 13:02:11 +00:00
rossberg@chromium.org
cc07503bd9 test/test262: update testcfg.py for new test262
testcfg.py:

- update revision and MD5
- remove non-mandatory harness files
- use test parser distributed with test262
- new attribute `suite.harnesspath`
- new method GetIncludesForTest
- GetSourceForTest: cache source on testcase
- IsNegativeTest: use parseTestRecord
- use 7-char sha hash [1]
- DRY setting up paths to test262 suite, harness, etc
- clean up helper fns

harness-adapter.js:

- add $DONE function to adapter [2]

1: github tar file has 7-char sha embedded in dir name
script cannot find directory to rename if they don't match exactly

2: test262 uses a `$DONE` function for async tests with
semantics like those of mocha's `done`.

Briefly: done(arg) => if (arg) { /* failure */ }

Implemented a version of this for v8, using v8-specific
api (`print`, `quit`)

BUG=v8:3513
LOG=N
R=jkummerow@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23313 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 13:00:10 +00:00
yangguo@chromium.org
ba09fa35fd Handle null receiver in sloppy mode in %GetFrameDetails.
R=jarin@chromium.org
BUG=405922
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23312 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:55:23 +00:00
verwaest@chromium.org
d1a9559750 Remove KeyedStoreIC::GenerateRuntimeSetProperty and move Store::GenerateRuntimeSetProperty to the PropertyICCompiler
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:48:15 +00:00
titzer@chromium.org
1f9bd09f36 Add ScheduleVerifier.
This adds a series of checks to the output of scheduling, including properties
of the RPO order, the dominance relation, phi placement, and the SSA property
that definitions dominate all their uses.

R=jarin@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23310 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:37:51 +00:00
hpayer@chromium.org
97c135fada Re-land "Add finalize sweeping event to GCIdleTimeHandler."
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23309 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:32:12 +00:00
verwaest@chromium.org
8b692bd877 Add ic-compiler to BUILD.gn
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23308 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 12:30:25 +00:00
verwaest@chromium.org
37bf29e7e2 Change return-type of SetDataProperty to Handle.
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23307 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:48:52 +00:00
verwaest@chromium.org
30c3981c2c Move IC code into a subdir and move ic-compilation related code from stub-cache into ic-compiler
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23306 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:43:39 +00:00
verwaest@chromium.org
3baab5e688 Rewrite StoreIC handling using the LookupIterator. Continued from patch 494153002
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23305 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:38:21 +00:00
yangguo@chromium.org
80cd0fbda5 Revert "Add finalize sweeping event to GCIdleTimeHandler."
This reverts r23302.

TBR=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23304 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:36:23 +00:00
machenbach@chromium.org
33c4427d61 [Auto-roll] Bump up version to 3.29.15.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23303 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:34:13 +00:00
hpayer@chromium.org
92859d3c81 Add finalize sweeping event to GCIdleTimeHandler.
BUG=
R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:14:17 +00:00
marja@chromium.org
77d06401ad Take ast node id counting away from Isolate.
When we're going to parse multiple scripts in parallel, we cannot have the
Isolate count the ast node ids.

Now the counter is stored in CompilationInfo instead. This is because we need to
add ast nodes after parsing too.

R=rossberg@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:12:29 +00:00
yangguo@chromium.org
2229575b26 Pacify GCmole.
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23300 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 11:09:13 +00:00
yangguo@chromium.org
a6adfd8f82 Blacklist mjsunit/debug-break-inline from turbofan tests.
Due to GC stress failures.

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23299 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:54:01 +00:00
ulan@chromium.org
62d9188d4c Reland part of r23285 "Start incremental marking in idle time handler only if it is worthwhile.""
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23298 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:18:10 +00:00
Jacob.Bramley@arm.com
2fd20234ce [turbofan] Disable the intl/overrides/string test.
This test times out with Turbo Fan enabled. See issue 3526 for details.

BUG=
R=ulan@chromium.org, wingo@igalia.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 09:05:04 +00:00
bmeurer@chromium.org
1efe3de965 Migrate test-semaphore to base-unittests.
TEST=base-unittests
BUG=v8:3489
LOG=n
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 08:52:40 +00:00
jarin@chromium.org
4fb93f6461 Black list failing Turbofan debugger test.
TBR=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23295 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 08:28:26 +00:00
bmeurer@chromium.org
bcef1fa497 Add missing test directories to presubmit.py.
R=machenbach@chromium.org
BUG=v8:3489
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23294 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:54:41 +00:00
bmeurer@chromium.org
3193f59a39 [turbofan] Add support for change/truncate to MachineOperatorReducer.
TEST=compiler-unittests
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:54:09 +00:00
jarin@chromium.org
8da0b4eca6 Couple more debugger tests working with Turbofan.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:44:18 +00:00
yangguo@chromium.org
1fcfacbcd3 Do not run Turbofan tests on mjsunit/deserialize-reference.
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23291 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 07:25:12 +00:00