- 11 Jan, 2016 1 commit
-
-
titzer authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/1578723002 Cr-Commit-Position: refs/heads/master@{#33202}
-
- 06 Jan, 2016 2 commits
-
-
dusan.m.milosavljevic authored
Utilise Dextu, Dextm on mips64 for widths and positions larger than 32. TEST= BUG= Review URL: https://codereview.chromium.org/1552483002 Cr-Commit-Position: refs/heads/master@{#33138}
-
ivica.bogosavljevic authored
Several ports to enable r6 compact branch optimizations on MIPS64 Port 3573d3cb Original commit message: MIPS: r6 compact branch optimization. Port bddf8c9e Original commit message: MIPS: Fix trampoline pool handling in MacroAssembler::BranchShort() Port 6993cd0d Original commit message: MIPS: Fix 'MIPS:r6 compact branch optimization.' Jic and jialc compact branch ops are fixed as they does not have 'forbidden slot' restriction. Also COP1 branches (CTI instructions) added to IsForbiddenAfterBranchInstr(). Port bb332195 Original commit message: MIPS: Fix trampoline pool handling in MacroAssembler::BranchShort() Port c91bcf71 Original commit message: MIPS: Fix trampoline pool handling in MacroAssembler::BranchShort() for r6. BUG= Review URL: https://codereview.chromium.org/1534183002 Cr-Commit-Position: refs/heads/master@{#33136}
-
- 24 Dec, 2015 1 commit
-
-
jarin authored
Review URL: https://codereview.chromium.org/1544743004 Cr-Commit-Position: refs/heads/master@{#33039}
-
- 22 Dec, 2015 1 commit
-
-
jarin authored
Review URL: https://codereview.chromium.org/1542093002 Cr-Commit-Position: refs/heads/master@{#33011}
-
- 21 Dec, 2015 1 commit
-
-
ahaas authored
On ia32 the code which pushes parameters on the stack depends on the types of the parameters which are to be pushed. I provide this type information now by not only passing parameter nodes to EmitPrepareArguments, but also the index in the call descriptor which belongs to the parameter nodes. This type information will also be necessary if we want to use the PokePair instruction on arm64 again. R=bradnelson@chromium.org, bmeurer@chromium.org Review URL: https://codereview.chromium.org/1534593004 Cr-Commit-Position: refs/heads/master@{#32982}
-
- 18 Dec, 2015 1 commit
-
-
dusan.m.milosavljevic authored
TEST=unittests/InstructionSelectorTest.CombineChangeFloat32ToInt32WithRoundFloat32, ChangeFloat64ToInt32OfChangeFloat32ToFloat64, TruncateFloat64ToFloat32OfChangeInt32ToFloat64 BUG= Review URL: https://codereview.chromium.org/1520503002 Cr-Commit-Position: refs/heads/master@{#32969}
-
- 17 Dec, 2015 1 commit
-
-
paul.lind authored
Add Ivica B. NOTRY=true Review URL: https://codereview.chromium.org/1525413003 Cr-Commit-Position: refs/heads/master@{#32933}
-
- 15 Dec, 2015 3 commits
-
-
baptiste.afsa authored
Original CL: https://codereview.chromium.org/1375253002/ Implement machine instruction scheduling after instruction selection. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1526913003 Cr-Commit-Position: refs/heads/master@{#32869}
-
yangguo authored
Revert of [WIP][turbofan] Instruction scheduler for Turbofan. (patchset #7 id:120001 of https://codereview.chromium.org/1375253002/ ) Reason for revert: Does not compile https://build.chromium.org/p/client.v8/builders/V8%20Arm%20-%20debug%20builder/builds/6870/steps/compile/logs/stdio Original issue's description: > [turbofan] Instruction scheduler for Turbofan. > > Implement machine instruction scheduling after instruction selection. > > Currently only works for arm64. > > R=danno@chromium.org, bmeurer@chromium.org, titzer@chromium.org > > Committed: https://crrev.com/e11bba3acd5188f0e12686b6fcf3e0ab22989216 > Cr-Commit-Position: refs/heads/master@{#32858} TBR=jarin@chromium.org,bmeurer@chromium.org,baptiste.afsa@arm.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1526913002 Cr-Commit-Position: refs/heads/master@{#32860}
-
baptiste.afsa authored
Implement machine instruction scheduling after instruction selection. Currently only works for arm64. R=danno@chromium.org, bmeurer@chromium.org, titzer@chromium.org Review URL: https://codereview.chromium.org/1375253002 Cr-Commit-Position: refs/heads/master@{#32858}
-
- 12 Dec, 2015 1 commit
-
-
dusan.m.milosavljevic authored
TEST=cctest/test-run-machops/RunInt32DivP, mjsunit/asm/uint32div BUG= Review URL: https://codereview.chromium.org/1517243004 Cr-Commit-Position: refs/heads/master@{#32820}
-
- 11 Dec, 2015 2 commits
-
-
jarin authored
Review URL: https://codereview.chromium.org/1513383003 Cr-Commit-Position: refs/heads/master@{#32803}
-
ahaas authored
TryTruncateFloat32ToUint64 converts a float32 to a uint64. Additionally it provides an optional second return value which indicates whether the conversion succeeded (i.e. float32 value was within uint64 range) or not. I implemented the new operator on x64, arm64, and mips64. @v8-ppc-ports, can you please take care of the ppc64 implementation of the second output? Additionally I fixed a bug on x64 and mips64 in the implementation of TryTruncateFloat64ToUint64. Cases where the input value was between -1 and 0 were handled incorrectly. R=titzer@chromium.org, v8-arm-ports@googlegroups.com, v8-mips-ports@googlegroups.com Review URL: https://codereview.chromium.org/1512023002 Cr-Commit-Position: refs/heads/master@{#32796}
-
- 10 Dec, 2015 3 commits
-
-
dusan.m.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1508423002 Cr-Commit-Position: refs/heads/master@{#32749}
-
jarin authored
MachineType is now a class with two enum fields: - MachineRepresentation - MachineSemantic Both enums are usable on their own, and this change switches some places from using MachineType to use just MachineRepresentation. Most notably: - register allocator now uses just the representation. - Phi and Select nodes only refer to representations. Review URL: https://codereview.chromium.org/1513543003 Cr-Commit-Position: refs/heads/master@{#32738}
-
ahaas authored
This operator now provides a second output which indicates whether the conversion from float32 to int64 was successful or not. The second output returns 0 if the conversion fails, or something else if the conversion succeeds. The second output can be ignored, which means that the operator can be used the same as the original operator. I implement the new operator on x64, arm64, and mips64. @v8-ppc-ports, can you please take care of the ppc64 implementation of the second output? R=titzer@chromium.org, v8-arm-ports@googlegroups.com, v8-mips-ports@googlegroups.com Review URL: https://codereview.chromium.org/1504363002 Cr-Commit-Position: refs/heads/master@{#32737}
-
- 09 Dec, 2015 3 commits
-
-
dusan.m.milosavljevic authored
TEST=cctest/test-run-machops/RunInt32DivP BUG= Review URL: https://codereview.chromium.org/1511223002 Cr-Commit-Position: refs/heads/master@{#32716}
-
ahaas authored
This operator now provides a second output which indicates whether the conversion from float64 to uint64 was successful or not. The second output returns 0 if the conversion fails, or something else if the conversion succeeds. The second output can be ignored, which means that the operator can be used the same as the original operator. I implement the new operator on x64 and arm64. @v8-mips-ports and @v8-ppc-ports, can you please take care of the mips64 and ppc64 implementation of the second output? R=titzer@chromium.org, v8-arm-ports@googlegroups.com Review URL: https://codereview.chromium.org/1507703002 Cr-Commit-Position: refs/heads/master@{#32705}
-
bmeurer authored
This only introduces the basic support for both SOFT and EAGER deopts in TurboFan, but doesn't make use of SOFT deopts anywhere yet (there are some other issues blocking that). Basically every Deoptimize operator now has a DeoptimizeKind, which can be either kSoft or kEager. R=jarin@chromium.org Review URL: https://codereview.chromium.org/1511883002 Cr-Commit-Position: refs/heads/master@{#32690}
-
- 08 Dec, 2015 1 commit
-
-
dusan.m.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1503053002 Cr-Commit-Position: refs/heads/master@{#32685}
-
- 07 Dec, 2015 3 commits
-
-
dusan.m.milosavljevic authored
TEST=unittests/InstructionSlectorTest.CombineChangeFloat64ToInt32WithRoundFloat64 BUG= Review URL: https://codereview.chromium.org/1510493002 Cr-Commit-Position: refs/heads/master@{#32668}
-
ivica.bogosavljevic authored
Port 95844d94 Original commit message: The new operator provides a second output which indicates whether the conversion from float64 to int64 was successful or not. The second output returns 0 if the conversion fails. If the conversion succeeds, then the second output is differs from 0. The second output can be ignored, which means that the operator can be used the same way as the original operator. I implemented the new operator on x64 and arm64. @v8-mips-ports and @v8-ppc-ports, can you please take care of the mips64 and ppc64 implementation of the second output? BUG= TEST=cctest/test-run-machops/RunTryTruncateFloat64ToInt64WithCheck Review URL: https://codereview.chromium.org/1503173002 Cr-Commit-Position: refs/heads/master@{#32664}
-
ahaas authored
The new operator provides a second output which indicates whether the conversion from float64 to int64 was successful or not. The second output returns 0 if the conversion fails. If the conversion succeeds, then the second output is differs from 0. The second output can be ignored, which means that the operator can be used the same way as the original operator. I implemented the new operator on x64 and arm64. @v8-mips-ports and @v8-ppc-ports, can you please take care of the mips64 and ppc64 implementation of the second output? R=titzer@chromium.org, v8-arm-ports@googlegroups.com Review URL: https://codereview.chromium.org/1495213003 Cr-Commit-Position: refs/heads/master@{#32653}
-
- 04 Dec, 2015 1 commit
-
-
dusan.m.milosavljevic authored
TEST=unittests/InstructionSelectorTest.Word(32|64)ShlWithWord(32|64)And BUG= Review URL: https://codereview.chromium.org/1496013003 Cr-Commit-Position: refs/heads/master@{#32612}
-
- 01 Dec, 2015 3 commits
-
-
dusan.m.milosavljevic authored
TEST=unittests/InstructionSelectorTest.Word(32|64)AndToClearBits BUG= Review URL: https://codereview.chromium.org/1485023004 Cr-Commit-Position: refs/heads/master@{#32479}
-
dusan.m.milosavljevic authored
Xori instruction can only have unisgned 16-bit immediates for right input, as such it is not suitable for bit negation on mips. TEST=unittests/InstructionSecetorTest.Word(32|64)XorMinusOneWithParameter BUG= Review URL: https://codereview.chromium.org/1485833003 Cr-Commit-Position: refs/heads/master@{#32478}
-
dusan.m.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1483973002 Cr-Commit-Position: refs/heads/master@{#32465}
-
- 30 Nov, 2015 1 commit
-
-
danno authored
Restore frame pointer directly from stack rather than copying it and restoring. Also restore return address register directly on platforms that support it. BUG=v8:4076 LOG=n Review URL: https://codereview.chromium.org/1488553002 Cr-Commit-Position: refs/heads/master@{#32410}
-
- 28 Nov, 2015 1 commit
-
-
akos.palfi authored
Port 68cc0be2 Original commit message: The TruncateFloat32ToUint64 operator converts a float32 to an uint64 using round-to-zero rounding mode. If the input value is outside uint64 range, then the result depends on the architecture. I provide an implementation for x64 and arm64. BUG= Review URL: https://codereview.chromium.org/1481093003 Cr-Commit-Position: refs/heads/master@{#32383}
-
- 27 Nov, 2015 1 commit
-
-
ahaas authored
The TruncateFloat32ToUint64 operator converts a float32 to an uint64 using round-to-zero rounding mode. If the input value is outside uint64 range, then the result depends on the architecture. I provide an implementation for x64 and arm64. R=titzer@chromium.org Review URL: https://codereview.chromium.org/1479713003 Cr-Commit-Position: refs/heads/master@{#32379}
-
- 26 Nov, 2015 5 commits
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
dusan.m.milosavljevic authored
TEST= BUG= Review URL: https://codereview.chromium.org/1477043004 Cr-Commit-Position: refs/heads/master@{#32347}
-
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}
-
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}
-
- 25 Nov, 2015 4 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}
-
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}
-
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}
-