- 12 Aug, 2015 19 commits
-
-
littledan authored
This patch strengthens testing of classes by verifying that the binding that they export externally follows block scoping, as opposed to var-style scoping. The tests are based on existing tests for let and const. R=adamk LOG=N BUG=v8:3305 Review URL: https://codereview.chromium.org/1286923002 Cr-Commit-Position: refs/heads/master@{#30140}
-
jfb authored
The operations were available on ARM64 and x86-32 but were unused. It has been conjectured that nontemporals can be used for rowhammer-like bitflips more easily than regular load/store operations. It is therefore desirable to avoid generating these instructions in the future. R= titzer, jochen, jln, Mark Seaborn, ruiq Review URL: https://codereview.chromium.org/1276113002 Cr-Commit-Position: refs/heads/master@{#30139}
-
binji authored
BUG=v8:4366 LOG=n Review URL: https://codereview.chromium.org/1287543004 Cr-Commit-Position: refs/heads/master@{#30138}
-
adamk authored
Also add a bigger warning to the header comment for the Maybe version. R=jochen@chromium.org Review URL: https://codereview.chromium.org/1276353003 Cr-Commit-Position: refs/heads/master@{#30137}
-
yangguo authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1282793002 Cr-Commit-Position: refs/heads/master@{#30136}
-
bmeurer authored
Instead of using a sequence if (something == null && !IS_UNDETECTABLE(something))) { ... } which will be true if something is either null or undefined, it is way simpler and way more efficient to just write if (something === null || something === (void 0)) { ... } instead, which allows the compiler(s) to generate pretty decent code without any need to resort to type feedback from a CompareNil IC. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1288623003 Cr-Commit-Position: refs/heads/master@{#30135}
-
yangguo authored
We don't need it, as we can grab it from the shared function info. Having it triggers an assertion if we define classes in native JS. R=bmeurer@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/1290703002 Cr-Commit-Position: refs/heads/master@{#30134}
-
yangguo authored
TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1287853004 Cr-Commit-Position: refs/heads/master@{#30133}
-
bmeurer authored
Support for undetectable strings was officially dropped in https://codereview.chromium.org/916753002, but the compilers weren't fixed properly. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1287983002 Cr-Commit-Position: refs/heads/master@{#30132}
-
mstarzinger authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1283023002 Cr-Commit-Position: refs/heads/master@{#30131}
-
mstarzinger authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1283653004 Cr-Commit-Position: refs/heads/master@{#30130}
-
bmeurer authored
Don't use IS_NULL_OR_UNDEFINED() for CHECK_OBJECT_COERCIBLE() because it will also return true for undetectable objects, but use IS_NULL() and IS_UNDEFINED() directly, which will only return true for null or undefined (which matches the semantics of the abstract operation CheckObjectCoercible). R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1287033002 Cr-Commit-Position: refs/heads/master@{#30129}
-
yangguo authored
R=danno@chromium.org Review URL: https://codereview.chromium.org/1285543002 Cr-Commit-Position: refs/heads/master@{#30128}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1283183002 Cr-Commit-Position: refs/heads/master@{#30127}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1289553002 Cr-Commit-Position: refs/heads/master@{#30126}
-
mstarzinger authored
This tries to remove includes of "-inl.h" headers from normal ".h" headers, thereby reducing the chance of any cyclic dependencies and decreasing the average size of our compilation units. Note that this change still leaves 7 violations of that rule in the code. However there now is the "tools/check-inline-includes.sh" tool detecting such violations. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1283033003 Cr-Commit-Position: refs/heads/master@{#30125}
-
yangguo authored
R=bmeurer@chromium.org BUG=chromium:517594 LOG=N Review URL: https://codereview.chromium.org/1286143002 Cr-Commit-Position: refs/heads/master@{#30124}
-
thestig authored
Clang says: warning: 'const' type qualifier on return type has no effect [-Wignored-qualifiers] Review URL: https://codereview.chromium.org/1284013003 Cr-Commit-Position: refs/heads/master@{#30123}
-
littledan authored
In an initial attempt to implement sloppy mode lexical bindings, functions were made lexically scoped in sloppy mode. However, the ES2015 spec says that they need an additional hoisted var binding, and further, it's not clear when we'll implement that behavior or whether it's web-compatible. This patch splits off function block scoping into a new, separate flag called --harmony_sloppy_function. This change will enable the possibility of testing and shipping this feature separately from other block scoping-related features which don't have the same risks. BUG=v8:4285 R=adamk LOG=N Review URL: https://codereview.chromium.org/1282093002 Cr-Commit-Position: refs/heads/master@{#30122}
-
- 11 Aug, 2015 21 commits
-
-
domenic authored
BUG=v8:3575 R=adamk@chromium.org, rossberg@chromium.org LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1283963002 Cr-Commit-Position: refs/heads/master@{#30121}
-
littledan authored
In ES6, direct eval() in sloppy mode uses the enclosing function-level ("var") scope for var-style bindings and a new lexical scope for lexical bindings like let and class. This patch implements that feature by making lexical bindings that are directly within an EVAL_SCOPE be on the local scope rather than the enclosing one. BUG=v8:4288 LOG=Y R=adamk Review URL: https://codereview.chromium.org/1274193004 Cr-Commit-Position: refs/heads/master@{#30120}
-
bmeurer authored
This way we can greatly simplify the different variants of ToObject in our codebase and make them more uniform and robust. Adding a new primitive doesn't require finding and changing all those places again, but it is sufficient to setup the constructor function index when allocating the map. We use the inobject properties field of Map, which is invalid primitive maps anyway. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1276533003 Cr-Commit-Position: refs/heads/master@{#30119}
-
littledan authored
R=adamk BUG=chromium:135066 LOG=N Review URL: https://codereview.chromium.org/1279203002 Cr-Commit-Position: refs/heads/master@{#30118}
-
domenic authored
R=littledan@chromium.org, adamk@chromium.org BUG=v8:3575 LOG=Y Review URL: https://codereview.chromium.org/1283703004 Cr-Commit-Position: refs/heads/master@{#30117}
-
adamk authored
The previous approach to this (in 1b1de2d2) did not work well with bots that intentionally run no tests. But I think this warning message is still useful for developers. Review URL: https://codereview.chromium.org/1281313004 Cr-Commit-Position: refs/heads/master@{#30116}
-
titzer authored
Reland: [turbofan] Various fixes to allow unboxed doubles as arguments in registers and on the stack. OCL: https://codereview.chromium.org/1263033004/ R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1284893002 Cr-Commit-Position: refs/heads/master@{#30115}
-
hpayer authored
Also remove unused max_capcity_ field in old spaces. BUG=chromium:518028,chromium:504854 LOG=n Review URL: https://codereview.chromium.org/1284853003 Cr-Commit-Position: refs/heads/master@{#30114}
-
binji authored
BUG=v8:4357 R=machenbach@chromium.org LOG=n Review URL: https://codereview.chromium.org/1285723003 Cr-Commit-Position: refs/heads/master@{#30113}
-
vogelheim authored
Revert of Debugger: clear shared function info list when recompiling for liveedit. (patchset #1 id:1 of https://codereview.chromium.org/1270313003/ ) Reason for revert: Sorry for revert, but this change breaks one of the webkit-unit-tests. Example here: https://storage.googleapis.com/chromium-layout-test-archives/V8-Blink_Win/1178/layout-test-results/inspector/sources/debugger/live-edit-no-reveal-diff.txt Not sure if the old expectations were right, or the new ones are. :) Original issue's description: > Debugger: clear shared function info list when recompiling for liveedit. > > R=bmeurer@chromium.org > BUG=chromium:517594 > LOG=N > > Committed: https://crrev.com/9eea3ef5147a5e15256093fb4c36a7598d60d128 > Cr-Commit-Position: refs/heads/master@{#30111} TBR=bmeurer@chromium.org,yangguo@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:517594 Review URL: https://codereview.chromium.org/1279613008 Cr-Commit-Position: refs/heads/master@{#30112}
-
yangguo authored
R=bmeurer@chromium.org BUG=chromium:517594 LOG=N Review URL: https://codereview.chromium.org/1270313003 Cr-Commit-Position: refs/heads/master@{#30111}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1290453002 Cr-Commit-Position: refs/heads/master@{#30110}
-
mstarzinger authored
R=hpayer@chromium.org Review URL: https://codereview.chromium.org/1272933004 Cr-Commit-Position: refs/heads/master@{#30109}
-
bmeurer authored
First step to simplify the TypeofStub. This is similar to the optimization that we use for ToNumber and ToString on Oddballs already. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1272763005 Cr-Commit-Position: refs/heads/master@{#30108}
-
bmeurer authored
There's no need to have one InstanceType per SIMD primitive type (this will not scale long-term). Also reduce the amount of code duplication and make it more robust wrt adding new SIMD types. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1273353003 Cr-Commit-Position: refs/heads/master@{#30107}
-
yangguo authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1286653004 Cr-Commit-Position: refs/heads/master@{#30106}
-
yangguo authored
This avoids many back-and-forth calls to the runtime. This also slightly changes the way we avoid getters. Previously, we circumvent getting the name property of ReferenceError, SyntaxError and TypeError due to crbug/69187 (in order to avoid leaking information from those errors through a 'name' getter installed on their prototypes). Now we do that for all errors created by V8. R=jkummerow@chromium.org, rossberg@chromium.org BUG=crbug:513472, crbug:69187 LOG=N Review URL: https://codereview.chromium.org/1281833002 Cr-Commit-Position: refs/heads/master@{#30105}
-
yangguo authored
R=mstarzinger@chromium.org BUG=chromium:517592 LOG=N Review URL: https://codereview.chromium.org/1285793002 Cr-Commit-Position: refs/heads/master@{#30104}
-
saper authored
The following errors come up when compiling v8 with clang 3.7 on FreeBSD/amd64: src/runtime/runtime-i18n.cc:629:37: error: reinterpret_cast from 'nullptr_t' to 'v8::internal::Smi *' is not allowed local_object->SetInternalField(1, reinterpret_cast<Smi*>(NULL)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ test/cctest/test-heap.cc:131:20: error: reinterpret_cast from 'nullptr_t' to 'v8::internal::Object *' is not allowed Handle<Object> n(reinterpret_cast<Object*>(NULL), isolate); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ test/cctest/test-heap.cc:1989:18: error: reinterpret_cast from 'nullptr_t' to 'Address' (aka 'unsigned char *') is not allowed Address base = reinterpret_cast<Address>(NULL); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +add myself to the AUTHORS file. BUG= Review URL: https://codereview.chromium.org/1277353002 Cr-Commit-Position: refs/heads/master@{#30103}
-
mstarzinger authored
This is the first step of turning the v8.h file into a normal header instead of an include-the-world header. The new rule is that no other header files are allowed to include v8.h, which is enforced by DEPS. Also the number of includes inside the v8.h file has been drastically reduced. Basically the last missing piece is the inclusion of the big objects-inl.h file. This in turn makes many headers follow the IWYU principle. R=bmeurer@chromium.org,hpayer@chromium.org,titzer@chromium.org Review URL: https://codereview.chromium.org/1282503003 Cr-Commit-Position: refs/heads/master@{#30102}
-
yangguo authored
Revert of [turbofan] Various fixes to allow unboxed doubles as arguments in registers and on the stack. (patchset #7 id:120001 of https://codereview.chromium.org/1263033004/ ) Reason for revert: This CL breaks MIPS (roll blocker). https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20mipsel%20-%20sim/builds/2061/steps/Check/logs/Run_Int32_Select_1 Original issue's description: > [turbofan] Various fixes to allow unboxed doubles as arguments in registers and on the stack. > > R=jarin@chromium.org > BUG= > > Committed: https://crrev.com/71409be5395f867bbca0f6998bf6caa175cd8192 > Cr-Commit-Position: refs/heads/master@{#30091} TBR=jarin@chromium.org,titzer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1284853002 Cr-Commit-Position: refs/heads/master@{#30101}
-