bmeurer@chromium.org [Fri, 29 Aug 2014 05:00:55 +0000 (05:00 +0000)]
[turbofan] Explicitly mark call sites as patchable.
TEST=cctest,mjsunit
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
514643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23506
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 28 Aug 2014 21:34:14 +0000 (21:34 +0000)]
[Auto-roll] Bump up version to 3.29.28.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
517793002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23502
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 28 Aug 2014 17:53:24 +0000 (17:53 +0000)]
Move constructors for [Element/Field]Access into AccessBuilder.
R=titzer@chromium.org
TEST=cctest/test-simplified-lowering
Review URL: https://codereview.chromium.org/
516943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23501
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 28 Aug 2014 17:46:33 +0000 (17:46 +0000)]
Skip failing test on ARM after r23492.
TBR=vogelheim@chromium.org
TEST=cctest/test-run-properties/TypedArrayLoad
Review URL: https://codereview.chromium.org/
515753006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23500
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 28 Aug 2014 17:28:57 +0000 (17:28 +0000)]
Fix test failures after r23492.
R=vogelheim@chromium.org
TEST=cctest/test-run-properties/TypedArrayLoad
Review URL: https://codereview.chromium.org/
517673002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23498
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 28 Aug 2014 15:34:15 +0000 (15:34 +0000)]
[Auto-roll] Bump up version to 3.29.26.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
516973002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23495
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 28 Aug 2014 15:19:05 +0000 (15:19 +0000)]
Skip Windows failure after r23492.
TBR=vogelheim@chromium.org
TEST=cctest/test-run-properties/TypedArrayLoad
Review URL: https://codereview.chromium.org/
513223002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23494
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 28 Aug 2014 14:42:24 +0000 (14:42 +0000)]
Let benchmark runner add summary traces.
BUG=374740
LOG=n
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
496183003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23493
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 28 Aug 2014 14:35:11 +0000 (14:35 +0000)]
Preliminary lowering of typed array loads in TF.
R=titzer@chromium.org
TEST=cctest/test-run-properties/TypedArrayLoad
Review URL: https://codereview.chromium.org/
516853002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23492
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 28 Aug 2014 13:31:55 +0000 (13:31 +0000)]
Use TruncateFloat64ToInt32 instead of ChangeFloat64ToInt32 in lowering of simplified operators NumberToInt32/NumberToUint32.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
509653003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23491
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Thu, 28 Aug 2014 13:17:38 +0000 (13:17 +0000)]
Add MachineSignature, which is an encapsulation of the machine types for parameters and return values in a graph.
This utility will be used to simplify Linkage and fix representation inference
to work with graphs where parameters and return values are something other
than tagged. It will also make testing representation inference a lot
easier, since we can then exactly nail down the machine types of parameters
and returns.
This CL also adds c-signature.h, which demonstrates how to convert C function
signatures into MachineSignatures. The CSignatures will be used in tests to
make it easier and simpler to codegen tests.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
515173002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23490
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Thu, 28 Aug 2014 12:18:25 +0000 (12:18 +0000)]
Simplify inlining now that the scheduler is smart(er).
* Only control adjustment is to move everything from the inlinee's
start block to the block the call was in.
* Add a unit test to ensure that the scheduler actually picks the
right order when placing the code.
R=mstarzinger@chromium.org, titzer@chromium.org
Review URL: https://codereview.chromium.org/
508953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23489
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 28 Aug 2014 11:45:20 +0000 (11:45 +0000)]
Fix rare access violation during JS heap serialization.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
510013002
Patch from Slava Chigrin <vchigrin@yandex-team.ru>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23488
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Thu, 28 Aug 2014 11:27:21 +0000 (11:27 +0000)]
MIPS: Fix [de]serialize problem of root objects.
BUG
TEST=mjsunit/deserialize-reference
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
492303004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23487
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 28 Aug 2014 11:09:46 +0000 (11:09 +0000)]
Add android tools to v8's deps.
BUG=408510
LOG=n
R=hinoka@google.com
Review URL: https://codereview.chromium.org/
512183004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23486
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 28 Aug 2014 11:06:26 +0000 (11:06 +0000)]
Disable running some instruction selector test on unsupported backends.
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
515793002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23485
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 28 Aug 2014 10:51:43 +0000 (10:51 +0000)]
Fix serialization references to Cell objects.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
514783002
Patch from Slava Chigrin <vchigrin@yandex-team.ru>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23484
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 28 Aug 2014 09:20:49 +0000 (09:20 +0000)]
Revert "Revert "Remove C++11-ism, until all bots support it.""
This reverts commit
1f07f57a4a13985f3a48b06d2848dd3bff165b4f.
AOSP bot is still not ready.
TBR=svenpanne@chromium.org,vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
513103002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23481
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Thu, 28 Aug 2014 08:47:11 +0000 (08:47 +0000)]
Fix build.
GCC needs definitions for constant members (clang doesn't).
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
511133002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23480
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
sigurds@chromium.org [Thu, 28 Aug 2014 08:39:24 +0000 (08:39 +0000)]
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
svenpanne@chromium.org [Thu, 28 Aug 2014 07:30:58 +0000 (07:30 +0000)]
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
yangguo@chromium.org [Thu, 28 Aug 2014 07:12:16 +0000 (07:12 +0000)]
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
yangguo@chromium.org [Thu, 28 Aug 2014 07:02:53 +0000 (07:02 +0000)]
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
machenbach@chromium.org [Thu, 28 Aug 2014 07:01:56 +0000 (07:01 +0000)]
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
machenbach@chromium.org [Thu, 28 Aug 2014 06:56:00 +0000 (06:56 +0000)]
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
weiliang.lin@intel.com [Thu, 28 Aug 2014 03:24:49 +0000 (03:24 +0000)]
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
titzer@chromium.org [Wed, 27 Aug 2014 16:17:16 +0000 (16:17 +0000)]
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
jarin@chromium.org [Wed, 27 Aug 2014 15:56:11 +0000 (15:56 +0000)]
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
adamk@chromium.org [Wed, 27 Aug 2014 15:54:23 +0000 (15:54 +0000)]
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
vogelheim@chromium.org [Wed, 27 Aug 2014 14:51:28 +0000 (14:51 +0000)]
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
titzer@chromium.org [Wed, 27 Aug 2014 14:47:50 +0000 (14:47 +0000)]
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
balazs.kilvady@imgtec.com [Wed, 27 Aug 2014 14:22:48 +0000 (14:22 +0000)]
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
titzer@chromium.org [Wed, 27 Aug 2014 13:49:30 +0000 (13:49 +0000)]
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
svenpanne@chromium.org [Wed, 27 Aug 2014 13:47:19 +0000 (13:47 +0000)]
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
machenbach@chromium.org [Wed, 27 Aug 2014 13:13:40 +0000 (13:13 +0000)]
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
titzer@chromium.org [Wed, 27 Aug 2014 13:12:56 +0000 (13:12 +0000)]
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
bmeurer@chromium.org [Wed, 27 Aug 2014 12:16:36 +0000 (12:16 +0000)]
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
verwaest@chromium.org [Wed, 27 Aug 2014 11:42:17 +0000 (11:42 +0000)]
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
machenbach@chromium.org [Wed, 27 Aug 2014 11:34:31 +0000 (11:34 +0000)]
[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
titzer@chromium.org [Wed, 27 Aug 2014 11:14:10 +0000 (11:14 +0000)]
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
mstarzinger@chromium.org [Wed, 27 Aug 2014 10:55:44 +0000 (10:55 +0000)]
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
bmeurer@chromium.org [Wed, 27 Aug 2014 10:37:54 +0000 (10:37 +0000)]
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
yangguo@chromium.org [Wed, 27 Aug 2014 10:27:52 +0000 (10:27 +0000)]
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
yangguo@chromium.org [Wed, 27 Aug 2014 10:00:06 +0000 (10:00 +0000)]
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
machenbach@chromium.org [Wed, 27 Aug 2014 09:54:03 +0000 (09:54 +0000)]
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
mstarzinger@chromium.org [Wed, 27 Aug 2014 09:52:32 +0000 (09:52 +0000)]
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
yangguo@chromium.org [Wed, 27 Aug 2014 09:51:51 +0000 (09:51 +0000)]
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
yangguo@chromium.org [Wed, 27 Aug 2014 09:49:38 +0000 (09:49 +0000)]
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
m.m.capewell@googlemail.com [Wed, 27 Aug 2014 09:47:16 +0000 (09:47 +0000)]
[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
machenbach@chromium.org [Wed, 27 Aug 2014 09:38:55 +0000 (09:38 +0000)]
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
machenbach@chromium.org [Wed, 27 Aug 2014 09:18:24 +0000 (09:18 +0000)]
Whitespace change to check MSVS 2013.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23437
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 27 Aug 2014 08:45:39 +0000 (08:45 +0000)]
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
bmeurer@chromium.org [Wed, 27 Aug 2014 08:29:22 +0000 (08:29 +0000)]
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
weiliang.lin@intel.com [Wed, 27 Aug 2014 08:15:14 +0000 (08:15 +0000)]
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
weiliang.lin@intel.com [Wed, 27 Aug 2014 07:58:51 +0000 (07:58 +0000)]
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
machenbach@chromium.org [Wed, 27 Aug 2014 07:34:34 +0000 (07:34 +0000)]
[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
weiliang.lin@intel.com [Wed, 27 Aug 2014 07:33:29 +0000 (07:33 +0000)]
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
weiliang.lin@intel.com [Wed, 27 Aug 2014 06:33:40 +0000 (06:33 +0000)]
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
bmeurer@chromium.org [Wed, 27 Aug 2014 06:25:02 +0000 (06:25 +0000)]
[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
weiliang.lin@intel.com [Wed, 27 Aug 2014 04:49:41 +0000 (04:49 +0000)]
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
machenbach@chromium.org [Tue, 26 Aug 2014 22:34:12 +0000 (22:34 +0000)]
[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
akos.palfi@imgtec.com [Tue, 26 Aug 2014 19:35:48 +0000 (19:35 +0000)]
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
akos.palfi@imgtec.com [Tue, 26 Aug 2014 19:34:15 +0000 (19:34 +0000)]
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
vogelheim@chromium.org [Tue, 26 Aug 2014 18:30:01 +0000 (18:30 +0000)]
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
balazs.kilvady@imgtec.com [Tue, 26 Aug 2014 17:57:18 +0000 (17:57 +0000)]
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
balazs.kilvady@imgtec.com [Tue, 26 Aug 2014 17:43:13 +0000 (17:43 +0000)]
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
balazs.kilvady@imgtec.com [Tue, 26 Aug 2014 17:38:41 +0000 (17:38 +0000)]
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
mstarzinger@chromium.org [Tue, 26 Aug 2014 17:04:34 +0000 (17:04 +0000)]
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
rmcilroy@chromium.org [Tue, 26 Aug 2014 16:56:49 +0000 (16:56 +0000)]
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
mstarzinger@chromium.org [Tue, 26 Aug 2014 16:42:09 +0000 (16:42 +0000)]
Enable more tests that no longer fail with TF.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
505203004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23415
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 26 Aug 2014 16:32:51 +0000 (16:32 +0000)]
Remove dead code from LookupResult
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
504183002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23414
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 26 Aug 2014 16:23:37 +0000 (16:23 +0000)]
Try again to fix Win32.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
505193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23413
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 26 Aug 2014 15:35:26 +0000 (15:35 +0000)]
Fix win32.
TBR=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
508653002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23412
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 26 Aug 2014 15:25:07 +0000 (15:25 +0000)]
Schedule floating control.
This CL makes several changes to the scheduling algorithm to handle control
flow that is not connected to End. Such control nodes constitute "floating
control islands" that must be linearized by the schedule. This is done
by considering such nodes to be schedulable, and then editing the control
dependencies after a first pass of scheduling. Then a subsequent pass of
scheduling will place all nodes correctly into the fully connected graph.
R=mstarzinger@chromium.org, rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
499363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23411
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 26 Aug 2014 15:17:57 +0000 (15:17 +0000)]
Move context specialization flag into CompilationInfo.
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
507603003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23410
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 26 Aug 2014 14:56:35 +0000 (14:56 +0000)]
Minor-key-ify new LoadICTrampolineStub.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
500423002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23409
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 26 Aug 2014 14:41:58 +0000 (14:41 +0000)]
Use an enum of Flags internally in CompilationInfo.
This is a first step in cleaning up CompilationInfo; a subsequent logical step
would be to inline most is_* and Set* and Mark* calls so that most callers
can use call info.SetFlag(CompilationInfo::kMyFlag), or at the very least,
rename them all to be consistent with their enum flag names.
R=yangguo@chromium.org, bmeuer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
504163002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23408
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 26 Aug 2014 14:35:54 +0000 (14:35 +0000)]
Fix ASAN after r23404.
TBR=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/
501403002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23407
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 26 Aug 2014 14:26:10 +0000 (14:26 +0000)]
Compilation fix.
Unnecessary assert irritated builder.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
501393002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23406
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 26 Aug 2014 14:12:47 +0000 (14:12 +0000)]
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.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
499343002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23405
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Tue, 26 Aug 2014 13:14:46 +0000 (13:14 +0000)]
Handle empty allocation list in CodeRange properly.
BUG= 407566,v8:3540
LOG=Y
TEST=cctest/test-spaces/Regress3540
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
496433004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23404
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 26 Aug 2014 13:10:01 +0000 (13:10 +0000)]
Minor-key-ify CallICStub and CallIC_ArrayStub.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
491143003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23403
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Tue, 26 Aug 2014 13:09:08 +0000 (13:09 +0000)]
Introduce subclass wrappers for STL containers that make them a lot easier
to use with Zone. For example, subclasses add constructors that wrap a Zone
in a zone_allocator to save clients this verbosity.
R=bmeurer@chromium.org, mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
505133003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23402
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 26 Aug 2014 13:07:18 +0000 (13:07 +0000)]
Fix and re-enable test-api/InitializeAndDispose.
R=svenpanne@chromium.org
TEST=cctest/test-api/InitializeAndDispose
Review URL: https://codereview.chromium.org/
504093002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23401
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Tue, 26 Aug 2014 13:05:54 +0000 (13:05 +0000)]
HeapProfiler: remove obsolete AddImplicitReferences
it hasn't been used since r149579. More than one year ago.
BUG=
R=marja@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
505983002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23400
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 26 Aug 2014 13:01:55 +0000 (13:01 +0000)]
Delete unused DescriptorArray::Append with whitenesswitness
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
501363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23399
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
verwaest@chromium.org [Tue, 26 Aug 2014 11:34:25 +0000 (11:34 +0000)]
Fixed inlining of constant values
Use CopyToRepresentation to elide HForceRepresentation of HConstant
BUG=v8:3529
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
507613002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23397
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 26 Aug 2014 11:04:37 +0000 (11:04 +0000)]
[Auto-roll] Bump up version to 3.29.18.0
TBR=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
502973006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23396
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
vogelheim@chromium.org [Tue, 26 Aug 2014 11:00:57 +0000 (11:00 +0000)]
Fix memory leak. Make "V8 Linux - memcheck" build bot happy.
Flags::SetFlagsFromCommandLine allocates memory to hold copies of string
arguments when calling Flag::set_string_value(..., true) and presently
noone deallocates this. Resetting the flags will clear this memory.
Since Flags can be used throughout the entire V8 lifetime,
Dispose/Teardown seems like the right location to free this
memory.
This is rarely a problem in practice, but the memcheck buildbot (rightly)
complains.
BUG=
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
505103003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23395
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 26 Aug 2014 10:39:20 +0000 (10:39 +0000)]
Change more PlatformCodeStubs to encode properties in the minor key.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
498283002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23394
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 26 Aug 2014 10:29:51 +0000 (10:29 +0000)]
Next attempt to fix NaCl build.
TBR=yangguo@chromium.org
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23393
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Tue, 26 Aug 2014 09:56:23 +0000 (09:56 +0000)]
Enable mjsunit/deserialize-reference for turbofan.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
503273003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23392
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Tue, 26 Aug 2014 09:50:09 +0000 (09:50 +0000)]
Move register conventions out of the IC classes.
A change to a convention shouldn't require recompilation of ic.h/.cc.
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/
486213003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23391
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 26 Aug 2014 09:48:46 +0000 (09:48 +0000)]
Fix build with ancient NaCl toolchain.
TBR=yanggou@chromium.org
Review URL: https://codereview.chromium.org/
504083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23390
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 26 Aug 2014 09:19:24 +0000 (09:19 +0000)]
Replace our homegrown ARRAY_SIZE() with Chrome's arraysize().
Our own ARRAY_SIZE() was pretty bad at error checking. If you use
arrasize() in a wrong way, the compiler will issue an error instead of
silently doing the wrong thing. The previous ARRAY_SIZE() macro is still
available as ARRAYSIZE_UNSAFE() similar to Chrome.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
501323002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23389
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Tue, 26 Aug 2014 08:44:25 +0000 (08:44 +0000)]
Enable test cases that no longer timeout.
R=bmeurer@chromium.org
BUG=v8:3522,v8:3526
LOG=N
Review URL: https://codereview.chromium.org/
505113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23388
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 26 Aug 2014 08:30:18 +0000 (08:30 +0000)]
[turbofan] Get rid of DefineAsDoubleRegister() and friends.
TEST=compiler-unittests,cctest,mjsunit
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
470623010
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23387
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Tue, 26 Aug 2014 08:29:12 +0000 (08:29 +0000)]
[turbofan] Add backend support for load/store float32 values.
This is the bare minimum required to support typed arrays. Support for
working with float32 values will be added based on this.
TEST=compiler-unittests,cctest
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
500343002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23386
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 26 Aug 2014 08:24:27 +0000 (08:24 +0000)]
Revert "Enable C++11 tests on windows."
This reverts commit 23383 because XP bots time out.
TBR=svenpanne@chromium.org
BUG=400033
LOG=n
Review URL: https://codereview.chromium.org/
497413004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23385
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Tue, 26 Aug 2014 07:22:46 +0000 (07:22 +0000)]
Whitespace change to verify MSVS2013 transition.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23384
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00