13
13
// RUN: %target-run-simple-swift(-parse-as-library)
14
14
// REQUIRES: executable_test
15
15
// REQUIRES: reflection
16
+ // UNSUPPORTED: use_os_stdlib
16
17
// END.
17
18
//
18
19
//===----------------------------------------------------------------------===//
19
20
20
- // rdar://103369837
21
- // UNSUPPORTED: OS=watchos || OS=macos
22
-
23
21
import StdlibUnittest
24
22
25
23
@available ( SwiftStdlib 5 . 8 , * )
@@ -69,17 +67,19 @@ extension StaticBigIntTests {
69
67
for (actual, expected) in keyValuePairs {
70
68
expectEqual ( expected. signum, actual. signum ( ) )
71
69
expectEqual ( expected. bitWidth, actual. bitWidth)
72
- if getInt ( UInt . bitWidth) == 32 {
73
- expectEqual ( expected. _32bit [ 0 ] , actual [ 0 ] )
74
- expectEqual ( expected. _32bit [ 1 ] , actual [ 1 ] )
75
- expectEqual ( expected. _32bit [ 2 ] , actual [ 2 ] )
76
- expectEqual ( expected. _32bit [ 3 ] , actual [ 3 ] )
77
- expectEqual ( expected. _32bit [ 4 ] , actual [ 4 ] )
78
- } else if getInt ( UInt . bitWidth) == 64 {
79
- expectEqual ( expected. _64bit [ 0 ] , actual [ 0 ] )
80
- expectEqual ( expected. _64bit [ 1 ] , actual [ 1 ] )
81
- expectEqual ( expected. _64bit [ 2 ] , actual [ 2 ] )
82
- }
70
+ #if arch(i386) || arch(arm) || arch(arm64_32) || arch(wasm32) || arch(powerpc)
71
+ expectEqual ( expected. _32bit [ 0 ] , actual [ 0 ] )
72
+ expectEqual ( expected. _32bit [ 1 ] , actual [ 1 ] )
73
+ expectEqual ( expected. _32bit [ 2 ] , actual [ 2 ] )
74
+ expectEqual ( expected. _32bit [ 3 ] , actual [ 3 ] )
75
+ expectEqual ( expected. _32bit [ 4 ] , actual [ 4 ] )
76
+ #elseif arch(x86_64) || arch(arm64) || arch(powerpc64) || arch(powerpc64le) || arch(s390x) || arch(riscv64)
77
+ expectEqual ( expected. _64bit [ 0 ] , actual [ 0 ] )
78
+ expectEqual ( expected. _64bit [ 1 ] , actual [ 1 ] )
79
+ expectEqual ( expected. _64bit [ 2 ] , actual [ 2 ] )
80
+ #else
81
+ #error("Unimplemented")
82
+ #endif
83
83
}
84
84
}
85
85
}
@@ -154,39 +154,46 @@ extension StaticBigIntTests {
154
154
let negative = Wrapper ( - 0x00112233_44556677_8899AABB_CCDDEEFF )
155
155
expectEqual ( - 1 , negative. actual. signum ( ) )
156
156
expectEqual ( 118 , negative. actual. bitWidth)
157
- if getInt ( UInt . bitWidth) == 32 {
158
- expectEqual ( 0x33221101 , negative. actual [ 0 ] )
159
- expectEqual ( 0x77665544 , negative. actual [ 1 ] )
160
- expectEqual ( 0xBBAA9988 , negative. actual [ 2 ] )
161
- expectEqual ( 0xFFEEDDCC , negative. actual [ 3 ] )
162
- expectEqual ( 0xFFFFFFFF , negative. actual [ 4 ] )
163
- expectEqual ( 0xFFFFFFFF , negative. actual [ . max] )
164
- } else if getInt ( UInt . bitWidth) == 64 {
165
- expectEqual ( 0x77665544_33221101 , negative. actual [ 0 ] )
166
- expectEqual ( 0xFFEEDDCC_BBAA9988 , negative. actual [ 1 ] )
167
- expectEqual ( 0xFFFFFFFF_FFFFFFFF , negative. actual [ 2 ] )
168
- expectEqual ( 0xFFFFFFFF_FFFFFFFF , negative. actual [ . max] )
169
- }
157
+ #if arch(i386) || arch(arm) || arch(arm64_32) || arch(wasm32) || arch(powerpc)
158
+ expectEqual ( 0x33221101 , negative. actual [ 0 ] )
159
+ expectEqual ( 0x77665544 , negative. actual [ 1 ] )
160
+ expectEqual ( 0xBBAA9988 , negative. actual [ 2 ] )
161
+ expectEqual ( 0xFFEEDDCC , negative. actual [ 3 ] )
162
+ expectEqual ( 0xFFFFFFFF , negative. actual [ 4 ] )
163
+ expectEqual ( 0xFFFFFFFF , negative. actual [ . max] )
164
+ #elseif arch(x86_64) || arch(arm64) || arch(powerpc64) || arch(powerpc64le) || arch(s390x) || arch(riscv64)
165
+ expectEqual ( 0x77665544_33221101 , negative. actual [ 0 ] )
166
+ expectEqual ( 0xFFEEDDCC_BBAA9988 , negative. actual [ 1 ] )
167
+ expectEqual ( 0xFFFFFFFF_FFFFFFFF , negative. actual [ 2 ] )
168
+ expectEqual ( 0xFFFFFFFF_FFFFFFFF , negative. actual [ . max] )
169
+ #else
170
+ #error("Unimplemented")
171
+ #endif
170
172
}
171
173
do {
172
174
let positive = Wrapper ( 0x00112233_44556677_8899AABB_CCDDEEFF )
173
175
expectEqual ( + 1 , positive. actual. signum ( ) )
174
176
expectEqual ( 118 , positive. actual. bitWidth)
175
- if getInt ( UInt . bitWidth) == 32 {
176
- expectEqual ( 0xCCDDEEFF , positive. actual [ 0 ] )
177
- expectEqual ( 0x8899AABB , positive. actual [ 1 ] )
178
- expectEqual ( 0x44556677 , positive. actual [ 2 ] )
179
- expectEqual ( 0x00112233 , positive. actual [ 3 ] )
180
- expectEqual ( 0x00000000 , positive. actual [ 4 ] )
181
- expectEqual ( 0x00000000 , positive. actual [ . max] )
182
- } else if getInt ( UInt . bitWidth) == 64 {
183
- expectEqual ( 0x8899AABB_CCDDEEFF , positive. actual [ 0 ] )
184
- expectEqual ( 0x00112233_44556677 , positive. actual [ 1 ] )
185
- expectEqual ( 0x00000000_00000000 , positive. actual [ 2 ] )
186
- expectEqual ( 0x00000000_00000000 , positive. actual [ . max] )
187
- }
177
+ #if arch(i386) || arch(arm) || arch(arm64_32) || arch(wasm32) || arch(powerpc)
178
+ expectEqual ( 0xCCDDEEFF , positive. actual [ 0 ] )
179
+ expectEqual ( 0x8899AABB , positive. actual [ 1 ] )
180
+ expectEqual ( 0x44556677 , positive. actual [ 2 ] )
181
+ expectEqual ( 0x00112233 , positive. actual [ 3 ] )
182
+ expectEqual ( 0x00000000 , positive. actual [ 4 ] )
183
+ expectEqual ( 0x00000000 , positive. actual [ . max] )
184
+ #elseif arch(x86_64) || arch(arm64) || arch(powerpc64) || arch(powerpc64le) || arch(s390x) || arch(riscv64)
185
+ expectEqual ( 0x8899AABB_CCDDEEFF , positive. actual [ 0 ] )
186
+ expectEqual ( 0x00112233_44556677 , positive. actual [ 1 ] )
187
+ expectEqual ( 0x00000000_00000000 , positive. actual [ 2 ] )
188
+ expectEqual ( 0x00000000_00000000 , positive. actual [ . max] )
189
+ #else
190
+ #error("Unimplemented")
191
+ #endif
188
192
}
189
- if getInt ( UInt . bitWidth) == 64 {
193
+ do {
194
+ #if arch(i386) || arch(arm) || arch(arm64_32) || arch(wasm32) || arch(powerpc)
195
+ // Unimplemented.
196
+ #elseif arch(x86_64) || arch(arm64) || arch(powerpc64) || arch(powerpc64le) || arch(s390x) || arch(riscv64)
190
197
let fibonacciSequence = Wrapper (
191
198
0xA94FAD42221F2702_68A3DD8E61ECCFBD_40ABCFB3C0325745_27F80DDAA1BA7878_18B3C1D91E77DECD_0F444C01834299AB_096F75D79B354522_05D4D629E80D5489_039A9FADB327F099_023A367C34E563F0_016069317E428CA9_00D9CD4AB6A2D747_00869BE6C79FB562_00533163EF0321E5_00336A82D89C937D_001FC6E116668E68_0013A3A1C2360515_000C233F54308953_000780626E057BC2_0004A2DCE62B0D91_0002DD8587DA6E31_0001C5575E509F60_0001182E2989CED1_0000AD2934C6D08F_00006B04F4C2FE42_000042244003D24D_000028E0B4BF2BF5_000019438B44A658_00000F9D297A859D_000009A661CA20BB_000005F6C7B064E2_000003AF9A19BBD9_000002472D96A909_000001686C8312D0_000000DEC1139639_00000089AB6F7C97_0000005515A419A2_0000003495CB62F5_000000207FD8B6AD_0000001415F2AC48_0000000C69E60A65_00000007AC0CA1E3_00000004BDD96882_00000002EE333961_00000001CFA62F21_000000011E8D0A40_00000000B11924E1_000000006D73E55F_0000000043A53F82_0000000029CEA5DD_0000000019D699A5_000000000FF80C38_0000000009DE8D6D_0000000006197ECB_0000000003C50EA2_0000000002547029_0000000001709E79_0000000000E3D1B0_00000000008CCCC9_00000000005704E7_000000000035C7E2_0000000000213D05_0000000000148ADD_00000000000CB228_000000000007D8B5_000000000004D973_000000000002FF42_000000000001DA31_0000000000012511_000000000000B520_0000000000006FF1_000000000000452F_0000000000002AC2_0000000000001A6D_0000000000001055_0000000000000A18_000000000000063D_00000000000003DB_0000000000000262_0000000000000179_00000000000000E9_0000000000000090_0000000000000059_0000000000000037_0000000000000022_0000000000000015_000000000000000D_0000000000000008_0000000000000005_0000000000000003_0000000000000002_0000000000000001_0000000000000001_0000000000000000
192
199
)
@@ -201,6 +208,9 @@ extension StaticBigIntTests {
201
208
fibonacciSequence. actual [ wordIndex - 2 ]
202
209
)
203
210
}
211
+ #else
212
+ #error("Unimplemented")
213
+ #endif
204
214
}
205
215
}
206
216
}
0 commit comments