- 12 May, 2016 1 commit
-
-
ahaas authored
The operators are needed because the wasm spec requires that nan bits are preserved. R=titzer@chromium.org Review-Url: https://codereview.chromium.org/1973493003 Cr-Commit-Position: refs/heads/master@{#36212}
-
- 04 May, 2016 1 commit
-
-
jyan authored
Port 81cb8411 R=binji@chromium.org, joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=v8:4614 LOG=N Review-Url: https://codereview.chromium.org/1948043002 Cr-Commit-Position: refs/heads/master@{#36039}
-
- 26 Apr, 2016 1 commit
-
-
jyan authored
Port 0231a7ef Original commit message: This allows us to get rid of the "push TruncateFloat64ToInt32 into Phi" trick that was used in the MachineOperatorReducer to combine the ChangeTaggedToFloat64 and TruncateFloat64ToInt32 operations. Instead of doing that later, we can just introduce the proper operator during the representation selection directly. Also separate the TruncateFloat64ToInt32 machine operator, which had two different meanings depending on a flag (either JavaScript truncation or C++ style round to zero). Now there's a TruncateFloat64ToWord32 which represents the JavaScript truncation (implemented via TruncateDoubleToI macro + code stub) and the RoundFloat64ToInt32, which implements the C++ round towards zero operation (in the same style as the other WebAssembly driven Round* machine operators). R=bmeurer@chromium.org, joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= LOG=N Review URL: https://codereview.chromium.org/1922183002 Cr-Commit-Position: refs/heads/master@{#35802}
-
- 25 Apr, 2016 1 commit
-
-
jyan authored
TEST=cctest/test-run-load-store/* R=joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com BUG= S390: [interpreter] Heal closures when bytecode array is gone. Port 5c8609de Original commit message: This ensures the InterpreterEntryTrampoline heals code entry fields inside closures when being called without a valid bytecode array. This is preparatory work to allow removal of bytecode when switching some functions to other types of code. R=mstarzinger@chromium.org, joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=v8:4280 LOG=N Review URL: https://codereview.chromium.org/1916143002 Cr-Commit-Position: refs/heads/master@{#35779}
-
- 24 Apr, 2016 1 commit
-
-
bmeurer authored
This allows us to get rid of the "push TruncateFloat64ToInt32 into Phi" trick that was used in the MachineOperatorReducer to combine the ChangeTaggedToFloat64 and TruncateFloat64ToInt32 operations. Instead of doing that later, we can just introduce the proper operator during the representation selection directly. Also separate the TruncateFloat64ToInt32 machine operator, which had two different meanings depending on a flag (either JavaScript truncation or C++ style round to zero). Now there's a TruncateFloat64ToWord32 which represents the JavaScript truncation (implemented via TruncateDoubleToI macro + code stub) and the RoundFloat64ToInt32, which implements the C++ round towards zero operation (in the same style as the other WebAssembly driven Round* machine operators). R=jarin@chromium.org Review URL: https://codereview.chromium.org/1919513002 Cr-Commit-Position: refs/heads/master@{#35743}
-
- 20 Apr, 2016 1 commit
-
-
jyan authored
Port d412cfa2 Original commit message: [Atomics] Remove Atomics code stubs; use TF ops Reland of (https://codereview.chromium.org/1891033002) This is a much cleaner solution, which won't require nearly as much architecture-specific code. Thanks bmeurer@! R=binji@chromium.org, joransiu@ca.ibm.com, bjaideep@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG=v8:4614 LOG=N Review URL: https://codereview.chromium.org/1897373003 Cr-Commit-Position: refs/heads/master@{#35657}
-
- 01 Apr, 2016 1 commit
-
-
jyan authored
port ac7f0e2b Original Commit Message: *) For all tests the input validation was incorrect, i.e. some values were considered invalid although they were valid. The problem was that values which are outside int range can get in range through truncation. *) Removed an assertion in the x64 code generation of TruncateFloat64ToUint32 which trapped on negative inputs. *) Introduced a new TF operator TruncateFloat32ToUint32 which does the same as ChangeFloat32ToUint32 but does not trap on negative inputs. R=titzer@chromium.org, ahaas@chromium.org, joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1844053005 Cr-Commit-Position: refs/heads/master@{#35207}
-
- 31 Mar, 2016 1 commit
-
-
jyan authored
port 40bdbef9 Original commit message: Int64Mul is lowered to a new turbofan operator, Int32MulPair. 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 multiplication. R=titzer@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1849543003 Cr-Commit-Position: refs/heads/master@{#35167}
-
- 17 Mar, 2016 1 commit
-
-
jyan authored
Port 33c08596 Original commit message: Int64Sub is lowered to a new turbofan operator, Int32SubPair. 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 subtraction. The implementation is very similar to the implementation of Int64Add. R=ahaas@chromium.org, joransiu@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1807243002 Cr-Commit-Position: refs/heads/master@{#34865}
-
- 16 Mar, 2016 1 commit
-
-
jyan authored
Original commit message: 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=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1807013002 Cr-Commit-Position: refs/heads/master@{#34840}
-
- 15 Mar, 2016 1 commit
-
-
jyan authored
Upstream S390 platform specific code to latest lkgr from the past 2 weeks. R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,joransiu@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1799893002 Cr-Commit-Position: refs/heads/master@{#34787}
-
- 09 Mar, 2016 1 commit
-
-
jarin authored
After fixing the memory barrier for maps (https://codereview.chromium.org/1714513003), we are using a temp register for the map case. The temp register should not be aliased with the stored value (otherwise we perform the mem barrier check with a wrong value). This CL makes sure it is not aliased. BUG=chromium:590074 LOG=n Review URL: https://codereview.chromium.org/1775083002 Cr-Commit-Position: refs/heads/master@{#34607}
-
- 04 Mar, 2016 1 commit
-
-
jyan authored
R=danno@chromium.org,jkummerow@chromium.org,jochen@chromium.org,joransiu@ca.ibm.com,michael_dawson@ca.ibm.com,mbrandy@us.ibm.com BUG= Review URL: https://codereview.chromium.org/1762743002 Cr-Commit-Position: refs/heads/master@{#34501}
-
- 24 Feb, 2016 1 commit
-
-
mbrandy authored
Port c129aa4d Original commit message: These macro operators represent a conditional eager deoptimization exit without explicit branching, which greatly reduces overhead of both scheduling and register allocation, and thereby greatly reduces overall compilation time, esp. when there are a lot of eager deoptimization exits. R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1730383002 Cr-Commit-Position: refs/heads/master@{#34267}
-
- 17 Feb, 2016 1 commit
-
-
bbudge authored
Adds kSimd128 to MachineRepresentation. Adds a Simd128Register concept that's platform independent. Adds UntaggedSimd128 to types.h. LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1693963004 Cr-Commit-Position: refs/heads/master@{#34089}
-
- 16 Feb, 2016 1 commit
-
-
rodolph.perfetta authored
Let me know if this is not the right approach Review URL: https://codereview.chromium.org/1698483002 Cr-Commit-Position: refs/heads/master@{#34028}
-
- 15 Feb, 2016 1 commit
-
-
mbrandy authored
Port 4eff883b c72b49bd Original commit message: Ideally we would not need the StoreWriteBarrier instructions at all, but represent the RecordWrite functionality as machine subgraph, but that'll take some time to get there. In the mean time we can have a shorter instruction sequence by recognizing immediate indices here. R=bmeurer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1695333002 Cr-Commit-Position: refs/heads/master@{#34006}
-
- 08 Feb, 2016 2 commits
-
-
mbrandy authored
Port 2166bd8c R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1677213002 Cr-Commit-Position: refs/heads/master@{#33830}
-
mbrandy authored
Port 187b3f28 R=joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1680833002 Cr-Commit-Position: refs/heads/master@{#33825}
-
- 06 Feb, 2016 2 commits
-
-
jing.bao authored
BUG= Review URL: https://codereview.chromium.org/1627263002 Cr-Commit-Position: refs/heads/master@{#33797}
-
jing.bao authored
BUG= Review URL: https://codereview.chromium.org/1628133002 Cr-Commit-Position: refs/heads/master@{#33796}
-
- 19 Jan, 2016 1 commit
-
-
mbrandy authored
Port fc53eed1 Original commit message: The new operator converts a float32 input to int32 through truncation. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1593333006 Cr-Commit-Position: refs/heads/master@{#33392}
-
- 16 Jan, 2016 1 commit
-
-
ahaas authored
The new operator converts an int32 input to float32. If the input cannot be represented exactly in float32, the value is rounded using the round-ties-even rounding mode (the default rounding mode). I provide implementations of the new operator for x64, ia32, arm, arm64, mips, mips64, ppc, and ppc64. R=titzer@chromium.org, v8-arm-ports@googlegroups.com, v8-mips-ports@googlegroups.com, v8-ppc-ports@googlegroups.com Review URL: https://codereview.chromium.org/1589363002 Cr-Commit-Position: refs/heads/master@{#33347}
-
- 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}
-
- 30 Dec, 2015 1 commit
-
-
mbrandy authored
Port bafb568b R=jarin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1552783002 Cr-Commit-Position: refs/heads/master@{#33063}
-
- 23 Dec, 2015 1 commit
-
-
mbrandy authored
Port 739c0187 R=jarin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1549493005 Cr-Commit-Position: refs/heads/master@{#33015}
-
- 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}
-
- 16 Dec, 2015 3 commits
-
-
mbrandy authored
Port 97161a29 Original commit message: 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. 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=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1533613002 Cr-Commit-Position: refs/heads/master@{#32919}
-
mbrandy authored
Port bb2a830d Port 56673804 Original commit messages: 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. Store nodes use only MachineRepresentation, not MachineType. R=jarin@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1523373003 Cr-Commit-Position: refs/heads/master@{#32916}
-
mbrandy authored
Port 28261daa Original commit message: 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. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1530273002 Cr-Commit-Position: refs/heads/master@{#32914}
-
- 11 Dec, 2015 1 commit
-
-
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}
-
- 09 Dec, 2015 3 commits
-
-
mbrandy authored
Port c343f309 Original commit message: 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. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1512963002 Cr-Commit-Position: refs/heads/master@{#32728}
-
mbrandy 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. R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1515603002 Cr-Commit-Position: refs/heads/master@{#32724}
-
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}
-
- 07 Dec, 2015 1 commit
-
-
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}
-
- 01 Dec, 2015 3 commits
-
-
mbrandy authored
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1480243003 Cr-Commit-Position: refs/heads/master@{#32434}
-
mbrandy authored
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1490513004 Cr-Commit-Position: refs/heads/master@{#32428}
-
mbrandy authored
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1480213003 Cr-Commit-Position: refs/heads/master@{#32427}
-
- 30 Nov, 2015 1 commit
-
-
mbrandy authored
R=ahaas@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= Review URL: https://codereview.chromium.org/1488563003 Cr-Commit-Position: refs/heads/master@{#32423}
-