- 15 Mar, 2016 14 commits
-
-
ahaas authored
Word64Popcnt is lowered to Word32Popcnt(low-word) + Word32Popcnt(high_word). Since the optional Word64Popcnt operator does not exist on 32 bit platforms, I introduced a new operator "Word64PopcntPlaceholder" which is generated in the WasmCompiler and then lowered in the Int64Lowering. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1803453003 Cr-Commit-Position: refs/heads/master@{#34777}
-
verwaest authored
BUG=chromium:594103 LOG=n Review URL: https://codereview.chromium.org/1801013003 Cr-Commit-Position: refs/heads/master@{#34776}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1794233006 Cr-Commit-Position: refs/heads/master@{#34775}
-
machenbach authored
BUG=v8:4280 LOG=n TBR=rmcilroy@chromium.org, mstarzinger@chromium.org NOTRY=true NOPRESUBMIT=true Review URL: https://codereview.chromium.org/1804013002 Cr-Commit-Position: refs/heads/master@{#34774}
-
machenbach authored
BUG=v8:4280 LOG=n TBR=rmcilroy@chromium.org, mstarzinger@chromium.org NOTRY=true NOPRESUBMIT=true Review URL: https://codereview.chromium.org/1797203002 Cr-Commit-Position: refs/heads/master@{#34773}
-
machenbach authored
BUG=v8:4280 LOG=n TBR=rmcilroy@chromium.org, mstarzinger@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1799423004 Cr-Commit-Position: refs/heads/master@{#34772}
-
yangguo authored
We may not emit bytecode for the evaluation of the to-be-returned expression. In that case we cannot set two return positions for a return statement (one before and one after the expression evaluation). This sets the interpreter apart from full-codegen. Make sure that we always have the second of the two return positions. Note that we end up with separate test cases for ignition and FCG. R=rmcilroy@chromium.org, vogelheim@chromium.org BUG=v8:4690 LOG=N Review URL: https://codereview.chromium.org/1801473003 Cr-Commit-Position: refs/heads/master@{#34771}
-
Michael Achenbach authored
Cr-Commit-Position: refs/heads/master@{#34770}
-
ahaas authored
Implementation of https://codereview.chromium.org/1768233002 on arm. R=titzer@chromium.org, v8-arm-ports@googlegroups.com Review URL: https://codereview.chromium.org/1778893004 Cr-Commit-Position: refs/heads/master@{#34769}
-
ahaas authored
On 32-bit systems these instructions are compiled to calls to C functions. The TF node for the function call is already generated in the wasm compiler, the lowering of the I64 parameters is done in the Int64Lowering. We use the return value of the C function to determine whether the calculation should trap or not. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1804513002 Cr-Commit-Position: refs/heads/master@{#34768}
-
ahaas authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/1798993002 Cr-Commit-Position: refs/heads/master@{#34767}
-
echristo authored
The warning notes that we'd want a 'w' register here because the size of the operand is 32-bit, however, the instruction only takes an 'x' register and so force that using the 'x' modifier on the instruction. BUG= Review URL: https://codereview.chromium.org/1799263002 Cr-Commit-Position: refs/heads/master@{#34766}
-
v8-autoroll authored
Rolling v8/tools/clang to c642451e861b9c568967fb8e4d9d3fd081699162 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review URL: https://codereview.chromium.org/1803953002 Cr-Commit-Position: refs/heads/master@{#34765}
-
adamk authored
Modules already have a separate entrypoint into the engine (at the moment, this is v8::ScriptCompiler::CompileModule, though that will change to something like ParseModule). This meant that requiring a commandline flag simply added an extra complexity burden on embedders. By removing the v8 flag, this lets embedders use their own flagging mechanism (such as d8's "--module", or Blink's RuntimeEnabledFeatures) to control whether modules are to be used. Also remove old modules tests that were being skipped (since they test very old, pre-ES2015 modules syntax). R=littledan@chromium.org BUG=v8:1569, chromium:594639 LOG=y Review URL: https://codereview.chromium.org/1804693002 Cr-Commit-Position: refs/heads/master@{#34764}
-
- 14 Mar, 2016 26 commits
-
-
littledan authored
test262 "negative" test expectations list which exception is thrown. The ES2017 draft specification is very specific about which exception class is thrown from which path, and V8 works hard to be correct with respect to that spec. Previously, the test262 test runner would accept any nonzero status code, such as from a crash, or a FAIL printed out, for a negative test. This patch makes negative tests check for the right answer using a quick-and-dirty parsing of the exception printing from d8 to find the exception class. It invokes d8 in a way to get a status code of 0 from thrown exceptions so that 'negative' tests aren't actually implemented by negating the output. Amazingly, this didn't catch any test262 failures, but I verified the extra checking interactively by changing a negative test to expect a different type and saw it fail. BUG=v8:4803 R=machenbach LOG=Y Review URL: https://codereview.chromium.org/1766503002 Cr-Commit-Position: refs/heads/master@{#34763}
-
hpayer authored
BUG=chromium:561449 LOG=n Review URL: https://codereview.chromium.org/1800733002 Cr-Commit-Position: refs/heads/master@{#34762}
-
yangguo authored
R=vogelheim@chromium.org BUG=chromium:594551 LOG=N Review URL: https://codereview.chromium.org/1804433004 Cr-Commit-Position: refs/heads/master@{#34761}
-
hpayer authored
BUG=chromium:561449 LOG=n Review URL: https://codereview.chromium.org/1794383004 Cr-Commit-Position: refs/heads/master@{#34760}
-
mstarzinger authored
This fixes the label binding mechanism that forwards a label to another already bound target label. For source labels that are not being reached by a jump, we should not try to patch jump sites. We still bind the source label to reflect the target position though, just in case this binding method will be used for backwards branches in the future. R=rmcilroy@chromium.org TEST=webkit/fast/js/parser-syntax-check Review URL: https://codereview.chromium.org/1804643002 Cr-Commit-Position: refs/heads/master@{#34759}
-
ofrobots authored
HandleApiCall is one of the most heavily used builtins on Node.js. Replace some old CHECKs with DCHECKs. R=ishell@chromium.org, jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/1804433005 Cr-Commit-Position: refs/heads/master@{#34758}
-
titzer authored
R=ahaas@chromium.org BUG= Review URL: https://codereview.chromium.org/1798863004 Cr-Commit-Position: refs/heads/master@{#34757}
-
bradnelson authored
The rules for handling foreign functions were interfering with handling of standard functions (such as fround). Adding more tests around abs() BUG= https://bugs.chromium.org/p/v8/issues/detail?id=4203 TEST=test-asm-validator,asm-wasm R=titzer@chromium.org,rossberg@chromium.org LOG=N Review URL: https://codereview.chromium.org/1794303002 Cr-Commit-Position: refs/heads/master@{#34756}
-
ahaas authored
The previous register allocation allowed invalid register aliasing in cases where in the TF graph the node was used for multiple inputs of the Word32PairShl node. Additionally I renamed PairLsl to LslPair in the code generation for consistency. R=titzer@chromium.org, v8-arm-ports@googlegroups.com Review URL: https://codereview.chromium.org/1776393004 Cr-Commit-Position: refs/heads/master@{#34755}
-
caitpotter88 authored
BUG=v8:4825 LOG=N R=jkummerow@chromium.org, cbruni@chromium.org Review URL: https://codereview.chromium.org/1778023004 Cr-Commit-Position: refs/heads/master@{#34754}
-
mstarzinger authored
This moves the last remaining JS file based tests out of the "preparser" suite. The tests in question all are expected to parse normally and not throw any exception. This also deprecates the ability of the test suite to run anything else outside Python templated tests. R=adamk@chromium.org TEST=preparser Review URL: https://codereview.chromium.org/1782173005 Cr-Commit-Position: refs/heads/master@{#34753}
-
oth authored
BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1798923002 Cr-Commit-Position: refs/heads/master@{#34752}
-
verwaest authored
This significantly speeds up flattening repeat strings (e.g., '.'.repeat(1000)). BUG= Review URL: https://codereview.chromium.org/1798073002 Cr-Commit-Position: refs/heads/master@{#34751}
-
mtrofin authored
BUG= Review URL: https://codereview.chromium.org/1799113003 Cr-Commit-Position: refs/heads/master@{#34750}
-
mstarzinger authored
This also runs the webkit test suite against Ignition. By now most of the tests pass, the failing ones have been blacklisted. R=machenbach@chromium.org TEST=webkit Review URL: https://codereview.chromium.org/1799603003 Cr-Commit-Position: refs/heads/master@{#34749}
-
Hannes Payer authored
BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/1790413004 . Cr-Commit-Position: refs/heads/master@{#34748}
-
ahaas authored
Int64Add is lowered to a new turbofan operator, Int32AddPair. The new operator takes 4 inputs an generates 2 outputs. The inputs are the low word of the left input, high word of the left input, the low word of the right input, and high word of the right input. The ouputs are the low and high word of the result of the addition. R=titzer@chromium.org, v8-arm-ports@googlegroups.com Review URL: https://codereview.chromium.org/1778493004 Cr-Commit-Position: refs/heads/master@{#34747}
-
martyn.capewell authored
Reduce the amount of code generated for OutOfLineLoadFloat* by computing sqrt(-1) rather than move the NaN as an immediate. Add support for single precision floating point immediate moves to enable this. BUG= Review URL: https://codereview.chromium.org/1758003003 Cr-Commit-Position: refs/heads/master@{#34746}
-
verwaest authored
This significantly speeds up String(array). BUG= Review URL: https://codereview.chromium.org/1775403008 Cr-Commit-Position: refs/heads/master@{#34745}
-
titzer authored
R=bradnelson@chromium.org,binji@chromium.org BUG= Review URL: https://codereview.chromium.org/1789683002 Cr-Commit-Position: refs/heads/master@{#34744}
-
hpayer authored
When black allocation is active, all objects allocated in old space are allocated black. Important: With that change, you cannot assume anymore that new objects are white right after their allocation. Currently, black allocation is enabled when incremental marking is started. This feature can be turned off via flag: --noblack-allocation BUG=chromium:561449 LOG=n Review URL: https://codereview.chromium.org/1420423009 Cr-Commit-Position: refs/heads/master@{#34743}
-
titzer authored
Move all tests that use i64 values into test-run-wasm-64.cc. Introduce macros that enable tests as they are implemented on 32 bit platforms. R=ahaas@chromium.org BUG= Review URL: https://codereview.chromium.org/1784343004 Cr-Commit-Position: refs/heads/master@{#34742}
-
ulan authored
Revert of Enable parallel pointer updates after evacuation. (patchset #1 id:1 of https://codereview.chromium.org/1784643010/ ) Reason for revert: Speculative revert to check if this CL is causing GC stress failures. Original issue's description: > Enable parallel pointer updates after evacuation. > > BUG=chromium:578883 > LOG=NO > > Committed: https://crrev.com/7217fcc0bf5b0f62947f92128ec76855d50e91da > Cr-Commit-Position: refs/heads/master@{#34712} TBR=mlippautz@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=chromium:578883 LOG=NO Review URL: https://codereview.chromium.org/1803573002 Cr-Commit-Position: refs/heads/master@{#34741}
-
hpayer authored
The OOM emergency GCs result in time outs on the stress GC bots. Doing a regular stress compaction GC is enough to stress the garbage collector. BUG= Review URL: https://codereview.chromium.org/1794943007 Cr-Commit-Position: refs/heads/master@{#34740}
-
yangguo authored
Revert of Allow Math.random to be called when creating a custom startup snapshot. (patchset #2 id:20001 of https://codereview.chromium.org/1780173002/ ) Reason for revert: Regresses performance on base64 benchmark. Original issue's description: > Allow Math.random to be called when creating a custom startup snapshot. > > R=jkummerow@chromium.org > BUG=v8:4810 > LOG=N > > Committed: https://crrev.com/6a7ec6a3bf779cdd41c66a768fd7a37195ed7b7f > Cr-Commit-Position: refs/heads/master@{#34705} TBR=jkummerow@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:4810, chromium:594484 LOG=N Review URL: https://codereview.chromium.org/1798863003 Cr-Commit-Position: refs/heads/master@{#34739}
-
ahaas authored
On 32-bit systems I64XConvertFXX instructions are compiled to calls to C functions. The TF node for the function call is already generated in the wasm compiler, the lowering of the I64 parameter is done in the Int64Lowering. We use the return value of the C function to determine whether the conversion should trap or not. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1775903002 Cr-Commit-Position: refs/heads/master@{#34738}
-