- 25 Nov, 2015 40 commits
-
-
jochen authored
Moving Blink from hidden values to private symbols almost doubled the rate of API calls, as the private symbols API increases the call-depth scope while the hidden values one didn't. I manually checked that this fixes the regression on the long running gmail benchmark but doesn't add new memory reducer GCs on the infinite scrolling benchmark BUG=chromium:561325 R=ulan@chromium.org LOG=n Review URL: https://codereview.chromium.org/1472193003 Cr-Commit-Position: refs/heads/master@{#32279}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#32278}
-
jochen authored
We always want to have an Isolate, so just use an extra ctor arg BUG=2487 R=yangguo@chromium.org,mstarzinger@chromium.org LOG=n Review URL: https://codereview.chromium.org/1476763002 Cr-Commit-Position: refs/heads/master@{#32277}
-
machenbach authored
BUG=v8:4573 LOG=n TBR=mstarzinger@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1465193006 Cr-Commit-Position: refs/heads/master@{#32276}
-
Benedikt Meurer authored
TBR=machenbach@chromium.org NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1475843003 . Cr-Commit-Position: refs/heads/master@{#32275}
-
machenbach authored
Warn if unknown benchmark configurations are triggered. NOTRY=true Review URL: https://codereview.chromium.org/1479483003 Cr-Commit-Position: refs/heads/master@{#32274}
-
bmeurer authored
ES6 section 12.2.8.1 states that flags for regular expression literals must be checked during parsing and invalid flags are early errors. This change adapts the Scanner and (Pre)Parser to act according to the spec. This is also a prerequisite to unify the handling of literal creation (for Objects, Arrays, Regexps, and at some point Classes). R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1472323002 Cr-Commit-Position: refs/heads/master@{#32273}
-
ulan authored
BUG=chromium:554488 LOG=NO Review URL: https://codereview.chromium.org/1470773003 Cr-Commit-Position: refs/heads/master@{#32272}
-
machenbach authored
This loads all test suites and status files to catch subtle syntax errors. It also checks basic status file integrity and common mistakes. NOTRY=true Review URL: https://codereview.chromium.org/1475663002 Cr-Commit-Position: refs/heads/master@{#32271}
-
machenbach authored
Started failing after https://codereview.chromium.org/1469313002 NOTRY=true TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1476603003 Cr-Commit-Position: refs/heads/master@{#32270}
-
titzer authored
Turns out we've been putting garbage into code->constant_pool_offset for quite some time. R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/1478713002 Cr-Commit-Position: refs/heads/master@{#32269}
-
ishell authored
BUG=v8:4572 LOG=Y Review URL: https://codereview.chromium.org/1481493003 Cr-Commit-Position: refs/heads/master@{#32268}
-
machenbach authored
BUG= Review URL: https://codereview.chromium.org/1466303005 Cr-Commit-Position: refs/heads/master@{#32267}
-
jarin authored
Review URL: https://codereview.chromium.org/1479503002 Cr-Commit-Position: refs/heads/master@{#32266}
-
verwaest authored
BUG=v8:4518 LOG=n Review URL: https://codereview.chromium.org/1472293002 Cr-Commit-Position: refs/heads/master@{#32265}
-
mstarzinger authored
This passes the new.target value in a register instead of through a side-channel via the construct stub. The interpreter entry trampoline stores this value in a bytecode register so that it can be accessed directly by the interpreter. The size of the interpreter stack frame hence grows by one slot. R=oth@chromium.org BUG=v8:4544 LOG=n Review URL: https://codereview.chromium.org/1469313002 Cr-Commit-Position: refs/heads/master@{#32264}
-
jochen authored
BUG=none R=vogelheim@chromium.org LOG=n Review URL: https://codereview.chromium.org/1473783003 Cr-Commit-Position: refs/heads/master@{#32263}
-
ahaas authored
The Float32RoundUp operator rounds float32 numbers towards infinity. The operator is currently implemented on x64, ia32, arm, and arm64. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1474963002 Cr-Commit-Position: refs/heads/master@{#32262}
-
ahaas authored
I implemented the optional Float32RoundDown operator on x64, ia32, arm, and arm64. For arm I also had to adjust the simulator. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1471913006 Cr-Commit-Position: refs/heads/master@{#32261}
-
machenbach authored
Revert of Reland "[Interpreter] Add CreateClosure to BytecodeGraphBuilder." (patchset #1 id:1 of https://codereview.chromium.org/1475793003/ ) Reason for revert: [Sheriff] Breaks cfi: https://build.chromium.org/p/client.v8/builders/V8%20Linux64%20-%20cfi/builds/1209 Original issue's description: > Reland "[Interpreter] Add CreateClosure to BytecodeGraphBuilder." > > Original issue's description: > > [Interpreter] Add CreateClosure to BytecodeGraphBuilder. > > > > Adds code and tests to support CreateClosure bytecode when building > > graphs. > > > > Committed: https://crrev.com/4cceb11b0929abcbc82bf0854554a9b66003335d > > Cr-Commit-Position: refs/heads/master@{#32224} > > BUG=v8:4280 > LOG=N > > Committed: https://crrev.com/6a8db006e1f0a08a43446b62765bba39fdc6af10 > Cr-Commit-Position: refs/heads/master@{#32257} TBR=bmeurer@chromium.org,oth@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4280 Review URL: https://codereview.chromium.org/1469303006 Cr-Commit-Position: refs/heads/master@{#32260}
-
yangguo authored
Revert of Removed support deprecated (//@|/*@) source(URL|MappingURL)= (patchset #1 id:1 of https://codereview.chromium.org/1474543005/ ) Reason for revert: Failing layout tests: inspector/tracing/timeline-event-causes.html virtual/syncpaint/inspector/tracing/timeline-event-causes.html inspector/animation/animation-timeline-fill.html virtual/threaded/inspector/tracing/timeline-event-causes.html inspector/tracing/timeline-script-id.html inspector/sources/debugger-ui/source-url-comment.html inspector/console/console-log-linkify-stack-in-errors.html virtual/syncpaint/inspector/tracing/timeline-script-id.html virtual/threaded/inspector/tracing/timeline-script-id.html Original issue's description: > Removed support deprecated (//@|/*@) source(URL|MappingURL)= > > LOG=Y > BUG=chromium:558998 > R=yangguo@chromium.org > > Committed: https://crrev.com/c1e5f005d79c436d90f474f8bc6448c4555a619f > Cr-Commit-Position: refs/heads/master@{#32249} TBR=machenbach@chromium.org,kozyatinskiy@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:558998 Review URL: https://codereview.chromium.org/1481513002 Cr-Commit-Position: refs/heads/master@{#32259}
-
jarin authored
Review URL: https://codereview.chromium.org/1480433003 Cr-Commit-Position: refs/heads/master@{#32258}
-
oth authored
Original issue's description: > [Interpreter] Add CreateClosure to BytecodeGraphBuilder. > > Adds code and tests to support CreateClosure bytecode when building > graphs. > > Committed: https://crrev.com/4cceb11b0929abcbc82bf0854554a9b66003335d > Cr-Commit-Position: refs/heads/master@{#32224} BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1475793003 Cr-Commit-Position: refs/heads/master@{#32257}
-
titzer authored
This is "more correct" than WASM_FUNCTION falling through the switch over code types and using the marker on the stack which contains a bogus value. In the long run, there will be two kinds of WASM-related frames: frames that cross the JS/WASM border, and internal WASM_FUNCTION frames. This will necessitate a new StackFrame::Type, since the first kind of frame must treat its parameters as tagged values and the second definitely should not. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1470353002 Cr-Commit-Position: refs/heads/master@{#32256}
-
bmeurer authored
This is the initial step towards refactoring the regexp literation creation code to make it less obscure and more similar to the mechanism we use to create array and object literals. There's now a new runtime entry %CreateRegExpLiteral with the same interface as the entries for array and object literals, except that we still pass the flags as string. Instead of embedding the hand written native to clone JSRegExp instances we now have a FastCloneRegExpStub, which behaves similar to the other FastCloneShallowArrayStub and FastCloneShallowObjectStub that we already had. R=mlippautz@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/1475823003 Cr-Commit-Position: refs/heads/master@{#32255}
-
yangguo authored
Credits go to Erik Corry. Taken from: https://github.com/dart-lang/fletch/blob/master/src/shared/random_test.cc R=jkummerow@chromium.org BUG=v8:4566 LOG=N Committed: https://crrev.com/1a90af55d1e9d7d84e813dc367d475457c7df1ff Cr-Commit-Position: refs/heads/master@{#32211} Committed: https://crrev.com/3d84f05cd77091ea8dde7821973f13f53dbaa730 Cr-Commit-Position: refs/heads/master@{#32238} Committed: https://crrev.com/eeee7ab050013782704b5f89e49d06a30b3455c4 Cr-Commit-Position: refs/heads/master@{#32246} Review URL: https://codereview.chromium.org/1467133006 Cr-Commit-Position: refs/heads/master@{#32254}
-
zhengxing.li authored
port 51669873 (r32234) original commit message: Some highlights of this CL: * Refactor the mutable state out of Frame into FrameAccessState, which is maintained and updated during code generation to record whether sp- or fp-based frame access is currently active and how deep the stack on top of the frame is. * The operand resultion in linkage.cc now uses FrameAccessState to determine how to generate frame-accessing operands. * Update all platforms to accurately track additionally pushed stack slots (e.g. arguments for calls) in the FrameAccessState. * Add a flag, --turbo_sp_frame_access, which forces all frame access to be sp-based whenever possible. This will likely never be used in production, but for testing it's useful in verifying that the stack-tracking of each platform maintained in the FrameAccessState is correct. * Use sp-based frame access for gap resolving before tail calls. This will allow for slightly more efficient restoration of the frame pointer in the tail call in a later CL. * Remove most ad hoc groping into CallDescriptors to determine if a frame is needed, instead consistently use predicates like needs_frame(), IsCFunctionCall() and IsJSFunctionCall(). BUG= Review URL: https://codereview.chromium.org/1479483002 Cr-Commit-Position: refs/heads/master@{#32253}
-
zhengxing.li authored
port 8e28e851 (r32223) original commit message: BUG= Review URL: https://codereview.chromium.org/1475933002 Cr-Commit-Position: refs/heads/master@{#32252}
-
machenbach authored
BUG=v8:4572 LOG=n NOTRY=true TBR=rossberg@chromium.org, adamk@chromium.org Review URL: https://codereview.chromium.org/1475943002 Cr-Commit-Position: refs/heads/master@{#32251}
-
machenbach authored
Test failures after https://codereview.chromium.org/1478533002 TBR=rossberg@chromium.org, littledan@chromium.org, rmcilroy@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1470173004 Cr-Commit-Position: refs/heads/master@{#32250}
-
kozyatinskiy authored
LOG=Y BUG=chromium:558998 R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1474543005 Cr-Commit-Position: refs/heads/master@{#32249}
-
jarin authored
This change replaces the bitwise masking of uses by storing the most general truncation for all uses. Review URL: https://codereview.chromium.org/1464763003 Cr-Commit-Position: refs/heads/master@{#32248}
-
yangguo authored
Revert of Add test to check PRNG quality. (patchset #5 id:80001 of https://codereview.chromium.org/1467133006/ ) Reason for revert: failure here https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosse4/builds/6842/steps/Check/logs/RandomBitCorrelations12 Original issue's description: > Add test to check PRNG quality. > > Credits go to Erik Corry. Taken from: > https://github.com/dart-lang/fletch/blob/master/src/shared/random_test.cc > > R=jkummerow@chromium.org > BUG=v8:4566 > LOG=N > > Committed: https://crrev.com/1a90af55d1e9d7d84e813dc367d475457c7df1ff > Cr-Commit-Position: refs/heads/master@{#32211} > > Committed: https://crrev.com/3d84f05cd77091ea8dde7821973f13f53dbaa730 > Cr-Commit-Position: refs/heads/master@{#32238} > > Committed: https://crrev.com/eeee7ab050013782704b5f89e49d06a30b3455c4 > Cr-Commit-Position: refs/heads/master@{#32246} TBR=jkummerow@chromium.org,erikcorry@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4566 Review URL: https://codereview.chromium.org/1472833004 Cr-Commit-Position: refs/heads/master@{#32247}
-
yangguo authored
Credits go to Erik Corry. Taken from: https://github.com/dart-lang/fletch/blob/master/src/shared/random_test.cc R=jkummerow@chromium.org BUG=v8:4566 LOG=N Committed: https://crrev.com/1a90af55d1e9d7d84e813dc367d475457c7df1ff Cr-Commit-Position: refs/heads/master@{#32211} Committed: https://crrev.com/3d84f05cd77091ea8dde7821973f13f53dbaa730 Cr-Commit-Position: refs/heads/master@{#32238} Review URL: https://codereview.chromium.org/1467133006 Cr-Commit-Position: refs/heads/master@{#32246}
-
zhengxing.li authored
X87: Reshuffle registers in JSConstructStub to avoid trashing costructor and new.target on fast path (so we don't need to push/pop them). port 0ef5ad5a (r32219) original commit message: This CL also fixed register usages in MacroAssembler::Allocate() broken by 2fc2cb99 (r32144). BUG= Review URL: https://codereview.chromium.org/1473763003 Cr-Commit-Position: refs/heads/master@{#32245}
-
zhengxing.li authored
port 1b1db135 (r32220) original commit message: Change the runtime entries and their associated code stubs for object and array literal creation to take the closure instead of the raw literals pointer. This is way easier to deal with (and cleaner) in TurboFan. BUG= Review URL: https://codereview.chromium.org/1472273002 Cr-Commit-Position: refs/heads/master@{#32244}
-
yangguo authored
Revert of Add test to check PRNG quality. (patchset #4 id:60001 of https://codereview.chromium.org/1467133006/ ) Reason for revert: still timing out Original issue's description: > Add test to check PRNG quality. > > Credits go to Erik Corry. Taken from: > https://github.com/dart-lang/fletch/blob/master/src/shared/random_test.cc > > R=jkummerow@chromium.org > BUG=v8:4566 > LOG=N > > Committed: https://crrev.com/1a90af55d1e9d7d84e813dc367d475457c7df1ff > Cr-Commit-Position: refs/heads/master@{#32211} > > Committed: https://crrev.com/3d84f05cd77091ea8dde7821973f13f53dbaa730 > Cr-Commit-Position: refs/heads/master@{#32238} TBR=jkummerow@chromium.org,erikcorry@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4566 Review URL: https://codereview.chromium.org/1480533002 Cr-Commit-Position: refs/heads/master@{#32243}
-
zhengxing.li authored
port 0fb2edd1 (r32217) original commit message: We still share the code globally, but if we wanted, it would be easy to make it per isolate now BUG= Review URL: https://codereview.chromium.org/1477683002 Cr-Commit-Position: refs/heads/master@{#32242}
-
zhengxing.li authored
port 9846f386 (r32205) original commit message: The literal index is being pushed onto the stack while evaluating the non-constant subexpressions, but never used in fullcodegen (and hence not used in the optimizing compilers). BUG= Review URL: https://codereview.chromium.org/1477673002 Cr-Commit-Position: refs/heads/master@{#32241}
-
zhengxing.li authored
port 7c45b005 (r32203) original commit message: This passes the new.target value in a register instead of through a side-channel via the construct stub. Note that only TurboFan code uses the register value so far, but unoptimized code will be switched soon. BUG= Review URL: https://codereview.chromium.org/1477663002 Cr-Commit-Position: refs/heads/master@{#32240}
-