- 17 Jul, 2015 2 commits
-
-
v8-autoroll authored
Rolling v8/buildtools to 125d157607de4d7c95bf8b02dd580aae17962f19 Rolling v8/third_party/android_tools to 2abd22b08cd757f88362f44b02484de43e4b9611 Rolling v8/third_party/icu to ffeeae138703e692f07d2c438203f32b84e7a094 Rolling v8/tools/clang to f729011d84762dfae62bbf4218580367dbfc7451 TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1238783004 Cr-Commit-Position: refs/heads/master@{#29718}
-
littledan authored
- Test that TypedArray properties cannot be set in strict mode Properties like %TypedArray%.prototype.length have a getter and no setter. This test verifies that property, which was apparently not true in the past or had no test ensuring throwing in this case. - Test that TypedArray integer indexed properties (array elements) are not configurable Both of these have passed for some time, but there are open bugs against them and apparently no tests verifying that they are fixed. BUG=v8:3048, v8:3799 LOG=N R=adamk Review URL: https://codereview.chromium.org/1232843005 Cr-Commit-Position: refs/heads/master@{#29717}
-
- 16 Jul, 2015 25 commits
-
-
littledan authored
This is a change from ES5 to ES6: When reversing an array, first it is checked whether the element exists, before the element is looked up. The order in ES6 is [[HasElement]] lower [[Get]] lower (if present) [[HasElement]] upper [[Get]] upper (if present) In ES5, on the other hand, the order was [[Get]] lower [[Get]] upper [[HasElement]] lower [[HasElement]] upper To mitigate the performance impact, this patch implements a new, third copy of reversing arrays if %_HasPackedElements. This allows us to skip all membership tests, and a quick and dirty benchmark shows that the new version is faster: Over 4 runs, the slowest for the new version: d8> var start = Date.now(); for (var i = 0; i < 100000000; i++) [1, 2, 3, 4, 5].reverse(); Date.now() - start 4658 Over 3 runs, the fastest for the old version: d8> var start = Date.now(); for (var i = 0; i < 100000000; i++) [1, 2, 3, 4, 5].reverse(); Date.now() - start 5176 BUG=v8:4223 R=adamk LOG=Y Review URL: https://codereview.chromium.org/1238593003 Cr-Commit-Position: refs/heads/master@{#29716}
-
littledan authored
ES2015 made a change vs ES5, where the "lastIndex" property of a RegExp (which can be modified by a user to start the next search at a different location) is cast to an integer with ToLength rather than ToInteger. The main difference is on negative numbers, and this is tested by test262. This patch implements that change on RegExps and enables the test262 test now that it passes. R=adamk LOG=Y BUG=v8:4244 Review URL: https://codereview.chromium.org/1241713004 Cr-Commit-Position: refs/heads/master@{#29715}
-
adamk authored
BUG=v8:3887 LOG=y Review URL: https://codereview.chromium.org/1238693004 Cr-Commit-Position: refs/heads/master@{#29714}
-
adamk authored
The issue with spread arrays which caused us to turn it off was fixed in https://chromium.googlesource.com/v8/v8/+/24e98281 BUG=v8:3018 LOG=y Review URL: https://codereview.chromium.org/1239873002 Cr-Commit-Position: refs/heads/master@{#29713}
-
bbudge authored
This CL exposes the constructor function, defines type related information, and implements value type semantics. It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc LOG=Y BUG=v8:4124 Committed: https://crrev.com/e5ed3bee99807c502fa7d7a367ec401e16d3f773 Cr-Commit-Position: refs/heads/master@{#29689} Review URL: https://codereview.chromium.org/1219943002 Cr-Commit-Position: refs/heads/master@{#29712}
-
adamk authored
Revert of [turbofan] Ship TF for try-catch statements. (patchset #1 id:1 of https://codereview.chromium.org/1216373002/) Reason for revert: Causes gbemu-part1 to time out on Linux dbg builders http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug/builds/3867/ http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug%20-%20code%20serializer/builds/3386/ http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20debug%20-%20greedy%20allocator/builds/828/ Original issue's description: > [turbofan] Ship TF for try-catch statements. > > R=hablich@chromium.org > BUG=v8:4131 > LOG=N > > Committed: https://crrev.com/1251d02e7bb2a13ae5cf6fda5d3403730d2ae12f > Cr-Commit-Position: refs/heads/master@{#29708} TBR=hablich@chromium.org,mstarzinger@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4131 Review URL: https://codereview.chromium.org/1234363003 Cr-Commit-Position: refs/heads/master@{#29711}
-
caitpotter88 authored
BUG= LOG=N R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1234213004 Cr-Commit-Position: refs/heads/master@{#29710}
-
binji authored
Calling quit() from d8 will call exit(), which will run static destructors. If context_mutex_ is statically allocated, pthread_mutex_destroy will be called. When running d8 in "isolates" mode, another thread may be running. If it calls CreateEvaluationContext, it will lock the context_mutex_. If the mutex is destroyed while it is locked, it will return an error. This CL changes the Mutex to a LazyMutex, which will leak instead of being destroyed. BUG=v8:4279 R=jarin@chromium.org R=machenbach@chromium.org LOG=n Review URL: https://codereview.chromium.org/1240553003 Cr-Commit-Position: refs/heads/master@{#29709}
-
mstarzinger authored
R=hablich@chromium.org BUG=v8:4131 LOG=N Review URL: https://codereview.chromium.org/1216373002 Cr-Commit-Position: refs/heads/master@{#29708}
-
mstarzinger authored
TBR=yangguo@chromium.org Review URL: https://codereview.chromium.org/1242023003 Cr-Commit-Position: refs/heads/master@{#29707}
-
mstarzinger authored
The aforementioned intrinsic is no longer needed and can be fully desugared now that binding assignments to 'this' are explicit. R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1234383002 Cr-Commit-Position: refs/heads/master@{#29706}
-
mstarzinger authored
This makes the implicit initializing assignment to 'this' performed after a super constructor call explicit in the AST. It removes the need to handle the special case where a CallExpression behaves like a AssignmentExpression from various AstVisitor implementations. R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1226123010 Cr-Commit-Position: refs/heads/master@{#29705}
-
mbrandy authored
Port c63e50ed Original commit message: Rolling v8/tools/clang to 58128abd44c22255def1163d30bc9bb2cc85e15c Reland after https://codereview.chromium.org/1241643002/ R=machenbach@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1240833002 Cr-Commit-Position: refs/heads/master@{#29704}
-
mbrandy authored
Port fc9c5275 Original commit message: By not having to patch the return sequence (we patch the debug break slot right before it), we don't overwrite it and therefore don't have to keep the original copy of the code around. R=yangguo@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1238503003 Cr-Commit-Position: refs/heads/master@{#29703}
-
mbrandy authored
Port 1d9d8957 Original commit message: This changes the calling convention of the CallConstructStub to take the original constructor (i.e. new.target in JS-speak) in a register instead of magically via the operand stack. For optimizing compilers the operand stack doesn't exist, hence cannot be peeked into. R=mstarzinger@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1230103004 Cr-Commit-Position: refs/heads/master@{#29702}
-
hablich authored
Revert of Expose SIMD.Float32x4 type to Javascript. (patchset #14 id:450001 of https://codereview.chromium.org/1219943002/) Reason for revert: Seems to brake the latest roll into Chromium: http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/59796/steps/compile%20%28with%20patch%29/logs/stdio Original issue's description: > Expose SIMD.Float32x4 type to Javascript. > This CL exposes the constructor function, defines type related > information, and implements value type semantics. > It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. > > TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc > > LOG=Y > BUG=v8:4124 > > Committed: https://crrev.com/e5ed3bee99807c502fa7d7a367ec401e16d3f773 > Cr-Commit-Position: refs/heads/master@{#29689} TBR=rossberg@chromium.org,littledan@chromium.org,martyn.capewell@arm.com,bbudge@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4124 Review URL: https://codereview.chromium.org/1241533004 Cr-Commit-Position: refs/heads/master@{#29701}
-
epertoso authored
R=jochen@chromium.org,yangguo@chromium.org LOG=n BUG= Review URL: https://codereview.chromium.org/1233563005 Cr-Commit-Position: refs/heads/master@{#29700}
-
yangguo authored
R=jochen@chromium.org Review URL: https://codereview.chromium.org/1230813004 Cr-Commit-Position: refs/heads/master@{#29699}
-
yangguo authored
This helps reasoning about setting break points. Functions that have debug info is also guaranteed to be able to set break points. R=ulan@chromium.org BUG=v8:4132 LOG=N Review URL: https://codereview.chromium.org/1227213003 Cr-Commit-Position: refs/heads/master@{#29698}
-
yangguo authored
In optimized code, it's not guaranteed that the current context is stored in its frame slot. R=bmeurer@chromium.org BUG=v8:4309 LOG=N Review URL: https://codereview.chromium.org/1239033002 Cr-Commit-Position: refs/heads/master@{#29697}
-
mstarzinger authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1238743002 Cr-Commit-Position: refs/heads/master@{#29696}
-
chunyang.dai authored
original commit message: This changes the calling convention of the CallConstructStub to take the original constructor (i.e. new.target in JS-speak) in a register instead of magically via the operand stack. For optimizing compilers the operand stack doesn't exist, hence cannot be peeked into. BUG= Review URL: https://codereview.chromium.org/1235273003 Cr-Commit-Position: refs/heads/master@{#29695}
-
chunyang.dai authored
port fc9c5275 (r29672). original commit message: Debugger: use debug break slots to break at function exit. By not having to patch the return sequence (we patch the debug break slot right before it), we don't overwrite it and therefore don't have to keep the original copy of the code around. BUG= Review URL: https://codereview.chromium.org/1236023007 Cr-Commit-Position: refs/heads/master@{#29694}
-
Ilija.Pavlovic authored
Improved checking target ranges for J and JAL instructions. Adapted disassembler test for J and JAL instructions. TEST=cctest/test-disasm-mips[64] BUG= Review URL: https://codereview.chromium.org/1237083003 Cr-Commit-Position: refs/heads/master@{#29693}
-
v8-autoroll authored
Rolling v8/buildtools to 5215ee866bc3e8eb4a7f124212845abf4029e60b Rolling v8/tools/clang to 4e7f85d6bc00cb296e34126c822cf57e5e6cf814 TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/1237553004 Cr-Commit-Position: refs/heads/master@{#29692}
-
- 15 Jul, 2015 13 commits
-
-
caitpotter88 authored
Unknown flag warning is adding unnecessary noise to terminal during test runs BUG= LOG=N R=adamk@chromium.org Review URL: https://codereview.chromium.org/1236993003 Cr-Commit-Position: refs/heads/master@{#29691}
-
adamk authored
These were added when I thought they would be useful in Blink, but as it turned out they were not. They could likely be deleted immediately, but to play it safe I'll go through the usual deprecation process. Review URL: https://codereview.chromium.org/1236263004 Cr-Commit-Position: refs/heads/master@{#29690}
-
bbudge authored
This CL exposes the constructor function, defines type related information, and implements value type semantics. It also refactors test/mjsunit/samevalue.js to test SameValue and SameValueZero. TEST=test/mjsunit/harmony/simd.js, test/cctest/test-simd.cc LOG=Y BUG=v8:4124 Review URL: https://codereview.chromium.org/1219943002 Cr-Commit-Position: refs/heads/master@{#29689}
-
balazs.kilvady authored
Port c63e50ed BUG= TEST=test-disasm-mips/Type Review URL: https://codereview.chromium.org/1233323002 Cr-Commit-Position: refs/heads/master@{#29688}
-
brucedawson authored
For unclear and probably accidental reasons the Windows 10 SDK renamed some _Interlocked* functions to _InlineInterlocked. This leads to these errors: runtime-atomics.cc(159): error C3861: '_InterlockedExchange64': identifier not found runtime-atomics.cc(159): error C3861: '_InterlockedExchangeAdd64': identifier not found runtime-atomics.cc(159): error C3861: '_InterlockedAnd64': identifier not found runtime-atomics.cc(159): error C3861: '_InterlockedOr64': identifier not found runtime-atomics.cc(159): error C3861: '_InterlockedXor64': identifier not found Fixing this requires either adding defines to map these five _Interlocked* functions to _InlineInterlocked*, or else changing to using the non-underscore versions. It appears that using the non-underscore versions is preferable so I went that way. This also requires adding three new defines because there is a huge lack of consistency, probably due to these macros being defined sometimes in <intrin.h> and sometimes in <winnt.h> All five of the renamed 64-bit functions were manually checked to ensure that the change to the non-underscore versions would make no differences - the inline functions that they map to were identical. Other functions were spot-checked. Also, the 'volatile' qualifiers were removed. Volatile has no no useful meaning for multi-threaded programming. It only exists in the Interlocked* prototypes to *allow* volatile variables to be passed. Since this is a bad habit to encourage there is no reason for us to permit it, and we can still call the Microsoft functions (T* converts to volatile T*, just not vice-versa). The updated code builds with the Windows 8.1 SDK and with the Windows 10 SDK. R=jarin@chromium.org LOG=Y BUG=440500,491424 Review URL: https://codereview.chromium.org/1228063005 Cr-Commit-Position: refs/heads/master@{#29687}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1241883002 Cr-Commit-Position: refs/heads/master@{#29686}
-
jkummerow authored
where bound functions started overriding the "name" accessor property with a data property. The bootstrapper must be kept in sync to avoid polymorphism. BUG=chromium:509983 LOG=n R=verwaest@chromium.org Review URL: https://codereview.chromium.org/1238903002 Cr-Commit-Position: refs/heads/master@{#29685}
-
adamk authored
During parsing, we now keep track of the first spread seen in an array literal (if any), and make use of that information when creating the FixedArray backing store representing the constant elements for array literal materialization. The old code tried to do this by setting the generated JSArray's length in ArrayLiteral::BuildConstantElements(), but that Array length is never read by the rest of the literal materialization code (it always uses the length of the FixedArray backing store). BUG=v8:4298 LOG=n Review URL: https://codereview.chromium.org/1225223004 Cr-Commit-Position: refs/heads/master@{#29684}
-
adamk authored
BUG=v8:4302 LOG=n Review URL: https://codereview.chromium.org/1237873003 Cr-Commit-Position: refs/heads/master@{#29683}
-
https://codereview.chromium.org/1218783005ishell authored
Review URL: https://codereview.chromium.org/1228373011 Cr-Commit-Position: refs/heads/master@{#29682}
-
mstarzinger authored
This changes the calling convention of the CallConstructStub to take the original constructor (i.e. new.target in JS-speak) in a register instead of magically via the operand stack. For optimizing compilers the operand stack doesn't exist, hence cannot be peeked into. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1237813002 Cr-Commit-Position: refs/heads/master@{#29681}
-
epertoso authored
R=jochen@chromium.org LOG=y BUG= Review URL: https://codereview.chromium.org/1209403005 Cr-Commit-Position: refs/heads/master@{#29680}
-
mvstanton authored
Gdb macro jfv on an object will print it as a feedback vector. Printouts look like this: DebugPrint: 0x5dc0d2ad: [TypeFeedbackVector] - length: 12 - ics with type info: 3 - generic ics: 0 ICSlot 0 CALL_IC MONOMORPHIC [4]: 0x5dc0d365 WeakCell for 0x5dc0cd69 <JS Function foo (SharedFunctionInfo 0x5dc0cb0d)> [5]: 0x4203c4c1 <Code: HANDLER> ICSlot 1 LOAD_IC MONOMORPHIC [6]: 0x5dc0d1f5 WeakCell for 0x3a710481 <Map(FAST_HOLEY_SMI_ELEMENTS)> [7]: 0x4203a1c1 <Code: HANDLER> ICSlot 2 LOAD_IC UNINITIALIZED [8]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> [9]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> ICSlot 3 LOAD_IC MONOMORPHIC [10]: 0x5dc0d3b5 WeakCell for 0x3a710d71 <Map(FAST_HOLEY_ELEMENTS)> [11]: 0x4202af01 <Code: HANDLER> BUG= Review URL: https://codereview.chromium.org/1225403005 Cr-Commit-Position: refs/heads/master@{#29679}
-