- 24 Mar, 2015 40 commits
-
-
dslomov authored
The root cause for the bug is that the positions assigned to desugared code was inconsistent with the source ranges of block scopes. Since the fact that the position is assigned causes the debugger to break at the parser-generated statement, the fix is to remove positions from those nodes that we do not want to break on. The CL also teaches Hydrogen to tolerate these cases. R=adamk@chromium.org,rossberg@chromium.org BUG=chromium:468661 LOG=Y Review URL: https://codereview.chromium.org/1032653002 Cr-Commit-Position: refs/heads/master@{#27424}
-
ishell authored
There are two reasons that could cause invalid slots appearance in SlotsBuffer: 1) If GC trims "tail" of an array for which it has already recorded a slots and then migrate another object to the "tail". 2) Tagged slot could become a double slot after migrating of an object to another map with "shifted" fields (for example as a result of generalizing immutable data property to a data field). This CL also adds useful machinery that helps triggering incremental write barriers. BUG=chromium:454297 LOG=Y Review URL: https://codereview.chromium.org/1010363005 Cr-Commit-Position: refs/heads/master@{#27423}
-
marja authored
Gather references to unbound variables where the reference (VariableProxy) is inside strong mode. Check them against the global object when a script is bound to a context (during compilation). This CL only checks unbound variables which are not inside lazy functions - TBD how do we solve that; alternatives: add developer mode which disables laziness / do the check whenever lazy functions are really compiled. BUG=v8:3956 LOG=N Review URL: https://codereview.chromium.org/1005063002 Cr-Commit-Position: refs/heads/master@{#27422}
-
erikcorry authored
R=hpayer@chromium.org BUG= Review URL: https://codereview.chromium.org/1029323003 Cr-Commit-Position: refs/heads/master@{#27421}
-
dcarney authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1034513002 Cr-Commit-Position: refs/heads/master@{#27420}
-
aandrey authored
BUG=chromium:450004 R=yangguo@chromium.org, kozyatinskiy@chromium.org LOG=N Review URL: https://codereview.chromium.org/1030673002 Cr-Commit-Position: refs/heads/master@{#27419}
-
titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1014093008 Cr-Commit-Position: refs/heads/master@{#27418}
-
mvstanton authored
Some code in type-info.cc could allow a cross context map to be visible to crankshaft. Tighten up this code to be certain that only a JSFunction, an AllocationSite or a Symbol can be returned. R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1026343004 Cr-Commit-Position: refs/heads/master@{#27417}
-
Michael Achenbach authored
R=machenbach@chromium.org BUG=408675 LOG=n NOTRY=true Review URL: https://codereview.chromium.org/1025553007 Cr-Commit-Position: refs/heads/master@{#27416}
-
svenpanne authored
These are needed (among other things) for a TurboFan-generated StringAddStub. Furthermore, they can be used to nuke the overly complex %_IsInstanceType intrisic, it's completely expressible in JavaScript now, but that will be done in a separate CL. Alpha-sorted things a bit on the way to ease navigation. Review URL: https://codereview.chromium.org/1010973010 Cr-Commit-Position: refs/heads/master@{#27415}
-
erikcorry authored
Also introduce --trace-fragmentation-verbose, and fix --always-compact. R=ulan@chromium.org BUG=v8:3976 LOG=y Review URL: https://codereview.chromium.org/1024823002 Cr-Commit-Position: refs/heads/master@{#27414}
-
titzer authored
R=jarin@chromium.org BUG= Review URL: https://codereview.chromium.org/1029843002 Cr-Commit-Position: refs/heads/master@{#27413}
-
ulan authored
This fixes flaky GC stress failure: > Fatal error in ../src/heap/mark-compact.cc, line 2127 > Check failed: retained_maps->Get(i)->IsWeakCell(). BUG= TEST=test-heap/RegressArrayListGC Review URL: https://codereview.chromium.org/1026113004 Cr-Commit-Position: refs/heads/master@{#27412}
-
mstarzinger authored
This removes the CompilationInfoWithZone class from the header file because it is more than a pure convenience class and shouldn't be used outside of the compiler at all. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1000353004 Cr-Commit-Position: refs/heads/master@{#27411}
-
titzer authored
R=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/1029383002 Cr-Commit-Position: refs/heads/master@{#27410}
-
titzer authored
R=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/1031803004 Cr-Commit-Position: refs/heads/master@{#27409}
-
dcarney authored
BUG= Review URL: https://codereview.chromium.org/1034473002 Cr-Commit-Position: refs/heads/master@{#27408}
-
dcarney authored
additionally, add a drive by fix to WeakCallbackInfo R=jochen@chromium.org, erikcorry@chromium.org BUG= Review URL: https://codereview.chromium.org/1026283004 Cr-Commit-Position: refs/heads/master@{#27407}
-
jarin authored
The test demonstrates a bad interaction between arguments object materialization, escape analysis and exception handling. We can return a wrong arguments object if we materialize arguments object (using f.arguments) and then throw around f's frame so that f does not clean up the materialized frame information (see the MaterializedObjectStore in deoptimizer.h/.cc). If we enter another function that has the same frame pointer and request an arguments object of (or lazily deoptimize) that function, we can get the materialized object of the original function. We should clean up the materialized object store when we unwind the stack. BUG=v8:3985 LOG=n Review URL: https://codereview.chromium.org/1032623003 Cr-Commit-Position: refs/heads/master@{#27406}
-
titzer authored
R=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/1036433002 Cr-Commit-Position: refs/heads/master@{#27405}
-
aperez authored
Remove Variable::IsValidReference(), and the Variable::is_valid_ref_ member: This was "false" only for "this", and for internal variables. For the first, VariableProxy::is_this() can be used for the check instead; and for internal variables, it is guaranteed they they will not be written to (because the V8 code does not do it, and they are not accessible from JavaScript). The "bool is_this" parameter of VariableProxy() constructor is changed to use Variable::Kind. This will allow to later on adding a parameter to create unresolved variables of any kind, which in turn will be used to make references to "this" initially unresolved, and use the existing variable resolution mechanics for "this". BUG=v8:2700 LOG=N Review URL: https://codereview.chromium.org/1024703004 Cr-Commit-Position: refs/heads/master@{#27404}
-
loislo authored
it is the last patch of https://codereview.chromium.org/1012633002 All that we need here is to push the collected info to the profiler and convert it into actionable information about deopt. On the Next: get the info accessible by embedder. BUG=chromium:452067 LOG=n TEST=DeoptAtFirstLevelInlinedSource, DeoptAtSecondLevelInlinedSource, DeoptUntrackedFunction Review URL: https://codereview.chromium.org/1013143003 Cr-Commit-Position: refs/heads/master@{#27403}
-
caitpotter88 authored
BUG=v8:3980 R=arv@chromium.org LOG=N Review URL: https://codereview.chromium.org/1027183002 Cr-Commit-Position: refs/heads/master@{#27402}
-
titzer authored
R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1032553006 Cr-Commit-Position: refs/heads/master@{#27401}
-
erikcorry authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1028393002 Cr-Commit-Position: refs/heads/master@{#27400}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1023103003 Cr-Commit-Position: refs/heads/master@{#27399}
-
machenbach authored
Revert of [V8] Removed SourceLocationRestrict (patchset #3 id:40001 of https://codereview.chromium.org/1022333004/) Reason for revert: [Sheriff] This seems to change layout test expectations of some tests, e.g.: http://build.chromium.org/p/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/2317 Expectation example: https://storage.googleapis.com/chromium-layout-test-archives/V8-Blink_Linux_64__dbg_/2317/layout-test-results/fast/events/window-onerror-11-pretty-diff.html Please add a needsmanualrebaseline expectation to the tests affected by this change on the blink side first before relanding. Original issue's description: > [V8] Removed SourceLocationRestrict > > This method uses in messages.js in GetSourceLine and GetPositionInLine. This methods uses in v8::Message API methods and there is no documentation about it. > Method looks obsolete. > One of the strange side effect is shown by attached issue. > > BUG=chromium:468781 > R=yangguo@chromium.org > LOG=Y > > Committed: https://crrev.com/b563ceac0f95551a128a1403cdbacc7aefcdabaf > Cr-Commit-Position: refs/heads/master@{#27374} TBR=yangguo@chromium.org,kozyatinskiy@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:468781 Review URL: https://codereview.chromium.org/1028413002 Cr-Commit-Position: refs/heads/master@{#27398}
-
chunyang.dai authored
port e18e3cd4 (r27305) original commit message: [stubs] Add missing interface descriptor for the CompareIC. BUG= Review URL: https://codereview.chromium.org/1024553007 Cr-Commit-Position: refs/heads/master@{#27397}
-
chunyang.dai authored
port 7c149afb (r27275). original commit message: Serializer: serialize internal references via object visitor. BUG= Review URL: https://codereview.chromium.org/1029793002 Cr-Commit-Position: refs/heads/master@{#27396}
-
chunyang.dai authored
port 16c8485a (r27269). original commit message: Replaces StoreGlobalCell / LoadGlobalCell with NamedField variants that use write barriers. BUG= Review URL: https://codereview.chromium.org/1013543004 Cr-Commit-Position: refs/heads/master@{#27395}
-
chunyang.dai authored
port 34a1a76d (r27235) original commit message: A hydrogen code stub is not the best approach because it builds a frame and doesn't have the technology to discard roots at tail call exits. Platform-specific stubs provide much better performance at this point. BUG= Review URL: https://codereview.chromium.org/1025073005 Cr-Commit-Position: refs/heads/master@{#27394}
-
jacob.bramley authored
This reverts r21101. r21101 appears to be at fault for the ARM64 failures here: https://codereview.chromium.org/1023103003 BUG= Review URL: https://codereview.chromium.org/1019393003 Cr-Commit-Position: refs/heads/master@{#27393}
-
michael_dawson authored
Port d21fd154 Original commit message: BUG=v8:3900 LOG=N R=mbrandy@us.ibm.com, svenpanne@chromium.org, danno@chromium.org, jkummerow@chromium.org, dslomov@chromium.org Review URL: https://codereview.chromium.org/999613004 Cr-Commit-Position: refs/heads/master@{#27392}
-
michael_dawson authored
Port 3aa206b8 Original commit message: R=dcarney@chromium.org, yangguo@chromium.org BUG=v8:3952 LOG=n R=mbrandy@us.ibm.com, svenpanne@chromium.org, danno@chromium.org, jkummerow@chromium.org Review URL: https://codereview.chromium.org/1028313003 Cr-Commit-Position: refs/heads/master@{#27391}
-
michael_dawson authored
commit bef80fcf Original commit message: BUG=v8:3977 R=dslomov@chromium.org, arv@chromium.org LOG=N R=mbrandy@us.ibm.com, svenpanne@chromium.org, danno@chromium.org, jkummerow@chromium.org Review URL: https://codereview.chromium.org/1018043008 Cr-Commit-Position: refs/heads/master@{#27390}
-
yangguo authored
Revert of [es6] Object.getPrototypeOf should work with values (patchset #3 id:40001 of https://codereview.chromium.org/1014813003/) Reason for revert: Layout test failures. Please update layout test expectations before landing this, in order to not block the roll. Original issue's description: > [es6] Object.getPrototypeOf should work with values > > The final spec for Object.getPrototypeOf calls ToObject on the > parameter, which means that it should only throw for null and > undefined. For other non object values the prototype of the wrapper > should be used. > > BUG=v8:3964 > LOG=N > R=adamk, rossberg@chromium.org > > Committed: https://crrev.com/ea463a916bbe5994b0d2d04e8075058b373b2e2c > Cr-Commit-Position: refs/heads/master@{#27354} TBR=adamk@chromium.org,rossberg@chromium.org,arv@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:3964 Review URL: https://codereview.chromium.org/1033623002 Cr-Commit-Position: refs/heads/master@{#27389}
-
michael_dawson authored
Port 7c149afb Original commit message: R=mbrandy@us.ibm.com, svenpanne@chromium.org, danno@chromium.org, jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/1029723002 Cr-Commit-Position: refs/heads/master@{#27388}
-
michael_dawson authored
Port dda2bd6f Original commit message: R=mbrandy@us.ibm.com, svenpanne@chromium.org, danno@chromium.org, jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/1028323002 Cr-Commit-Position: refs/heads/master@{#27387}
-
jochen authored
All users should use IdleNotificationDeadline() instead BUG=none R=hpayer@chromium.org LOG=y Review URL: https://codereview.chromium.org/1028163003 Cr-Commit-Position: refs/heads/master@{#27386}
-
chunyang.dai authored
port 15f82138 (r27263) original commit message: This relands commit 96f79568. This makes the Isolate::Throw logic not depend on a prediction of whether an exception is caught or uncaught. Such a prediction is inherently undecidable because a finally block can decide between consuming or re-throwing an exception depending on arbitray control flow. There still is a conservative prediction mechanism in place that components like the debugger or tracing can use for reporting. With this change we can get rid of the StackHandler::kind field, a pre-requisite to do table-based lookups of exception handlers. BUG= Review URL: https://codereview.chromium.org/1027413002 Cr-Commit-Position: refs/heads/master@{#27385}
-