Lines Matching +full:- +full:y
1 //===- MPIntTest.cpp - Tests for MPInt ------------------------------------===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
20 // This is for pretty-printing the test name with the name of the class in use.
38 EXPECT_EQ(Five * Five, 3 * Ten - Five); in TYPED_TEST()
43 EXPECT_EQ(-Ten % Seven, -10 % 7); in TYPED_TEST()
44 EXPECT_EQ(Ten % -Seven, 10 % -7); in TYPED_TEST()
45 EXPECT_EQ(-Ten % -Seven, -10 % -7); in TYPED_TEST()
48 EXPECT_EQ(-Ten / Seven, -10 / 7); in TYPED_TEST()
49 EXPECT_EQ(Ten / -Seven, 10 / -7); in TYPED_TEST()
50 EXPECT_EQ(-Ten / -Seven, -10 / -7); in TYPED_TEST()
60 X -= Two * 10; in TYPED_TEST()
61 EXPECT_EQ(X, -16); in TYPED_TEST()
63 EXPECT_EQ(X, -64); in TYPED_TEST()
64 X /= Two / -2; in TYPED_TEST()
82 EXPECT_EQ(Five * 5, 3 * Ten - 5); in TYPED_TEST()
87 EXPECT_EQ(2 - Two, 0); in TYPED_TEST()
97 X -= 20; in TYPED_TEST()
98 EXPECT_EQ(X, -16); in TYPED_TEST()
100 EXPECT_EQ(X, -64); in TYPED_TEST()
101 X /= -1; in TYPED_TEST()
125 EXPECT_EQ((X * X - X * X * X * X) / (X * X * X), 1 - (1ll << 60)); in TYPED_TEST()
126 TypeParam Y(1ll << 62); in TYPED_TEST() local
127 EXPECT_EQ((Y + Y + Y + Y + Y + Y) / Y, 6); in TYPED_TEST()
128 EXPECT_EQ(-(2 * (-Y)), 2 * Y); // -(-2^63) overflow. in TYPED_TEST()
130 EXPECT_EQ(X, (Y * Y) / 16); in TYPED_TEST()
131 Y += Y; in TYPED_TEST()
132 Y += Y; in TYPED_TEST()
133 Y += Y; in TYPED_TEST()
134 Y /= 8; in TYPED_TEST()
135 EXPECT_EQ(Y, 1ll << 62); in TYPED_TEST()
139 EXPECT_EQ(floorDiv(Min, -One), -Min); in TYPED_TEST()
140 EXPECT_EQ(ceilDiv(Min, -One), -Min); in TYPED_TEST()
141 EXPECT_EQ(abs(Min), -Min); in TYPED_TEST()
144 Z /= -1; in TYPED_TEST()
145 EXPECT_EQ(Z, -Min); in TYPED_TEST()
147 --W; in TYPED_TEST()
148 EXPECT_EQ(W, TypeParam(Min) - 1); in TYPED_TEST()
150 U -= 1; in TYPED_TEST()
166 for (const TypeParam &Y : {X, X * X}) { in TYPED_TEST()
167 EXPECT_EQ(floorDiv(3 * Y, Three), Y); in TYPED_TEST()
168 EXPECT_EQ(ceilDiv(3 * Y, Three), Y); in TYPED_TEST()
169 EXPECT_EQ(floorDiv(3 * Y - 1, Three), Y - 1); in TYPED_TEST()
170 EXPECT_EQ(ceilDiv(3 * Y - 1, Three), Y); in TYPED_TEST()
171 EXPECT_EQ(floorDiv(3 * Y - 2, Three), Y - 1); in TYPED_TEST()
172 EXPECT_EQ(ceilDiv(3 * Y - 2, Three), Y); in TYPED_TEST()
174 EXPECT_EQ(mod(3 * Y, Three), 0); in TYPED_TEST()
175 EXPECT_EQ(mod(3 * Y + 1, Three), One); in TYPED_TEST()
176 EXPECT_EQ(mod(3 * Y + 2, Three), Two); in TYPED_TEST()
178 EXPECT_EQ(floorDiv(3 * Y, Y), 3); in TYPED_TEST()
179 EXPECT_EQ(ceilDiv(3 * Y, Y), 3); in TYPED_TEST()
180 EXPECT_EQ(floorDiv(3 * Y - 1, Y), 2); in TYPED_TEST()
181 EXPECT_EQ(ceilDiv(3 * Y - 1, Y), 3); in TYPED_TEST()
182 EXPECT_EQ(floorDiv(3 * Y - 2, Y), 2); in TYPED_TEST()
183 EXPECT_EQ(ceilDiv(3 * Y - 2, Y), 3); in TYPED_TEST()
185 EXPECT_EQ(mod(3 * Y, Y), 0); in TYPED_TEST()
186 EXPECT_EQ(mod(3 * Y + 1, Y), 1); in TYPED_TEST()
187 EXPECT_EQ(mod(3 * Y + 2, Y), 2); in TYPED_TEST()
189 EXPECT_EQ(abs(Y), Y); in TYPED_TEST()
190 EXPECT_EQ(abs(-Y), Y); in TYPED_TEST()
192 EXPECT_EQ(gcd(3 * Y, Three), Three); in TYPED_TEST()
193 EXPECT_EQ(lcm(Y, Three), 3 * Y); in TYPED_TEST()
194 EXPECT_EQ(gcd(2 * Y, 3 * Y), Y); in TYPED_TEST()
195 EXPECT_EQ(lcm(2 * Y, 3 * Y), 6 * Y); in TYPED_TEST()
196 EXPECT_EQ(gcd(15 * Y, 6 * Y), 3 * Y); in TYPED_TEST()
197 EXPECT_EQ(lcm(15 * Y, 6 * Y), 30 * Y); in TYPED_TEST()