Commit Graph

18222 Commits

Author SHA1 Message Date
sigurds@chromium.org
e7817a9e54 Remove dependency from generic lowering on compilation info for determining strictness and builtins.
This makes the graphs compositional for inlining (i.e. we can now inline a strict function into a non-strict function, or vice versa).

1) Store strict mode as parameter in StoreNamed/StoreProperty.

R=mstarzinger@chromium.org, titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23479 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 08:39:24 +00:00
svenpanne@chromium.org
a0d5fa72c5 Fix disassembly redirection from stdout into a file.
Pass \n, \r and \t through OStream without escaping.

BUG=
R=svenpanne@chromium.org

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

Patch from Vyacheslav Egorov <vegorov@google.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23478 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 07:30:58 +00:00
yangguo@chromium.org
0748ee42db Sub-minor-key-ify seven HydrogenCodeStubs.
- FastCloneShallowObjectStub
- StringAddStub
- LoadFastElementStub
- StoreFastElementStub
- TransitionElementsKindStub
- ArrayConstructorStubBase
- InternalArrayConstructorStubBase

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23477 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 07:12:16 +00:00
yangguo@chromium.org
3cfef1e09e Sub-minor-key-ify four HydrogenCodeStubs.
- FastNewContextStub
- FastCloneShallowArrayStub
- ToBooleanStub
- ElementsTransitionAndStoreStub.

R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23474 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 07:02:53 +00:00
machenbach@chromium.org
33c28c7152 Reland "Enable C++11 tests on windows."
TBR=svenpanne@chromium.org
BUG=400033
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23473 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 07:01:56 +00:00
machenbach@chromium.org
28e95981ba Revert "Remove C++11-ism, until all bots support it."
This reverts commit r23463 as by now >> shouldn't be a syntax error anymore in chromium.

TBR=vogelheim@chromium.org, svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23472 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 06:56:00 +00:00
weiliang.lin@intel.com
425568d616 X87: Minor-key-ify BinaryOpICWithAllocationSiteStub.
port r23444.

original commit message:
  Minor-key-ify BinaryOpICWithAllocationSiteStub.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23471 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-28 03:24:49 +00:00
titzer@chromium.org
f875dd66c6 Disable running some change tests on unsupported backends.
TBR=vogelheim@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 16:17:16 +00:00
jarin@chromium.org
8eb5c1524d Unit test of instruction selection for calls with deoptimization.
BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23467 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 15:56:11 +00:00
adamk@chromium.org
71fbe7d4ec Ensure that JSProxy::Fix gives the generated JSObject map a constructor
All JSObjects in V8 either have a map()->constructor() field or are
JSFunctions. JSProxy::Fix, however, was not enforcing this, and
Object.observe's use of JSObject::GetCreationContext() exposed this.

Note that this is not Object.observe-specific: the API call
v8::Object::CreationContext() also would have revealed this bug.

This patch chooses Object as a reasonable constructor to put on the
newly-fixed object's map. Note that this has no effect on the "constructor"
property in JS. In doing so, I've also tightened up the code underlying
JSProxy::Fix to only support JSObject and JSFunction as possible output
types.

BUG=405844
LOG=N
R=rossberg@chromium.org, verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23466 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 15:54:23 +00:00
vogelheim@chromium.org
887ba6c133 Remove C++11-ism, until all bots support it.
R=machenbach@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23463 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 14:51:28 +00:00
titzer@chromium.org
79c8cfe2a8 Fix expectations of lowering tests.
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23462 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 14:47:50 +00:00
balazs.kilvady@imgtec.com
14e190bb48 MIPS: Minor-key-ify BinaryOpICWithAllocationSiteStub.
Port r23444 (0331267)

BUG=
R=dusan.milosavljevic@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23461 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 14:22:48 +00:00
titzer@chromium.org
fa34ea60c4 Disable some changes tests on ARM64. Also, fix the changes lowering to not use the more expensive TruncateFloat64ToInt32, but to use ChangeFloat64ToInt32/ChangeFloat64ToUint32, as it was before.
R=mstarzinger@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 13:49:30 +00:00
svenpanne@chromium.org
ac8eb91185 Some PNaCL compatibility fixes.
* Removed a few useless and non-standard #includes.
* Made OS::GetCurrentProcessId compile without syscall.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23459 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 13:47:19 +00:00
machenbach@chromium.org
c21026c816 Fix chromium update in auto-roller.
BUG=
R=hinoka@google.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 13:13:40 +00:00
titzer@chromium.org
d806fef193 Fix >> versus > > for stupid C++ compilers.
R=vogelheim@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23454 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 13:12:56 +00:00
bmeurer@chromium.org
7fb56e2e71 Add Flags<T> class as a type-safe way of storing OR-combinations of enums.
TEST=base-unittests
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23453 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 12:16:36 +00:00
verwaest@chromium.org
7f64aa017f Remove false checks since GetOwnProperty now throws an exception on access check violation.
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23452 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 11:42:17 +00:00
machenbach@chromium.org
2dbdd41388 [Auto-roll] Bump up version to 3.29.22.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23450 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 11:34:31 +00:00
titzer@chromium.org
5bf4c830dd Remove old changes lowering code and convert test to use new changes lowering code.
R=bmeurer@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23449 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 11:14:10 +00:00
mstarzinger@chromium.org
ef565ef98f Fix GN build after r23442.
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23448 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 10:55:44 +00:00
bmeurer@chromium.org
8968087b87 Disable SysInfoTest.AmountOfPhysicalMemory on NaCl.
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23447 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 10:37:54 +00:00
yangguo@chromium.org
a81ab7af48 Introduce sub minor key to remove NotMissMinorKey in hydrogen stubs.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23445 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 10:27:52 +00:00
yangguo@chromium.org
545c04b9bd Minor-key-ify BinaryOpICWithAllocationSiteStub.
R=mvstanton@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23444 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 10:00:06 +00:00
machenbach@chromium.org
af08d3f286 Fix chromium sync command in auto-roller.
TBR=hinoka@chromium.org, jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23443 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:54:03 +00:00
mstarzinger@chromium.org
5b253766f1 Wire up simplified and change lowering in pipeline.
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23442 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:52:32 +00:00
yangguo@chromium.org
327d843d59 fix and update debug-debugger.js
added `switch` statement is missing `break`s

