- 26 Jul, 2016 35 commits
-
-
jkummerow authored
This ports 9c59539f / r37803 to KeyedLoadICs. Review-Url: https://codereview.chromium.org/2182103002 Cr-Commit-Position: refs/heads/master@{#38070}
-
cbruni authored
With this CL repeated values in elements are combined into a single printout with a range. BEFORE: - elements = { 0: <undefined> 1: <undefined> 2: <the_hole> } AFTER: - elements = { 0-1: <undefined> 2: <the_hole> } BUG= Review-Url: https://codereview.chromium.org/2169143003 Cr-Commit-Position: refs/heads/master@{#38069}
-
cbruni authored
The showed up unnaturally high while profiling DOM node creation. BUG=chromium:630217 Review-Url: https://codereview.chromium.org/2181323002 Cr-Commit-Position: refs/heads/master@{#38068}
-
mlippautz authored
BUG=chromium:631094 R=hpayer@chromium.org Review-Url: https://codereview.chromium.org/2181373002 Cr-Commit-Position: refs/heads/master@{#38067}
-
mlippautz authored
BUG=chromium:631094 Review-Url: https://codereview.chromium.org/2181333002 Cr-Commit-Position: refs/heads/master@{#38066}
-
martyn.capewell authored
Port 580fdf3c This also reverses the MachineType stored for partial unaligned access support such that it records the unsupported types, rather than supported types. BUG= Review-Url: https://codereview.chromium.org/2182493003 Cr-Commit-Position: refs/heads/master@{#38065}
-
mstarzinger authored
This adds tracking of the loop depth to the {BytecodeGenerator} in order to statically determine the loop nesting level for {OsrPoll} bytecodes. R=rmcilroy@chromium.org BUG=v8:4764 Review-Url: https://codereview.chromium.org/2176183002 Cr-Commit-Position: refs/heads/master@{#38064}
-
bjaideep authored
PPC/s390: Reland of [interpreter] Add explicit OSR polling bytecode. (patchset #1 id:1 of https://codereview.chromium.org/2184553003/ ) Port e1ad114e Original commit message: Reason for revert: Fix has been landed. Original issue's description: > Revert of [interpreter] Add explicit OSR polling bytecode. (patchset #6 id:100001 of https://codereview.chromium.org/2172233002/ ) > > Reason for revert: > Bunch of breakages. Maybe bad interaction with https://chromium.googlesource.com/v8/v8/+/e520e5da5550f0d1a975e87d6e66a2edecbb0c8e ? > > E.g.: > https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/11607 > > Original issue's description: > > [interpreter] Add explicit OSR polling bytecode. > > > > This adds an explicit {OsrPoll} bytecode into every loop header which > > triggers on-stack replacement when armed. Note that each such bytecode > > stores the static loop depths as an operand, and hence can be armed for > > specific loop depths. > > > > This also adds builtin code that triggers OSR compilation and switches > > execution over to optimized code in case compilation succeeds. In case > > compilation fails, the bytecode dispatch just continues unhindered. > > > > R=rmcilroy@chromium.org > > TEST=mjsunit/ignition/osr-from-bytecode > > BUG=v8:4764 > > > > Committed: https://crrev.com/a55beb68e0ededb3773affa294a71edc50621458 > > Cr-Commit-Position: refs/heads/master@{#38043} > > TBR=rmcilroy@chromium.org,mstarzinger@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4764 > > Committed: https://crrev.com/439aa2c6d708bfd95db725bd6f97c4c49bbc51fc > Cr-Commit-Position: refs/heads/master@{#38044} R=mstarzinger@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=v8:4764 LOG=N Review-Url: https://codereview.chromium.org/2182173002 Cr-Commit-Position: refs/heads/master@{#38063}
-
tandrii authored
Revert of [release] Change blink trybot name on v8 roll CLs (patchset #1 id:1 of https://codereview.chromium.org/2185513002/ ) Reason for revert: Revert, because blink tryserver bot rename is reverted. BUG=chromium:631448 Original issue's description: > [release] Change blink trybot name on v8 roll CLs > > BUG=chromium:590036 > NOTRY=true > > Committed: https://crrev.com/a5fae1039409864295b42a6f33cef85ca9396bda > Cr-Commit-Position: refs/heads/master@{#38041} TBR=hablich@chromium.org,machenbach@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:590036 Review-Url: https://codereview.chromium.org/2186593003 Cr-Commit-Position: refs/heads/master@{#38062}
-
cbruni authored
BUG= Review-Url: https://codereview.chromium.org/2178363003 Cr-Commit-Position: refs/heads/master@{#38061}
-
bjaideep authored
Increased array size in the testcase such that the chunk size is greater that the page size on PPC (4MB). This fixes the case when (start + Page::kPageSize) memory location is tested to be part of the chunk. The testcase was added as part of https://codereview.chromium.org/2110213003/ R=ulan@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= LOG=N Review-Url: https://codereview.chromium.org/2182113002 Cr-Commit-Position: refs/heads/master@{#38060}
-
ishell authored
This is a first step towards a perfect world where a call interface descriptor is the only place that defines calling convention for a particular code stub. Review-Url: https://codereview.chromium.org/2172223002 Cr-Commit-Position: refs/heads/master@{#38059}
-
rmcilroy authored
BUG=chromium:631158 Review-Url: https://codereview.chromium.org/2185623002 Cr-Commit-Position: refs/heads/master@{#38058}
-
hpayer authored
BUG=630969,630386 LOG=n Review-Url: https://codereview.chromium.org/2185613002 Cr-Commit-Position: refs/heads/master@{#38057}
-
mstarzinger authored
Reland of [interpreter] Add explicit OSR polling bytecode. (patchset #1 id:1 of https://codereview.chromium.org/2184553003/ ) Reason for revert: Fix has been landed. Original issue's description: > Revert of [interpreter] Add explicit OSR polling bytecode. (patchset #6 id:100001 of https://codereview.chromium.org/2172233002/ ) > > Reason for revert: > Bunch of breakages. Maybe bad interaction with https://chromium.googlesource.com/v8/v8/+/e520e5da5550f0d1a975e87d6e66a2edecbb0c8e ? > > E.g.: > https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/11607 > > Original issue's description: > > [interpreter] Add explicit OSR polling bytecode. > > > > This adds an explicit {OsrPoll} bytecode into every loop header which > > triggers on-stack replacement when armed. Note that each such bytecode > > stores the static loop depths as an operand, and hence can be armed for > > specific loop depths. > > > > This also adds builtin code that triggers OSR compilation and switches > > execution over to optimized code in case compilation succeeds. In case > > compilation fails, the bytecode dispatch just continues unhindered. > > > > R=rmcilroy@chromium.org > > TEST=mjsunit/ignition/osr-from-bytecode > > BUG=v8:4764 > > > > Committed: https://crrev.com/a55beb68e0ededb3773affa294a71edc50621458 > > Cr-Commit-Position: refs/heads/master@{#38043} > > TBR=rmcilroy@chromium.org,mstarzinger@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4764 > > Committed: https://crrev.com/439aa2c6d708bfd95db725bd6f97c4c49bbc51fc > Cr-Commit-Position: refs/heads/master@{#38044} TBR=rmcilroy@chromium.org,machenbach@chromium.org BUG=v8:4764 Review-Url: https://codereview.chromium.org/2184713002 Cr-Commit-Position: refs/heads/master@{#38056}
-
bmeurer authored
So far we didn't really recognize leaq, but only leal instructions in the x64 InstructionSelector. Now that we actually generate more of them, we should also pay more attention to those. R=epertoso@chromium.org Review-Url: https://codereview.chromium.org/2186573002 Cr-Commit-Position: refs/heads/master@{#38055}
-
machenbach authored
BUG=chromium:629806 Review-Url: https://codereview.chromium.org/2187433002 Cr-Commit-Position: refs/heads/master@{#38054}
-
jpp authored
The bug was caused when validating expressions X >> 0 for indexing into 8-bit heap views. If X was not an intish, the 'normal' validation path would fail. That, however, left the type of X registered in the AsmTyper::node_types_ member. Later, in the 'lenient' code path for 8-bit views, the entire X >> 0 expression would be validated, which would cause X to be validated again, at which point AsmTyper::SetTypeOf() would DCHECK because the supplied node already had a type associated with it. The fix was to simply FAIL() when X is not an intish. This is safe because if X is not an intish, then Validate(>>, !intish, FixNum) will also fail. BUG= https://bugs.chromium.org/p/chromium/issues/detail?id=628803 BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203 TEST= cctest/asmjs/test-asm-typer.cc LOG= N Review-Url: https://codereview.chromium.org/2181723002 Cr-Commit-Position: refs/heads/master@{#38053}
-
mstarzinger authored
R=rmcilroy@chromium.org TEST=cctest/test-bytecode-generator BUG=v8:4764 Review-Url: https://codereview.chromium.org/2184663002 Cr-Commit-Position: refs/heads/master@{#38052}
-
bmeurer authored
This allows us to fuse the address computation with the actual memory access operation on x64, which reduces the register pressure and the number of instructions. There's probably some follow up cleanup that has to happen to make sure the machine operator optimizations that are relevant to word64 computations are also available (similar to what is already available for word32). R=epertoso@chromium.org Review-Url: https://codereview.chromium.org/2183043002 Cr-Commit-Position: refs/heads/master@{#38051}
-
bmeurer authored
With the current approach we cannot eliminate context accesses in mid-size function contexts, so let's bump the limit a bit to make sure we can optimize those as well. R=jarin@chromium.org BUG=v8:4930,v8:5141 Review-Url: https://codereview.chromium.org/2182973004 Cr-Commit-Position: refs/heads/master@{#38050}
-
bmeurer authored
This works around the problem that the lowering for JSStackCheck doesn't play well with effect chain based state tracking, because it doesn't report the correct changes (we will address this with a better handling of stack checks soon). It also allows us to run the EarlyOptimizationPhase concurrently, which doesn't need to access the heap or generate code stubs. R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2183033002 Cr-Commit-Position: refs/heads/master@{#38049}
-
machenbach authored
BUG=chromium:474921 Review-Url: https://codereview.chromium.org/2182933002 Cr-Commit-Position: refs/heads/master@{#38048}
-
ishell authored
BUG=chromium:625894 Review-Url: https://codereview.chromium.org/2181303002 Cr-Commit-Position: refs/heads/master@{#38047}
-
yangguo authored
This feature has not been used in the past few years and most likely does not even work anymore. R=ishell@chromium.org Review-Url: https://codereview.chromium.org/2186533002 Cr-Commit-Position: refs/heads/master@{#38046}
-
bgeron authored
BUG= R=danno Review-Url: https://codereview.chromium.org/2171543004 Cr-Commit-Position: refs/heads/master@{#38045}
-
machenbach authored
Revert of [interpreter] Add explicit OSR polling bytecode. (patchset #6 id:100001 of https://codereview.chromium.org/2172233002/ ) Reason for revert: Bunch of breakages. Maybe bad interaction with https://chromium.googlesource.com/v8/v8/+/e520e5da5550f0d1a975e87d6e66a2edecbb0c8e ? E.g.: https://build.chromium.org/p/client.v8/builders/V8%20Linux64/builds/11607 Original issue's description: > [interpreter] Add explicit OSR polling bytecode. > > This adds an explicit {OsrPoll} bytecode into every loop header which > triggers on-stack replacement when armed. Note that each such bytecode > stores the static loop depths as an operand, and hence can be armed for > specific loop depths. > > This also adds builtin code that triggers OSR compilation and switches > execution over to optimized code in case compilation succeeds. In case > compilation fails, the bytecode dispatch just continues unhindered. > > R=rmcilroy@chromium.org > TEST=mjsunit/ignition/osr-from-bytecode > BUG=v8:4764 > > Committed: https://crrev.com/a55beb68e0ededb3773affa294a71edc50621458 > Cr-Commit-Position: refs/heads/master@{#38043} TBR=rmcilroy@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4764 Review-Url: https://codereview.chromium.org/2184553003 Cr-Commit-Position: refs/heads/master@{#38044}
-
mstarzinger authored
This adds an explicit {OsrPoll} bytecode into every loop header which triggers on-stack replacement when armed. Note that each such bytecode stores the static loop depths as an operand, and hence can be armed for specific loop depths. This also adds builtin code that triggers OSR compilation and switches execution over to optimized code in case compilation succeeds. In case compilation fails, the bytecode dispatch just continues unhindered. R=rmcilroy@chromium.org TEST=mjsunit/ignition/osr-from-bytecode BUG=v8:4764 Review-Url: https://codereview.chromium.org/2172233002 Cr-Commit-Position: refs/heads/master@{#38043}
-
yangguo authored
Doing so in a -pie build would make the snapshot non-deterministic. R=bmeurer@chromium.org BUG=v8:5233 Review-Url: https://codereview.chromium.org/2178093003 Cr-Commit-Position: refs/heads/master@{#38042}
-
machenbach authored
BUG=chromium:590036 NOTRY=true Review-Url: https://codereview.chromium.org/2185513002 Cr-Commit-Position: refs/heads/master@{#38041}
-
mstarzinger authored
This flag is aiming at shipping the ability to generate optimized code directly from bytecode (without re-parsing source code). All features needed to ship such a configuration will be staged behind this flag. R=hablich@chromium.org,rmcilroy@chromium.org Review-Url: https://codereview.chromium.org/2174333002 Cr-Commit-Position: refs/heads/master@{#38040}
-
ivica.bogosavljevic authored
Fix failure in mjsunit/wasm/embenchen/box2d on 32-bit architectures that do not support unaligned access. This test fails because WasmGraphBuilder::BuildCFuncInstruction allocates space for doubles using StackSlot turbofan operator, but this space is not guaranteed to be 8 bytes aligned if SP itself is not 8 bytes aligned (which is the case on 32-bit architectures). BUG=mjsunit/wasm/embenchen/box2d Review-Url: https://codereview.chromium.org/2177863002 Cr-Commit-Position: refs/heads/master@{#38039}
-
bmeurer authored
When we eliminate nodes during truncation analysis that have no value uses, we must make sure that we do not eliminate speculative number operations that would have side effects depending on the inputs, i.e. for example a SpeculativeNumberMultiply(x,y) does ToNumber(x) and ToNumber(y) first, so if either x or y could throw an exception during ToNumber conversion, we must not eliminate the multiplication, even if it has no value uses (some later pass may kill the actual machine multiplication, but the checks on the inputs have to remain still). So we check whether both x and y are PlainPrimitive, i.e. neither Receiver nor Symbol, which could raise exceptions for ToNumber, and only in that case we propagate the "unusedness" of the node to its inputs. This also uncovered a bug with the type of Dead, which must be None, as this represents an impossible value, so we had to fix that too. Also the dead code removal will not work correctly for constants (i.e. pure nodes with no value inputs), as those might be cached and hence we might resurrect them for an unrelated node lowering during SimplifiedLowering and only later kill the actual node (replacing its uses with Dead), which would then also replace the new use with Dead. So that was fixed as well. This shouldn't change anything for the result, as unused constants automagically disappear from the graph later on anyways. R=yangguo@chromium.org BUG=chromium:631318 Review-Url: https://codereview.chromium.org/2182003002 Cr-Commit-Position: refs/heads/master@{#38038}
-
benwells authored
Revert of MIPS: Fix '[turbofan] Prevent storing signalling NaNs into holey double arrays.' (patchset #2 id:20001 of https://codereview.chromium.org/2171303002/ ) Reason for revert: This bug has an error in the toolchain.gypi file, the conditions clause is repeated. This has broken the DrMemory builder - see first failing chromium build https://build.chromium.org/p/chromium.memory.fyi/builders/Chromium%20Windows%20Builder%20%28DrMemory%29/builds/17857 which included a v8 roll. For reference the errors are: gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\src\d8.gyp gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\src\v8.gyp gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\samples\samples.gyp Original issue's description: > MIPS: Fix '[turbofan] Prevent storing signalling NaNs into holey double arrays.' > > Port 6470ddad > > On MIPS different signaling NaN values must be used for hardware and simulator targets, even at snapshot generation when always simulator is used. > > Original commit message: > This introduces SilenceNaN operator, which makes sure that we only > store quiet NaNs into holey arrays. We omit the NaN silencing code > at instruction selection time if the input is an operation that > cannot possibly produce signalling NaNs. > > BUG= > > Committed: https://crrev.com/52f2ceb052f63324050c7a098e4398f510b54763 > Cr-Commit-Position: refs/heads/master@{#38030} TBR=jarin@chromium.org,machenbach@google.com,akos.palfi@mattakis.com,ivica.bogosavljevic@imgtec.com,marija.antic@imgtec.com,ilija.pavlovic.imgtec@gmail.com,akos.palfi@imgtec.com,machenbach@chromium.org,balazs.kilvady@imgtec.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= TBR=machenbach Review-Url: https://codereview.chromium.org/2184573002 Cr-Commit-Position: refs/heads/master@{#38037}
-
v8-autoroll authored
Rolling v8/build to cce24bcaab6481f479f4baf00b5ea36d78268bcd Rolling v8/tools/mb to 11aa1bbe1b4fbae3694d14eb59b4eb98550bcbee TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2181913002 Cr-Commit-Position: refs/heads/master@{#38036}
-
- 25 Jul, 2016 5 commits
-
-
bakkot authored
This slightly simplifies scope handling. It also makes it possible to implement some potential future changes to classes purely in the parser by adding additional code to the DoExpression. This is a portion of https://codereview.chromium.org/2142333002/, which probably isn't going through in full. Review-Url: https://codereview.chromium.org/2176653003 Cr-Commit-Position: refs/heads/master@{#38035}
-
yangguo authored
R=bmeurer@chromium.org BUG=v8:5197 Review-Url: https://codereview.chromium.org/2178943002 Cr-Commit-Position: refs/heads/master@{#38034}
-
machenbach authored
This prepares for switching arm64 sim to gn. BUG=chromium:474921 Review-Url: https://codereview.chromium.org/2174363002 Cr-Commit-Position: refs/heads/master@{#38033}
-
mlippautz authored
Reduces the dark matter of reported fixed arrays to < 5%. BUG=chromium:631094 R=ulan@chromium.org Review-Url: https://codereview.chromium.org/2181623002 Cr-Commit-Position: refs/heads/master@{#38032}
-
jarin authored
Review-Url: https://codereview.chromium.org/2174313002 Cr-Commit-Position: refs/heads/master@{#38031}
-