- 03 Feb, 2016 8 commits
-
-
hablich authored
Revert of [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a … (patchset #3 id:80001 of https://codereview.chromium.org/1642223003/ ) Reason for revert: Fails a lot of layout tests and blocks the roll. Can be easily reproduced with a local Chromium checkout. Reference: https://codereview.chromium.org/1652413003/ Original issue's description: > [api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a constructor. > > Previously ObjectTemplate::New() logic relied on the fact that all the accessor properties are already installed in the initial map of the function object of the constructor FunctionTemplate. > When the FunctionTemplate were instantiated the accessors of the instance templates from the whole inheritance chain were accumulated and added to the initial map. > ObjectTemplate::SetSetAccessor() used to explicitly ensure that the ObjectTemplate has a constructor and therefore an initial map to add all accessors to. > > The new approach is to add all the accessors and data properties to the object exactly when the ObjectTemplate is instantiated. In order to keep it fast we now cache the object boilerplates in the Isolate::template_instantiations_cache (the former function_cache), so the object creation turns to be a deep copying of the boilerplate object. > > This CL also prohibits non-primitive properties in ObjectTemplate to avoid potential cross-context leaks. > > BUG=chromium:579009 > LOG=Y > > Committed: https://crrev.com/6a118774244d087b5979e9291d628a994f21d59d > Cr-Commit-Position: refs/heads/master@{#33674} TBR=verwaest@chromium.org,ishell@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:579009 Review URL: https://codereview.chromium.org/1660263003 Cr-Commit-Position: refs/heads/master@{#33698}
-
neis authored
BUG=chromium:583260 LOG=n Review URL: https://codereview.chromium.org/1664683002 Cr-Commit-Position: refs/heads/master@{#33697}
-
hablich authored
Reland of [heap] Simplify distribution of remaining memory during sweeping & compaction (patchset #1 id:1 of https://codereview.chromium.org/1661723003/ ) Reason for revert: Bisection results show that this was not the culprit. Original issue's description: > Revert of [heap] Simplify distribution of remaining memory during sweeping & compaction (patchset #2 id:80001 of https://codereview.chromium.org/1653973003/ ) > > Reason for revert: > Very likely blocking roll: https://codereview.chromium.org/1652413003/ > > Original issue's description: > > [heap] Simplify distribution of remaining memory during sweeping & compaction > > > > BUG=chromium:524425 > > LOG=N > > > > Committed: https://crrev.com/f72923526ccaa8faef5c977267b0c074c4a44dfa > > Cr-Commit-Position: refs/heads/master@{#33668} > > TBR=hpayer@chromium.org,mlippautz@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=chromium:524425 > > Committed: https://crrev.com/a9441b0e7a2a56c2047482a3cc66e3ca2255444b > Cr-Commit-Position: refs/heads/master@{#33695} TBR=hpayer@chromium.org,mlippautz@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524425 Review URL: https://codereview.chromium.org/1663013002 Cr-Commit-Position: refs/heads/master@{#33696}
-
hablich authored
Revert of [heap] Simplify distribution of remaining memory during sweeping & compaction (patchset #2 id:80001 of https://codereview.chromium.org/1653973003/ ) Reason for revert: Very likely blocking roll: https://codereview.chromium.org/1652413003/ Original issue's description: > [heap] Simplify distribution of remaining memory during sweeping & compaction > > BUG=chromium:524425 > LOG=N > > Committed: https://crrev.com/f72923526ccaa8faef5c977267b0c074c4a44dfa > Cr-Commit-Position: refs/heads/master@{#33668} TBR=hpayer@chromium.org,mlippautz@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:524425 Review URL: https://codereview.chromium.org/1661723003 Cr-Commit-Position: refs/heads/master@{#33695}
-
bmeurer authored
We always call GetCallerArguments with 0 for prefix_argc, and so there's no use in having that parameter at all. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1662953002 Cr-Commit-Position: refs/heads/master@{#33694}
-
bmeurer authored
R=jarin@chromium.org BUG=chromium:582703 LOG=n Review URL: https://codereview.chromium.org/1664483003 Cr-Commit-Position: refs/heads/master@{#33693}
-
v8-autoroll authored
Rolling v8/base/trace_event/common to 4b09207e447ae5bd34643b4c6321bee7b76d35f9 Rolling v8/third_party/icu to 8f91ea3a7e0413df3312204058da856058a8099b Rolling v8/tools/clang to 003558cb5f46e54fdbf5d14507f5c233d2ea91e6 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review URL: https://codereview.chromium.org/1665713002 Cr-Commit-Position: refs/heads/master@{#33692}
-
bradnelson authored
As it turns out checking for bare Type::Function is problematic, switching to use Type::Function(Type::Any())). Also labeling the type on foreign function declarations. BUG= https://code.google.com/p/v8/issues/detail?id=4203 TEST=test-asm-validator R=aseemgarg@chromium.org LOG=N Review URL: https://codereview.chromium.org/1652963004 Cr-Commit-Position: refs/heads/master@{#33691}
-
- 02 Feb, 2016 32 commits
-
-
vogelheim authored
R=machenbach@chromium.org BUG=chromium:474921 LOG=n Review URL: https://codereview.chromium.org/1658223002 Cr-Commit-Position: refs/heads/master@{#33690}
-
verwaest authored
This includes 2 fixes: 1) We didn't properly advance the holder when checking whether Receiver==Holder, so we'd inadvertently block loading the property if the first property we find is on the typed array. 2) Reflect.get may cause any object on the prototype chain of the holder to be the receiver; so we need to recheck for this special state for each object we perform lookup on. Review URL: https://codereview.chromium.org/1651913005 Cr-Commit-Position: refs/heads/master@{#33689}
-
rmcilroy authored
BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1649743002 Cr-Commit-Position: refs/heads/master@{#33688}
-
hpayer authored
BUG=chromium:561449 LOG=n Review URL: https://codereview.chromium.org/1654263004 Cr-Commit-Position: refs/heads/master@{#33687}
-
oth authored
Moves the temporary register allocator out of the bytecode array builder into TemporaryRegisterAllocator class and adds unittests. Particular must be taken around the translation window boundary motivating the addition of tests. Also adds a Clear() method to IdentityMap() which is called by the destructor. This allows classes to hold an IdentityMap if they are zone allocated. Classes must call Clear() before the zone is re-cycled or face v8 heap corruption. BUG=v8:4280,v8:4675 LOG=N Review URL: https://codereview.chromium.org/1651133002 Cr-Commit-Position: refs/heads/master@{#33686}
-
mstarzinger authored
R=oth@chromium.org Review URL: https://codereview.chromium.org/1657593008 Cr-Commit-Position: refs/heads/master@{#33685}
-
machenbach authored
BUG= Review URL: https://codereview.chromium.org/1652003002 Cr-Commit-Position: refs/heads/master@{#33684}
-
jkummerow authored
BUG=chromium:583257 LOG=n R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1651253003 Cr-Commit-Position: refs/heads/master@{#33683}
-
bmeurer authored
Move all the code that deals with falling back to object creation via stubs to JSGenericLowering, where we can already deal well with stub calls. This includes JSCreateLiteralArray, JSCreateLiteralObject, JSCreateClosure, JSCreateFunctionContext and JSCreateArray. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1653353002 Cr-Commit-Position: refs/heads/master@{#33682}
-
machenbach authored
This removes an unnecessary gclient-sync for chromium, which makes the bots die when network is slow. NOTRY=true TBR=hablich@chromium.org Review URL: https://codereview.chromium.org/1658043003 Cr-Commit-Position: refs/heads/master@{#33681}
-
bmeurer authored
We don't have proper test coverage for the no-deoptimization code paths in the JSGlobalObjectSpecialization reducer, and we will properly never have any use for that code, so it just adds complexity and code that likely breaks over time (as its untested). R=jarin@chromium.org Review URL: https://codereview.chromium.org/1659463007 Cr-Commit-Position: refs/heads/master@{#33680}
-
akos.palfi authored
NOTRY=true Review URL: https://codereview.chromium.org/1658193002 Cr-Commit-Position: refs/heads/master@{#33679}
-
akos.palfi authored
TEST=cctest/test-run-wasm/*, cctest/test-run-wasm-module/*, unittests BUG= Review URL: https://codereview.chromium.org/1581223002 Cr-Commit-Position: refs/heads/master@{#33678}
-
ahaas authored
If the architecture does not provide rounding instructions, then C implementations of these rounding instructions are called. The C implementations from math.h are used, function pointers are registered as external references so that they can be call from the simulator. R=titzer@chromium.org BUG=575379 LOG=Y Review URL: https://codereview.chromium.org/1661463002 Cr-Commit-Position: refs/heads/master@{#33677}
-
yangguo authored
Revert of [regexp] implement /ui to mirror the implementation for /i. (patchset #2 id:20001 of https://codereview.chromium.org/1641613002/ ) Reason for revert: This test fails: assertEquals(["as"], /^a[\u017F]/ui.exec("as")); The reason is that we end up with a character class that is not stand alone, so we do not perform case folding on it correctly (with unicode flag). Original issue's description: > [regexp] implement /ui to mirror the implementation for /i. > > R=erik.corry@gmail.com, erikcorry@chromium.org > > Committed: https://crrev.com/eea1a4c003c559c99bcc9f08aa7eadf931975aad > Cr-Commit-Position: refs/heads/master@{#33655} TBR=erik.corry@gmail.com,erikcorry@chromium.org,erikcorry@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1661483002 Cr-Commit-Position: refs/heads/master@{#33676}
-
bmeurer authored
Avoid the hacking in JSIntrinsicLowering and provide a proper simplified operator ObjectIsReceiver instead that is used to implement %_IsJSReceiver which is used by our JavaScript builtins and the JSInliner. R=jarin@chromium.org BUG=v8:4544 LOG=n Review URL: https://codereview.chromium.org/1657863004 Cr-Commit-Position: refs/heads/master@{#33675}
-
ishell authored
[api] Make ObjectTemplate::SetNativeDataProperty() work even if the ObjectTemplate does not have a constructor. Previously ObjectTemplate::New() logic relied on the fact that all the accessor properties are already installed in the initial map of the function object of the constructor FunctionTemplate. When the FunctionTemplate were instantiated the accessors of the instance templates from the whole inheritance chain were accumulated and added to the initial map. ObjectTemplate::SetSetAccessor() used to explicitly ensure that the ObjectTemplate has a constructor and therefore an initial map to add all accessors to. The new approach is to add all the accessors and data properties to the object exactly when the ObjectTemplate is instantiated. In order to keep it fast we now cache the object boilerplates in the Isolate::template_instantiations_cache (the former function_cache), so the object creation turns to be a deep copying of the boilerplate object. This CL also prohibits non-primitive properties in ObjectTemplate to avoid potential cross-context leaks. BUG=chromium:579009 LOG=Y Review URL: https://codereview.chromium.org/1642223003 Cr-Commit-Position: refs/heads/master@{#33674}
-
jochen authored
BUG=chromium:577261 R=machenbach@chromium.org,yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/1652963002 Cr-Commit-Position: refs/heads/master@{#33673}
-
rmcilroy authored
Fixes issues with linux64_debug and arm64_sim bots. BUG=v8:4280,v8:4680 LOG=N TBR=machenbach@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1654953003 Cr-Commit-Position: refs/heads/master@{#33672}
-
vogelheim authored
(Trying to finish FastAccessorAssembler this week. This should make it easier to pick up the Blink side of this work later on.) BUG=chromium:508898 SOUNDTRACK=http://youtu.be/i1EG-MKy4so LOG=Y Review URL: https://codereview.chromium.org/1620293002 Cr-Commit-Position: refs/heads/master@{#33671}
-
ahaas authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1638283004 Cr-Commit-Position: refs/heads/master@{#33670}
-
mstarzinger authored
Now that the branch analysis result is no longer mutated by the graph builder, it can be made const again to preserve immutability. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1656933006 Cr-Commit-Position: refs/heads/master@{#33669}
-
mlippautz authored
BUG=chromium:524425 LOG=N Review URL: https://codereview.chromium.org/1653973003 Cr-Commit-Position: refs/heads/master@{#33668}
-
jkummerow authored
This is a follow-up fix to f4872f74 / r33616. Review URL: https://codereview.chromium.org/1659853002 Cr-Commit-Position: refs/heads/master@{#33667}
-
jacob.bramley authored
BUG= Review URL: https://codereview.chromium.org/1652023002 Cr-Commit-Position: refs/heads/master@{#33666}
-
rmcilroy authored
Also changes SKIP to FAIL to ensure we know when we have fixed a test. BUG=v8:4280,v8:4680 LOG=N CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_arm64_dbg,v8_linux_arm_dbg Review URL: https://codereview.chromium.org/1656803002 Cr-Commit-Position: refs/heads/master@{#33665}
-
danno authored
After this change, the functionality of the CodeStubAssembler should be sufficient to generate non-trivial stubs (e.g. the KeyedLoadIC) with control flow, variables and probing of internal meta data structures. Specifically this patch: * introduces a Label class, which allows stubs to construct graphs that don't have linear control graphs. * introduces a Variable class. Variables can be bound to Node* values at different points in a non-linear control flow graph. In conjunction with the Label machinery, the CodeStubAssembler ensures that Phi nodes are inserted at the "minimal" set of merge points. * adds Tail calling support to other Stubs and to any arbitrary code whose interface can be described by a CallInterfaceDescriptor. * provides new macros for accessing FixedArray elements that are optimized for use with Smi values. Review URL: https://codereview.chromium.org/1649723002 Cr-Commit-Position: refs/heads/master@{#33664}
-
rmcilroy authored
Review URL: https://codereview.chromium.org/1657683002 Cr-Commit-Position: refs/heads/master@{#33663}
-
mlippautz authored
This function is called for every live object in new space. We statically know which version to call, so let's use templates here and eliminite a branch at runtime. BUG=chromium:524425 LOG=N Review URL: https://codereview.chromium.org/1659823002 Cr-Commit-Position: refs/heads/master@{#33662}
-
yangguo authored
R=jochen@chromium.org, machenbach@chromium.org BUG=chromium:577261 LOG=N Review URL: https://codereview.chromium.org/1660463002 Cr-Commit-Position: refs/heads/master@{#33661}
-
bmeurer authored
There's no point in having %_IsFunction as inline intrinsic, as it is only used in non performance critical code, which is already full of runtime calls anyway, so %IsFunction will do the trick as well. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1658123002 Cr-Commit-Position: refs/heads/master@{#33660}
-
bmeurer authored
So far TurboFan only calls %TraceExit for the implicit return of undefined, when the function contains no explicit return statement. To make --trace useful, we also need to call %TraceExit for ReturnStatement. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1652013002 Cr-Commit-Position: refs/heads/master@{#33659}
-