R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23441 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:51:51 +00:00
yangguo@chromium.org
c49aa16fdf Slightly simplify Math.sign and Math.trunc.
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:49:38 +00:00
m.m.capewell@googlemail.com
31497a4542 [turbofan] ARM64 FP instruction selection tests
Add some tests for floating pointer instruction selection, and change conversion
tests to be parameterised.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23439 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:47:16 +00:00
machenbach@chromium.org
f435a218a5 Keep chromium checkout up to date in auto roller.
R=hinoka@google.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23438 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:38:55 +00:00
machenbach@chromium.org
7b7841090d Whitespace change to check MSVS 2013.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 09:18:24 +00:00
svenpanne@chromium.org
c6f044b397 Tweaks to generate XP-compatible .exes
BUG=407517
LOG=y
R=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23436 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 08:45:39 +00:00
bmeurer@chromium.org
b8b9d10590 Sync our homegrown SysInfo replacement with the one in Chrome base.
Also fix several inconsistencies/bugs on the way.

TEST=base-unittests
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23435 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 08:29:22 +00:00
weiliang.lin@intel.com
18235ae336 X87: Minor-key-ify new LoadICTrampolineStub.
port r23409.

original commit message:
  Minor-key-ify new LoadICTrampolineStub.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23434 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 08:15:14 +00:00
weiliang.lin@intel.com
eab8bdde23 X87: Added vector-based loadic hydrogen stubs. Not yet callable.
port r23405.

original commit message:
  Added vector-based loadic hydrogen stubs. Not yet callable.
  The next step is to integrate the use of vector[slot] into the IC
  infrastructure so it can do the right thing for a vector-based ic.
   Then these stubs can be installed. For now, they immediately bail
   out to the miss handler.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 07:58:51 +00:00
machenbach@chromium.org
19a4571681 [Auto-roll] Bump up version to 3.29.21.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 07:34:34 +00:00
weiliang.lin@intel.com
24b5e5063b X87: Minor-key-ify CallICStub and CallIC_ArrayStub.
port r23403.

original commit message:
  Minor-key-ify CallICStub and CallIC_ArrayStub.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23431 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 07:33:29 +00:00
weiliang.lin@intel.com
246b01efdc X87: Change more PlatformCodeStubs to encode properties in the minor key.
port r23394.

original commit message:
  Change more PlatformCodeStubs to encode properties in the minor key.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 06:33:40 +00:00
bmeurer@chromium.org
b1e9d99bb2 [turbofan] Refactor code generation for calls.
R=jarin@chromium.org
TEST=cctest

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23429 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 06:25:02 +00:00
weiliang.lin@intel.com
ef21aa93b7 X87: Move register conventions out of the IC classes.
port r23391.

original commit message:
  Move register conventions out of the IC classes.
  A change to a convention shouldn't require recompilation of ic.h/.cc.

BUG=
R=weiliang.lin@intel.com

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23428 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-27 04:49:41 +00:00
machenbach@chromium.org
37f220c27f [Auto-roll] Bump up version to 3.29.19.0
TBR=machenbach@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23424 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 22:34:12 +00:00
akos.palfi@imgtec.com
b9e0b90612 MIPS: Minor-key-ify new LoadICTrampolineStub.
Port r23409 (31a0d5ae)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23423 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 19:35:48 +00:00
akos.palfi@imgtec.com
4f4e209fca MIPS: Added vector-based loadic hydrogen stubs. Not yet callable.
Port r23405 (12573f34)

Original commit message:
The next step is to integrate the use of vector[slot] into the IC
infrastructure so it can do the right thing for a vector-based ic.
Then these stubs can be installed. For now, they immediately bail out
to the miss handler.

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23422 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 19:34:15 +00:00
vogelheim@chromium.org
881b15a1ca Partial revert of r23415. Original message:
> Enable more tests that no longer fail with TF.

It looks like "V8 Win32 - 1" still has issues. Try to revert only the affected test.

BUG=
TBR=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23421 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 18:30:01 +00:00
balazs.kilvady@imgtec.com
6ff7b9ab0f MIPS: Move register conventions out of the IC classes.
Port r23391 (c3bf1dc)

Original commit message:
A change to a convention shouldn't require recompilation of ic.h/.cc.

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23420 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 17:57:18 +00:00
balazs.kilvady@imgtec.com
6d08761317 MIPS: Minor-key-ify CallICStub and CallIC_ArrayStub.
Port r23403 (553b376)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23419 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 17:43:13 +00:00
balazs.kilvady@imgtec.com
597a49ae51 MIPS: Change more PlatformCodeStubs to encode properties in the minor key.
Port r23394 (6366610)

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23418 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 17:38:41 +00:00
mstarzinger@chromium.org
f097880c12 Make filter for optimized code sharing finer.
R=titzer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23417 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 17:04:34 +00:00
rmcilroy@chromium.org
defea14cfb Fix external snapshot reading by removing an assumption that strings in the snapshot file are null-terminated.
R=vogelheim@chromium.org

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

Patch from André Baixo <baixo@google.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23416 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-08-26 16:56:49 +00:00