- 26 Nov, 2015 18 commits
-
-
machenbach authored
Port https://codereview.chromium.org/1474923002 BUG=chromium:538614,chromium:559530,chromium:560589 LOG=n TBR=jochen@chromium.org, thakis@chromium.org, hans@chromium.org, Review URL: https://codereview.chromium.org/1478863005 Cr-Commit-Position: refs/heads/master@{#32326}
-
ahaas authored
The TruncateFloat32ToInt64 operator converts a float32 to an int64 using the round-to-zero rounding mode (truncate). If the input value is outside the int64 range, then the result depends on the architecture. I implemented the operator on x64, arm64, and mips64. R=titzer@chromium.org, jacob.bramley@arm.com Committed: https://crrev.com/1df1066c3c77464d2a68d7c8d501a5a0f3ad195a Cr-Commit-Position: refs/heads/master@{#32315} Review URL: https://codereview.chromium.org/1476063002 Cr-Commit-Position: refs/heads/master@{#32325}
-
ishell authored
BUG=v8:3101, v8:3330 LOG=N Review URL: https://codereview.chromium.org/1473323003 Cr-Commit-Position: refs/heads/master@{#32324}
-
hpayer authored
TBR=ulan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1464313009 Cr-Commit-Position: refs/heads/master@{#32323}
-
jochen authored
Just use the same workaround as on win32. Also replace fmod calls with modulo() for consistency BUG=none R=yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/1479773002 Cr-Commit-Position: refs/heads/master@{#32322}
-
ishell authored
BUG=v8:4531 LOG=Y Review URL: https://codereview.chromium.org/1479483004 Cr-Commit-Position: refs/heads/master@{#32321}
-
neis authored
LOG=N BUG=v8:1543 Review URL: https://codereview.chromium.org/1479543002 Cr-Commit-Position: refs/heads/master@{#32320}
-
jie.pan authored
Newer perf.data contains both MMAP and MMAP2 record type, but MMAP2 record type is not supported in previous ll_prof, MMAP2 record information will be lost. BUG=v8:4569 LOG=n Review URL: https://codereview.chromium.org/1469153004 Cr-Commit-Position: refs/heads/master@{#32319}
-
mstarzinger authored
R=yangguo@chromium.org BUG=v8:4544 LOG=n Review URL: https://codereview.chromium.org/1478683003 Cr-Commit-Position: refs/heads/master@{#32318}
-
ishell authored
This CL also removes JSTypedArray and JSDataView static visitor Ids because the visiting logic is the same as for ordinary JSObject. BUG=v8:4531 LOG=Y Review URL: https://codereview.chromium.org/1476753003 Cr-Commit-Position: refs/heads/master@{#32317}
-
ahaas authored
Revert of [turbofan] Implemented the TruncateFloat32ToInt64 TurboFan operator. (patchset #1 id:1 of https://codereview.chromium.org/1476063002/ ) Reason for revert: Unexpected error occurred. Original issue's description: > [turbofan] Implemented the TruncateFloat32ToInt64 TurboFan operator. > > The TruncateFloat32ToInt64 operator converts a float32 to an int64 using > the round-to-zero rounding mode (truncate). If the input value is > outside the int64 range, then the result depends on the architecture. I > implemented the operator on x64, arm64, and mips64. > > R=titzer@chromium.org, jacob.bramley@arm.com > > Committed: https://crrev.com/1df1066c3c77464d2a68d7c8d501a5a0f3ad195a > Cr-Commit-Position: refs/heads/master@{#32315} TBR=jacob.bramley@arm.com,titzer@chromium.org,v8-mips-ports@googlegroups.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1475343002 Cr-Commit-Position: refs/heads/master@{#32316}
-
ahaas authored
The TruncateFloat32ToInt64 operator converts a float32 to an int64 using the round-to-zero rounding mode (truncate). If the input value is outside the int64 range, then the result depends on the architecture. I implemented the operator on x64, arm64, and mips64. R=titzer@chromium.org, jacob.bramley@arm.com Review URL: https://codereview.chromium.org/1476063002 Cr-Commit-Position: refs/heads/master@{#32315}
-
bmeurer authored
Contributed by Fedor Indutny <fedor@indutny.com>. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1478933002 Cr-Commit-Position: refs/heads/master@{#32314}
-
bmeurer authored
Revert of binary-operator-reducer: reduce mul+div(shift) (patchset #11 id:200001 of https://codereview.chromium.org/1350223006/ ) Reason for revert: This is also unsound for the reasons outlined in https://codereview.chromium.org/1473073004/ Will help Fedor to implement a solution based on simplified operators. Original issue's description: > binary-operator-reducer: reduce mul+div(shift) > > Reduction Input: > > ChangeInt32ToFloat64=> TruncateFloat64ToInt32 > Float64Mul=> > ChangeInt32ToFloat64=> Float64Div=>TruncateFloat64ToInt32 > > Output: > > => TruncateInt64ToInt32 > Int64Mul > => Int64Shr => TruncateInt64ToInt32 > > Test code: > > function mul(a, b) { > var l = a & 0x3ffffff; > var h = b & 0x3ffffff; > var m = l * h; > > var rl = m & 0x3ffffff; > var rh = (m / 0x4000000) | 0; > > return rl | rh; > } > > mul(1, 2); > var a0 = mul(0x3ffffff, 0x3ffffff); > mul(0x0, 0x0); > %OptimizeFunctionOnNextCall(mul); > var a1 = mul(0x3ffffff, 0x3ffffff); > > print(a0 + ' == ' + a1); > > BUG= > R=mstarzinger@chromium.org > > Committed: https://crrev.com/461e5b49d022335a7fc4e9d172397a4bd48b93d4 > Cr-Commit-Position: refs/heads/master@{#31899} TBR=mstarzinger@chromium.org,danno@chromium.org,titzer@chromium.org,fedor@indutny.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1478923002 Cr-Commit-Position: refs/heads/master@{#32313}
-
bmeurer authored
Revert of [machine-operator-reducer] fix float truncation (patchset #8 id:140001 of https://codereview.chromium.org/1433353006/ ) Reason for revert: This is also unsound for the reasons outlined in https://codereview.chromium.org/1473073004/ Will reland the mjsunit test separately and help Fedor to implement a solution based on simplified operators. Original issue's description: > [machine-operator-reducer] fix float truncation > > Don't replace `TruncateFloat64ToInt32(RoundInt64ToFloat64(value))` with > `value`. Generally, `value` may have a range bigger than the one that > could fit into Int32. Replace it with `TruncateInt64ToInt32(value)` > instead, and only if the `value` fits into Float64 without precision > loss. > > Add missing mjsunit test for 52bit multiplication/division optimization > that has landed in refs/heads/master@{#31899}. > > BUG= > R=titzer@google.com > > Committed: https://crrev.com/64efa2a904773816968992628f0bf0f1b7ae82be > Cr-Commit-Position: refs/heads/master@{#32227} TBR=titzer@chromium.org,fedor@indutny.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1468313009 Cr-Commit-Position: refs/heads/master@{#32312}
-
v8-autoroll authored
Rolling v8/tools/clang to 18e54a1f3caadfa9fd3b3e3f561cc57b2d834ff7 TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review URL: https://codereview.chromium.org/1472413005 Cr-Commit-Position: refs/heads/master@{#32311}
-
bmeurer authored
Revert of [compiler] merge binary-operator-reducer (patchset #2 id:20001 of https://codereview.chromium.org/1473073004/ ) Reason for revert: Unsound use of types in the MachineOperatorReducer. Will work on a sound solution with Fedor. Original issue's description: > [compiler] merge binary-operator-reducer > > Merge BinaryOperatorReducer into the MachineOperatorReducer class. > It does not need `Revisit()` calls, because the newly inserted nodes are > visited anyway, and there are no other methods that need AdvancedReducer > there. > > BUG= > R=titzer@chromium.org > > Committed: https://crrev.com/993ba9d2529a6401b3040b9263f8d06db7dbb4f1 > Cr-Commit-Position: refs/heads/master@{#32298} TBR=titzer@chromium.org,fedor@indutny.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1476763006 Cr-Commit-Position: refs/heads/master@{#32310}
-
zhengxing.li authored
port 3d004eea (r32264) original commit message: 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. BUG= Review URL: https://codereview.chromium.org/1475043003 Cr-Commit-Position: refs/heads/master@{#32309}
-
- 25 Nov, 2015 22 commits
-
-
ahaas authored
The Float32RoundTiesEven operator rounds float32 numbers towards the nearest integer. If the distance to two integers is the same, then the result is the even integer. This is the default rounding mode of the ieee 754 floating point standard. I implemented the optional Float32RoundTiesEven operator on x64, ia32, arm, and arm64. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1477753002 Cr-Commit-Position: refs/heads/master@{#32308}
-
adamk authored
This will make sure that message tests cover both the parser and preparser paths, just as we do for parsing-related cctests. BUG=v8:4372 LOG=n Review URL: https://codereview.chromium.org/1469383004 Cr-Commit-Position: refs/heads/master@{#32307}
-
adamk authored
Also fix CheckConflictingVarDeclarations() to properly handle legacy const bindings. Without that change enabling the flag causes code like: function f() { const x; var x; } to throw an early error, rather than wait to throw the error until f is invoked. The previous patch ran into problems with the fuzzer; that crash was fixed (with test coverage added) in https://crrev.com/ceb92ebfdfb561d71038793c02b42aa973f55ec4 BUG=v8:811 LOG=y TBR=rossberg@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1473243006 Cr-Commit-Position: refs/heads/master@{#32306}
-
ofrobots authored
No more uses left for this code (thank goodness.) R=hpayer@chromium.org BUG= Review URL: https://codereview.chromium.org/1474693003 Cr-Commit-Position: refs/heads/master@{#32305}
-
jarin authored
This should fix the Turbofan Octane/Mandreel regression introduced by commit 9ea551aa Author: jarin <jarin@chromium.org> Date: Sun Nov 22 05:45:38 2015 -0800 [turbofan] Simplify lowering of number addition. Review URL: https://codereview.chromium.org/1471533002 Cr-Commit-Position: refs/heads/master@{#32159} Review URL: https://codereview.chromium.org/1477803002 Cr-Commit-Position: refs/heads/master@{#32304}
-
littledan authored
In this new version of test262, a number of known failing tests have been changed to match the ES2016 semantics, which V8 implements. R=adamk Review URL: https://codereview.chromium.org/1475793004 Cr-Commit-Position: refs/heads/master@{#32303}
-
mtrofin authored
validating that the hot path does not spill - somewhat simpler code. Cleared the scenario where a range is defined in a deferred block. The code before was slightly more complicated by not leveraging the property that these sort of ranges would be completely contained within deferred blocks. Moved "spills in deferred blocks" marking to a more appropriate location. One thing this CL achieves is correct support for scenarios where a range is spilled both on the deferred and then hot path, and the ranges concatenate. I owe better unit testing, which I will add in a subsequent CL. BUG= Review URL: https://codereview.chromium.org/1472803004 Cr-Commit-Position: refs/heads/master@{#32302}
-
ahaas authored
The Float32RoundTruncate operator rounds float32 numbers towards zero. The operator is currently implemented on x64, ia32, arm, and arm64. Additionally I added support for the float32 vrintz, vrintn, and vrinta instructions to the arm simulator. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1468303005 Cr-Commit-Position: refs/heads/master@{#32301}
-
jochen authored
Always go through Assembler::FlushICache so we automatically use the simulator when running with a simulator. BUG=v8:2487 R=epertoso@chromium.org LOG=n Review URL: https://codereview.chromium.org/1480623002 Cr-Commit-Position: refs/heads/master@{#32300}
-
machenbach authored
Revert of [debugger] flood function for stepping before calling it. (patchset #7 id:120001 of https://codereview.chromium.org/1463803002/ ) Reason for revert: [Sheriff] Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/3074 Original issue's description: > [debugger] flood function for stepping before calling it. > > R=verwaest@chromium.org > > Committed: https://crrev.com/93eb633214e0f97bf70ae30d2a07b7fbbaa78266 > Cr-Commit-Position: refs/heads/master@{#32285} TBR=verwaest@chromium.org,mstarzinger@chromium.org,yangguo@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1474943005 Cr-Commit-Position: refs/heads/master@{#32299}
-
fedor authored
Merge BinaryOperatorReducer into the MachineOperatorReducer class. It does not need `Revisit()` calls, because the newly inserted nodes are visited anyway, and there are no other methods that need AdvancedReducer there. BUG= R=titzer@chromium.org Review URL: https://codereview.chromium.org/1473073004 Cr-Commit-Position: refs/heads/master@{#32298}
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/1472393002 Cr-Commit-Position: refs/heads/master@{#32297}
-
fmeawad authored
Since the gn builders do not resolve the DEPS after patch, the patch cannot contain both the DEPS change as well the usage of the newly added DEPS. If the CL mentioned in the title does not land, this CL is to be remove/reverted as well. BUG=v8:4560 LOG=N Review URL: https://codereview.chromium.org/1469303004 Cr-Commit-Position: refs/heads/master@{#32296}
-
ishell authored
BUG=v8:4572, chromium:561481 LOG=Y Review URL: https://codereview.chromium.org/1465223007 Cr-Commit-Position: refs/heads/master@{#32295}
-
machenbach authored
Revert of Tenure descriptor arrays. (patchset #1 id:1 of https://codereview.chromium.org/1476913002/ ) Reason for revert: [Sheriff] Breaks gc stress: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/544 Original issue's description: > Tenure descriptor arrays. > > BUG= > > Committed: https://crrev.com/38ec44f3bde8c16448e093b6595d0452e189023f > Cr-Commit-Position: refs/heads/master@{#32289} TBR=ishell@chromium.org,hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1477003003 Cr-Commit-Position: refs/heads/master@{#32294}
-
machenbach authored
Reland of [turbofan] Introduce proper JSCreateLiteralRegExp operator. (patchset #1 id:1 of https://codereview.chromium.org/1472423002/ ) Reason for revert: [Sheriff] Wrong revert. Original issue's description: > Revert of [turbofan] Introduce proper JSCreateLiteralRegExp operator. (patchset #2 id:20001 of https://codereview.chromium.org/1475973002/ ) > > Reason for revert: > Broke "V8 Linux64 GC Stress - custom snapshot". > > http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/2824 > > Original issue's description: > > [turbofan] Introduce proper JSCreateLiteralRegExp operator. > > > > This adds a new JavaScript level operator for regexp literal creation, > > similar to what we already have for array and object literals. This > > once gets lowered to a call to the FastCloneRegExpStub always. > > > > R=mstarzinger@chromium.org > > > > Committed: https://crrev.com/8659c5d1d287177369ce179a8d0b910192d840d9 > > Cr-Commit-Position: refs/heads/master@{#32288} > > TBR=mstarzinger@chromium.org,bmeurer@chromium.org > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > > Committed: https://crrev.com/168683d270d44f05f28acaf7d34c32d0250d2a4c > Cr-Commit-Position: refs/heads/master@{#32292} TBR=mstarzinger@chromium.org,bmeurer@chromium.org,ishell@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1478823002 Cr-Commit-Position: refs/heads/master@{#32293}
-
ishell authored
Revert of [turbofan] Introduce proper JSCreateLiteralRegExp operator. (patchset #2 id:20001 of https://codereview.chromium.org/1475973002/ ) Reason for revert: Broke "V8 Linux64 GC Stress - custom snapshot". http://build.chromium.org/p/client.v8/builders/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/builds/2824 Original issue's description: > [turbofan] Introduce proper JSCreateLiteralRegExp operator. > > This adds a new JavaScript level operator for regexp literal creation, > similar to what we already have for array and object literals. This > once gets lowered to a call to the FastCloneRegExpStub always. > > R=mstarzinger@chromium.org > > Committed: https://crrev.com/8659c5d1d287177369ce179a8d0b910192d840d9 > Cr-Commit-Position: refs/heads/master@{#32288} TBR=mstarzinger@chromium.org,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1472423002 Cr-Commit-Position: refs/heads/master@{#32292}
-
mlippautz authored
Iterating live objects using mark bits is memory bound and already pretty heavy on the cache as we always need to look at the mark bits, the objects (payload), and their maps. This CL changes the object start computation from a table lookup, which was yet another memory location, to a CPU-bound computation. BUG=chromium:524425 LOG=N Review URL: https://codereview.chromium.org/1478623003 Cr-Commit-Position: refs/heads/master@{#32291}
-
thakis authored
Also add a note that it should go away over time. BUG=none LOG=n Review URL: https://codereview.chromium.org/1475033003 Cr-Commit-Position: refs/heads/master@{#32290}
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/1476913002 Cr-Commit-Position: refs/heads/master@{#32289}
-
bmeurer authored
This adds a new JavaScript level operator for regexp literal creation, similar to what we already have for array and object literals. This once gets lowered to a call to the FastCloneRegExpStub always. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/1475973002 Cr-Commit-Position: refs/heads/master@{#32288}
-
jochen authored
R=jkummerow@chromium.org BUG=v8:2487 LOG=n Review URL: https://codereview.chromium.org/1473683004 Cr-Commit-Position: refs/heads/master@{#32287}
-