- 27 Aug, 2015 2 commits
-
-
titzer authored
Remove CompilationInfo::MayUseThis() and replace it with what we really want to know: MustReplaceUndefinedReceiverWithGlobalProxy. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1312713004 Cr-Commit-Position: refs/heads/master@{#30427}
-
yangguo authored
R=bmeurer@chromium.org, mstarzinger@chromium.org, rmcilroy@chromium.org Review URL: https://codereview.chromium.org/1316943002 Cr-Commit-Position: refs/heads/master@{#30402}
-
- 26 Aug, 2015 3 commits
-
-
bmeurer authored
%_IsObject(foo) is equivalent to typeof foo === 'object' and has exactly the same optimizations, so there's zero need for %_IsObject in our code base. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1313903003 Cr-Commit-Position: refs/heads/master@{#30380}
-
yangguo authored
We look up %-functions in the context if not found in the runtime. R=bmeurer@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1306993003 Cr-Commit-Position: refs/heads/master@{#30379}
-
chunyang.dai authored
port 5d875a57 (r30342). original commit message: The previous hack with HInstanceOfKnownGlobal was not only slower, but also very brittle and required a lot of weird hacks to support it. And what's even more important it wasn't even correct (because a map check on the lhs is never enough for instanceof). The new implementation provides a sane runtime implementation for InstanceOf plus a fast case in the InstanceOfStub, combined with a proper specialization in the case of a known global in CrankShaft, which does only the prototype chain walk (coupled with a code dependency on the known global). As a drive-by-fix: Also fix the incorrect Object.prototype.isPrototypeOf implementation. R=weiliang.lin@intel.com BUG= Review URL: https://codereview.chromium.org/1318663003 Cr-Commit-Position: refs/heads/master@{#30376}
-
- 21 Aug, 2015 2 commits
-
-
mstarzinger authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1310603002 Cr-Commit-Position: refs/heads/master@{#30312}
-
mstarzinger authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1309813002 Cr-Commit-Position: refs/heads/master@{#30309}
-
- 19 Aug, 2015 2 commits
-
-
titzer authored
R=rossberg@chromium.org BUG= Review URL: https://codereview.chromium.org/1301583005 Cr-Commit-Position: refs/heads/master@{#30254}
-
chunyang.dai authored
port f4c079d4 (r30107). original commit message: 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. BUG= Review URL: https://codereview.chromium.org/1286313003 Cr-Commit-Position: refs/heads/master@{#30241}
-
- 13 Aug, 2015 4 commits
-
-
chunyang.dai authored
port b62dbf1e (r30132). original commit messge: Support for undetectable strings was officially dropped in https://codereview.chromium.org/916753002, but the compilers weren't fixed properly. BUG= Review URL: https://codereview.chromium.org/1287173002 Cr-Commit-Position: refs/heads/master@{#30156}
-
bmeurer authored
Revert of [runtime] Remove useless IN builtin. (patchset #2 id:20001 of https://codereview.chromium.org/1295433002/ ) Reason for revert: Breaks win32 nosnap Original issue's description: > [runtime] Remove useless IN builtin. > > Similar to DELETE, the IN builtin is just a thin wrapper for %HasElement > and %HasProperty anyway, and cannot be optimized, plus it had a weird > special fast case (which also involved at least one LOAD_IC plus some > intrinsic magic). > > R=yangguo@chromium.org,jarin@chromium.org > > Committed: https://crrev.com/72d60a1e80e81e2e68ca402665e2acbc46c5e471 > Cr-Commit-Position: refs/heads/master@{#30154} TBR=yangguo@chromium.org,jarin@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1288923002 Cr-Commit-Position: refs/heads/master@{#30155}
-
bmeurer authored
Similar to DELETE, the IN builtin is just a thin wrapper for %HasElement and %HasProperty anyway, and cannot be optimized, plus it had a weird special fast case (which also involved at least one LOAD_IC plus some intrinsic magic). R=yangguo@chromium.org,jarin@chromium.org Review URL: https://codereview.chromium.org/1295433002 Cr-Commit-Position: refs/heads/master@{#30154}
-
bmeurer authored
The DELETE builtin calls through to %DeleteProperty anyway, so we can as well skip the builtin completely and always call into the runtime directly. Also add different entries depending on whether calling code is in sloppy or strict/strong mode. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1291973002 Cr-Commit-Position: refs/heads/master@{#30148}
-
- 12 Aug, 2015 3 commits
-
-
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}
-
mstarzinger authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1283653004 Cr-Commit-Position: refs/heads/master@{#30130}
-
mstarzinger authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1283183002 Cr-Commit-Position: refs/heads/master@{#30127}
-
- 07 Aug, 2015 1 commit
-
-
rossberg authored
Plus some renaming for consistency. R=adamk@chromium.org BUG=v8:811 LOG=N Review URL: https://codereview.chromium.org/1278783002 Cr-Commit-Position: refs/heads/master@{#30064}
-
- 05 Aug, 2015 1 commit
-
-
conradw authored
BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1270393002 Cr-Commit-Position: refs/heads/master@{#30033}
-
- 04 Aug, 2015 1 commit
-
-
bbudge authored
Change IS_SIMD_OBJECT to IS_SIMD_VALUE, and IsSimdObject to IsSimdValue. R=rossberg LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1253103006 Cr-Commit-Position: refs/heads/master@{#30004}
-
- 03 Aug, 2015 3 commits
-
-
yangguo authored
There is only one use case for it: String.prototype.search converts a string argument into a RegExp. The cache is used to avoid repeating that conversion. However, this does not make the added complexity worthwhile. Review URL: https://codereview.chromium.org/1267493006 Cr-Commit-Position: refs/heads/master@{#29985}
-
bbudge authored
Rename method EmitIsSpecObject -> EmitIsSimdObject. LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1263473008 Cr-Commit-Position: refs/heads/master@{#29980}
-
bbudge authored
Adds Int32x4, Bool32x4, Int16x8, Bool16x8, Int8x16, Bool8x16. Adds Simd128Value base heap object class. Changes heap/factory construction pattern to use arrays. Adds replaceLane functions to facilitate testing. NOPRESUBMIT=true (presubmit checks erroneously interpret array declaration in macro definition as variable size array.) LOG=Y BUG=v8:4124 Review URL: https://codereview.chromium.org/1250733005 Cr-Commit-Position: refs/heads/master@{#29974}
-
- 31 Jul, 2015 2 commits
-
-
bmeurer authored
This is the initial (big) step towards a more uniform implementation of the ToObject abstract operation (ES6 7.1.13), where we have a fallback implementation in JSReceiver::ToObject() and a fast (hydrogen) CodeStub to deal with the fast case (we should be able to do more cleanup on this in a followup CL). For natives we expose the abstract operation via a %_ToObject intrinsic, also exposed via a macro TO_OBJECT, that unifies the previous confusion with TO_OBJECT_INLINE, ToObject, TO_OBJECT, $toObject and %$toObject. Now the whole implementation of the abstract operation is context independent, meaning we don't need any magic in the builtins object nor the native context. R=mvstanton@chromium.org,yangguo@chromium.org Review URL: https://codereview.chromium.org/1266013006 Cr-Commit-Position: refs/heads/master@{#29953}
-
yangguo authored
R=cbruni@chromium.org Review URL: https://codereview.chromium.org/1265923002 Cr-Commit-Position: refs/heads/master@{#29951}
-
- 30 Jul, 2015 3 commits
-
-
yangguo authored
This fix makes the redirect mechanism a bit more stable. R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1269733002 Cr-Commit-Position: refs/heads/master@{#29936}
-
conradw authored
This avoids multiple ToFastProperties runtime calls and additional stack pushes in strong mode. BUG= Review URL: https://codereview.chromium.org/1266573003 Cr-Commit-Position: refs/heads/master@{#29925}
-
bmeurer authored
All runtime function get a context anyway, which is the same as the explicit one in case of DeclareGlobals and DeclareLookupSlot. So we can remove the additional parameter there. As an additional bonus, improve the runtime interface to DeclareLookupSlot. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1261863002 Cr-Commit-Position: refs/heads/master@{#29923}
-
- 28 Jul, 2015 2 commits
-
-
chunyang.dai authored
port 5dff4bdf (r29886). original commit message: No need to pass the name explicitly to the stubs; the runtime can extract the name from the ScopeInfo (the extension of the ScriptContext) on-demand easily without any performance impact. BUG= Review URL: https://codereview.chromium.org/1259063004 Cr-Commit-Position: refs/heads/master@{#29892}
-
bmeurer authored
Don't use different read/write slots for context globals, but let them share the same slot, which reduces the number of initial misses, and also saves some memory for large scripts. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1258213002 Cr-Commit-Position: refs/heads/master@{#29889}
-
- 24 Jul, 2015 3 commits
-
-
rossberg authored
R=mstarzinger@chromium.org BUG=513474,513475,513611,513612 LOG=N Review URL: https://codereview.chromium.org/1250423002 Cr-Commit-Position: refs/heads/master@{#29845}
-
yangguo authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/1248443003 Cr-Commit-Position: refs/heads/master@{#29840}
-
chunyang.dai authored
port d6ee366d (r29834). original commit message: This is the initial round of optimizations for the LoadGlobalViaContextStub and StoreGlobalViaContextStub, basically turning them into platform code stubs to avoid the Crankshaft overhead in the fast case, and making the runtime interface cheaper. BUG= Review URL: https://codereview.chromium.org/1258513003 Cr-Commit-Position: refs/heads/master@{#29839}
-
- 23 Jul, 2015 3 commits
-
-
yangguo authored
R=mvstanton@chromium.org Committed: https://crrev.com/937d4efbf9c399339fdc8e041bec8e80baa7b58f Cr-Commit-Position: refs/heads/master@{#29798} Review URL: https://codereview.chromium.org/1255613002 Cr-Commit-Position: refs/heads/master@{#29805}
-
yangguo authored
Revert of Reduce duplicate code in full-codegen across platforms. (patchset #1 id:1 of https://codereview.chromium.org/1255613002/) Reason for revert: breaks mips Original issue's description: > Reduce duplicate code in full-codegen across platforms. > > R=mvstanton@chromium.org > > Committed: https://crrev.com/937d4efbf9c399339fdc8e041bec8e80baa7b58f > Cr-Commit-Position: refs/heads/master@{#29798} TBR=mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1252513004 Cr-Commit-Position: refs/heads/master@{#29802}
-
yangguo authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/1255613002 Cr-Commit-Position: refs/heads/master@{#29798}
-
- 20 Jul, 2015 1 commit
-
-
mstarzinger authored
This adds the implicit function variable for a function literal to the declarations list in scope analysis, instead of specially handling it throughout all back-ends. R=rossberg@chromium.org Review URL: https://codereview.chromium.org/1245603003 Cr-Commit-Position: refs/heads/master@{#29754}
-
- 16 Jul, 2015 4 commits
-
-
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}
-
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}
-
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}
-