Commit Graph

18103 Commits

Author SHA1 Message Date
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
yangguo@chromium.org
a5ea23375e Mark test-debug/RecursiveBreakpointsGlobal as flaky.
TBR=machenbach@chromium.org
BUG=v8:3525
LOG=N

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23290 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 06:45:15 +00:00
bmeurer@chromium.org
7cb564b580 [turbofan] Initial import of SimplifiedOperatorReducer.
TEST=compiler-unittests
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-22 04:47:55 +00:00
machenbach@chromium.org
43feb7f644 Revert "Start incremental marking in idle time handler only if it is worthwhile."
This reverts commit r23285 for breaking cctest/test-api/Regress2107.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23286 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 19:55:27 +00:00
ulan@chromium.org
fbee2a9b33 Start incremental marking in idle time handler only if it is worthwhile.
BUG=
R=hpayer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 16:05:38 +00:00
arv@chromium.org
98f7b7e14a Add back the duplicate property checker
We're not quite ready to make this change.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23284 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 15:32:22 +00:00
hpayer@chromium.org
65c9c2a2dd Remove conservative sweeping.
BUG=
R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23283 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-21 14:50:18 +00:00