/* ---------------------------------------------------------------------------------------------------*/ /* Port of the Intel Decimal Floating-Point Math Library decimal128 type to Rust. */ /* decmathlib-rs - Copyright (C) 2023-2024 Carlos Guzmán Álvarez */ /* -------------------------------------------------------------------------------------------------- */ /* Licensed under the MIT license. See LICENSE file in the project root for full license information. */ /* -------------------------------------------------------------------------------------------------- */ /* Intel® Decimal Floating-Point Math Library - Copyright (c) 2018, Intel Corp. */ /* -------------------------------------------------------------------------------------------------- */ mod common; dec_test!(bid128_ldexp_001, bid128_ldexp, 0, 0x00000000000000000000000000000000u128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_002, bid128_ldexp, 0, 0x00000000000000000000000000000000u128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_003, bid128_ldexp, 0, 0x00000000000000000000000000000000u128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_004, bid128_ldexp, 0, 0x00000000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_005, bid128_ldexp, 0, 0x00000000000000000000000000000001u128, 0 , 0x00000000000000000000000000000001u128, 0x00); // ulp =0.0000000000 dec_test!(bid128_ldexp_006, bid128_ldexp, 0, 0x00000000000000000000000000000001u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.1000000000 dec_test!(bid128_ldexp_007, bid128_ldexp, 0, 0x00000000000000000000000000000005u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.5000000000 dec_test!(bid128_ldexp_008, bid128_ldexp, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_009, bid128_ldexp, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_010, bid128_ldexp, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_011, bid128_ldexp, 0, 0x0001ed09bead87c0378d8e64ffffffffu128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_012, bid128_ldexp, 0, 0x003e0000000000000000000000000000u128, 0 , 0x003e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_013, bid128_ldexp, 0, 0x003e0000000000000000000000000000u128, -1 , 0x003c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_014, bid128_ldexp, 0, 0x003e0000000000000000000000000000u128, 1 , 0x00400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_015, bid128_ldexp, 0, 0x003e0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_016, bid128_ldexp, 0, 0x00840000000000000000000000000000u128, 0 , 0x00840000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_017, bid128_ldexp, 0, 0x00840000000000000000000000000000u128, -1 , 0x00820000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_018, bid128_ldexp, 0, 0x00840000000000000000000000000000u128, 1 , 0x00860000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_019, bid128_ldexp, 0, 0x00840000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_020, bid128_ldexp, 0, 0x2d240000000000000000000000000000u128, 0 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_021, bid128_ldexp, 0, 0x2d240000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_022, bid128_ldexp, 0, 0x2d240000000000000000000000000000u128, -1 , 0x2d220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_023, bid128_ldexp, 0, 0x2d240000000000000000000000000000u128, 1 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_024, bid128_ldexp, 0, 0x2d260000000000000000000000000000u128, 0 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_025, bid128_ldexp, 0, 0x2d260000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_026, bid128_ldexp, 0, 0x2d260000000000000000000000000000u128, -1 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_027, bid128_ldexp, 0, 0x2d260000000000000000000000000000u128, 1 , 0x2d280000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_028, bid128_ldexp, 0, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_029, bid128_ldexp, 0, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -1 , 0x2FFBED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_030, bid128_ldexp, 0, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x2FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_031, bid128_ldexp, 0, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 2147483647 , 0x78000000000000000000000000000000u128, 0x28); // ulp=0.00000 dec_test!(bid128_ldexp_032, bid128_ldexp, 0, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -2147483648, 0x00000000000000000000000000000000u128, 0x30); // ulp=0.0000000000 dec_test!(bid128_ldexp_033, bid128_ldexp, 0, 0x30200000000000000000000000000000u128, 0 , 0x30200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_034, bid128_ldexp, 0, 0x30200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_035, bid128_ldexp, 0, 0x30200000000000000000000000000000u128, -1 , 0x301e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_036, bid128_ldexp, 0, 0x30200000000000000000000000000000u128, 1 , 0x30220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_037, bid128_ldexp, 0, 0x33200000000000000000000000000000u128, 0 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_038, bid128_ldexp, 0, 0x33200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_039, bid128_ldexp, 0, 0x33200000000000000000000000000000u128, -1 , 0x331e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_040, bid128_ldexp, 0, 0x33200000000000000000000000000000u128, 1 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_041, bid128_ldexp, 0, 0x33220000000000000000000000000000u128, 0 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_042, bid128_ldexp, 0, 0x33220000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_043, bid128_ldexp, 0, 0x33220000000000000000000000000000u128, -1 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_044, bid128_ldexp, 0, 0x33220000000000000000000000000000u128, 1 , 0x33240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_045, bid128_ldexp, 0, 0x5ffa0000000000000000000000000000u128, 0 , 0x5ffa0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_046, bid128_ldexp, 0, 0x5ffa0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_047, bid128_ldexp, 0, 0x5ffa0000000000000000000000000000u128, -1 , 0x5ff80000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_048, bid128_ldexp, 0, 0x5ffa0000000000000000000000000000u128, 1 , 0x5ffc0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_049, bid128_ldexp, 0, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_050, bid128_ldexp, 0, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x78000000000000000000000000000000u128, 0x28); // ulp=0.0000000000 dec_test!(bid128_ldexp_051, bid128_ldexp, 0, 0x6003b75d7734cd9e1234567890123456u128, 0 , 0x000e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_052, bid128_ldexp, 0, 0x6003b75d7734cd9e1234567890123456u128, -1 , 0x000c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_053, bid128_ldexp, 0, 0x6003b75d7734cd9e1234567890123456u128, 1 , 0x00100000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_054, bid128_ldexp, 0, 0x6003b75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_055, bid128_ldexp, 0, 0x69dbb75d7734cd9e1234567890123456u128, 0 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_056, bid128_ldexp, 0, 0x69dbb75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_057, bid128_ldexp, 0, 0x69dbb75d7734cd9e1234567890123456u128, -1 , 0x276c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_058, bid128_ldexp, 0, 0x69dbb75d7734cd9e1234567890123456u128, 1 , 0x27700000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_059, bid128_ldexp, 0, 0x78000000000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_060, bid128_ldexp, 0, 0x78000000000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_061, bid128_ldexp, 0, 0x78000000000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_062, bid128_ldexp, 0, 0x78000000000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_063, bid128_ldexp, 0, 0x78000001000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_064, bid128_ldexp, 0, 0x78000001000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_065, bid128_ldexp, 0, 0x78000001000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_066, bid128_ldexp, 0, 0x78000001000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_067, bid128_ldexp, 0, 0x7c000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_068, bid128_ldexp, 0, 0x7c000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_069, bid128_ldexp, 0, 0x7c000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_070, bid128_ldexp, 0, 0x7c000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_071, bid128_ldexp, 0, 0x7c000001000000000000000000000000u128, 0 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_072, bid128_ldexp, 0, 0x7c000001000000000000000000000000u128, 12336256 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_073, bid128_ldexp, 0, 0x7c000001000000000000000000000000u128, -1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_074, bid128_ldexp, 0, 0x7c000001000000000000000000000000u128, 1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_075, bid128_ldexp, 0, 0x7e000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_076, bid128_ldexp, 0, 0x7e000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_077, bid128_ldexp, 0, 0x7e000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_078, bid128_ldexp, 0, 0x7e000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_079, bid128_ldexp, 0, 0x7e003fffffffefffffffffffffffffffu128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_080, bid128_ldexp, 0, 0x7e003fffffffefffffffffffffffffffu128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_081, bid128_ldexp, 0, 0x7e003fffffffefffffffffffffffffffu128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_082, bid128_ldexp, 0, 0x7e003fffffffefffffffffffffffffffu128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_083, bid128_ldexp, 0, 0x7ef00000000000000000000000000001u128, 0 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_084, bid128_ldexp, 0, 0x7ef00000000000000000000000000001u128, 12336256 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_085, bid128_ldexp, 0, 0x7ef00000000000000000000000000001u128, -1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_086, bid128_ldexp, 0, 0x7ef00000000000000000000000000001u128, 1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_087, bid128_ldexp, 0, 0xad240000000000000000000000000000u128, 0 , 0xad240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_088, bid128_ldexp, 0, 0xad240000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_089, bid128_ldexp, 0, 0xad240000000000000000000000000000u128, -1 , 0xad220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_090, bid128_ldexp, 0, 0xad240000000000000000000000000000u128, 1 , 0xad260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_091, bid128_ldexp, 0, 0xad3e0000000000000000000000000000u128, 0 , 0xad3e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_092, bid128_ldexp, 0, 0xad3e0000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_093, bid128_ldexp, 0, 0xad3e0000000000000000000000000000u128, -1 , 0xad3c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_094, bid128_ldexp, 0, 0xad3e0000000000000000000000000000u128, 1 , 0xad400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_095, bid128_ldexp, 0, 0xb0200000000000000000000000000000u128, 0 , 0xb0200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_096, bid128_ldexp, 0, 0xb0200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_097, bid128_ldexp, 0, 0xb0200000000000000000000000000000u128, -1 , 0xb01e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_098, bid128_ldexp, 0, 0xb0200000000000000000000000000000u128, 1 , 0xb0220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_099, bid128_ldexp, 0, 0xb3200000000000000000000000000000u128, 0 , 0xb3200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_100, bid128_ldexp, 0, 0xb3200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_101, bid128_ldexp, 0, 0xb3200000000000000000000000000000u128, -1 , 0xb31e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_102, bid128_ldexp, 0, 0xb3200000000000000000000000000000u128, 1 , 0xb3220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_103, bid128_ldexp, 1, 0x00000000000000000000000000000000u128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_104, bid128_ldexp, 1, 0x00000000000000000000000000000000u128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_105, bid128_ldexp, 1, 0x00000000000000000000000000000000u128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_106, bid128_ldexp, 1, 0x00000000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_107, bid128_ldexp, 1, 0x00000000000000000000000000000001u128, 0 , 0x00000000000000000000000000000001u128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_108, bid128_ldexp, 1, 0x00000000000000000000000000000001u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.1000000000 dec_test!(bid128_ldexp_109, bid128_ldexp, 1, 0x00000000000000000000000000000005u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.5000000000 dec_test!(bid128_ldexp_110, bid128_ldexp, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_111, bid128_ldexp, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_112, bid128_ldexp, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_113, bid128_ldexp, 1, 0x0001ed09bead87c0378d8e64ffffffffu128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_114, bid128_ldexp, 1, 0x003e0000000000000000000000000000u128, 0 , 0x003e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_115, bid128_ldexp, 1, 0x003e0000000000000000000000000000u128, -1 , 0x003c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_116, bid128_ldexp, 1, 0x003e0000000000000000000000000000u128, 1 , 0x00400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_117, bid128_ldexp, 1, 0x003e0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_118, bid128_ldexp, 1, 0x00840000000000000000000000000000u128, 0 , 0x00840000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_119, bid128_ldexp, 1, 0x00840000000000000000000000000000u128, -1 , 0x00820000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_120, bid128_ldexp, 1, 0x00840000000000000000000000000000u128, 1 , 0x00860000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_121, bid128_ldexp, 1, 0x00840000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_122, bid128_ldexp, 1, 0x2d240000000000000000000000000000u128, 0 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_123, bid128_ldexp, 1, 0x2d240000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_124, bid128_ldexp, 1, 0x2d240000000000000000000000000000u128, -1 , 0x2d220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_125, bid128_ldexp, 1, 0x2d240000000000000000000000000000u128, 1 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_126, bid128_ldexp, 1, 0x2d260000000000000000000000000000u128, 0 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_127, bid128_ldexp, 1, 0x2d260000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_128, bid128_ldexp, 1, 0x2d260000000000000000000000000000u128, -1 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_129, bid128_ldexp, 1, 0x2d260000000000000000000000000000u128, 1 , 0x2d280000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_130, bid128_ldexp, 1, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_131, bid128_ldexp, 1, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -1 , 0x2FFBED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_132, bid128_ldexp, 1, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x2FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_133, bid128_ldexp, 1, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 2147483647 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x28); // ulp=0.00000 dec_test!(bid128_ldexp_134, bid128_ldexp, 1, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -2147483648, 0x00000000000000000000000000000000u128, 0x30); // ulp=0.0000000000 dec_test!(bid128_ldexp_135, bid128_ldexp, 1, 0x30200000000000000000000000000000u128, 0 , 0x30200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_136, bid128_ldexp, 1, 0x30200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_137, bid128_ldexp, 1, 0x30200000000000000000000000000000u128, -1 , 0x301e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_138, bid128_ldexp, 1, 0x30200000000000000000000000000000u128, 1 , 0x30220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_139, bid128_ldexp, 1, 0x33200000000000000000000000000000u128, 0 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_140, bid128_ldexp, 1, 0x33200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_141, bid128_ldexp, 1, 0x33200000000000000000000000000000u128, -1 , 0x331e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_142, bid128_ldexp, 1, 0x33200000000000000000000000000000u128, 1 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_143, bid128_ldexp, 1, 0x33220000000000000000000000000000u128, 0 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_144, bid128_ldexp, 1, 0x33220000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_145, bid128_ldexp, 1, 0x33220000000000000000000000000000u128, -1 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_146, bid128_ldexp, 1, 0x33220000000000000000000000000000u128, 1 , 0x33240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_147, bid128_ldexp, 1, 0x5ffa0000000000000000000000000000u128, 0 , 0x5ffa0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_148, bid128_ldexp, 1, 0x5ffa0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_149, bid128_ldexp, 1, 0x5ffa0000000000000000000000000000u128, -1 , 0x5ff80000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_150, bid128_ldexp, 1, 0x5ffa0000000000000000000000000000u128, 1 , 0x5ffc0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_151, bid128_ldexp, 1, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_152, bid128_ldexp, 1, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x28); // ulp=0.0000000000 dec_test!(bid128_ldexp_153, bid128_ldexp, 1, 0x6003b75d7734cd9e1234567890123456u128, 0 , 0x000e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_154, bid128_ldexp, 1, 0x6003b75d7734cd9e1234567890123456u128, -1 , 0x000c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_155, bid128_ldexp, 1, 0x6003b75d7734cd9e1234567890123456u128, 1 , 0x00100000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_156, bid128_ldexp, 1, 0x6003b75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_157, bid128_ldexp, 1, 0x69dbb75d7734cd9e1234567890123456u128, 0 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_158, bid128_ldexp, 1, 0x69dbb75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_159, bid128_ldexp, 1, 0x69dbb75d7734cd9e1234567890123456u128, -1 , 0x276c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_160, bid128_ldexp, 1, 0x69dbb75d7734cd9e1234567890123456u128, 1 , 0x27700000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_161, bid128_ldexp, 1, 0x78000000000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_162, bid128_ldexp, 1, 0x78000000000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_163, bid128_ldexp, 1, 0x78000000000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_164, bid128_ldexp, 1, 0x78000000000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_165, bid128_ldexp, 1, 0x78000001000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_166, bid128_ldexp, 1, 0x78000001000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_167, bid128_ldexp, 1, 0x78000001000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_168, bid128_ldexp, 1, 0x78000001000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_169, bid128_ldexp, 1, 0x7c000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_170, bid128_ldexp, 1, 0x7c000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_171, bid128_ldexp, 1, 0x7c000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_172, bid128_ldexp, 1, 0x7c000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_173, bid128_ldexp, 1, 0x7c000001000000000000000000000000u128, 0 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_174, bid128_ldexp, 1, 0x7c000001000000000000000000000000u128, 12336256 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_175, bid128_ldexp, 1, 0x7c000001000000000000000000000000u128, -1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_176, bid128_ldexp, 1, 0x7c000001000000000000000000000000u128, 1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_177, bid128_ldexp, 1, 0x7e000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_178, bid128_ldexp, 1, 0x7e000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_179, bid128_ldexp, 1, 0x7e000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_180, bid128_ldexp, 1, 0x7e000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_181, bid128_ldexp, 1, 0x7e003fffffffefffffffffffffffffffu128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_182, bid128_ldexp, 1, 0x7e003fffffffefffffffffffffffffffu128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_183, bid128_ldexp, 1, 0x7e003fffffffefffffffffffffffffffu128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_184, bid128_ldexp, 1, 0x7e003fffffffefffffffffffffffffffu128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_185, bid128_ldexp, 1, 0x7ef00000000000000000000000000001u128, 0 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_186, bid128_ldexp, 1, 0x7ef00000000000000000000000000001u128, 12336256 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_187, bid128_ldexp, 1, 0x7ef00000000000000000000000000001u128, -1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_188, bid128_ldexp, 1, 0x7ef00000000000000000000000000001u128, 1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_189, bid128_ldexp, 1, 0xad240000000000000000000000000000u128, 0 , 0xad240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_190, bid128_ldexp, 1, 0xad240000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_191, bid128_ldexp, 1, 0xad240000000000000000000000000000u128, -1 , 0xad220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_192, bid128_ldexp, 1, 0xad240000000000000000000000000000u128, 1 , 0xad260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_193, bid128_ldexp, 1, 0xad3e0000000000000000000000000000u128, 0 , 0xad3e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_194, bid128_ldexp, 1, 0xad3e0000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_195, bid128_ldexp, 1, 0xad3e0000000000000000000000000000u128, -1 , 0xad3c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_196, bid128_ldexp, 1, 0xad3e0000000000000000000000000000u128, 1 , 0xad400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_197, bid128_ldexp, 1, 0xb0200000000000000000000000000000u128, 0 , 0xb0200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_198, bid128_ldexp, 1, 0xb0200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_199, bid128_ldexp, 1, 0xb0200000000000000000000000000000u128, -1 , 0xb01e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_200, bid128_ldexp, 1, 0xb0200000000000000000000000000000u128, 1 , 0xb0220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_201, bid128_ldexp, 1, 0xb3200000000000000000000000000000u128, 0 , 0xb3200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_202, bid128_ldexp, 1, 0xb3200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_203, bid128_ldexp, 1, 0xb3200000000000000000000000000000u128, -1 , 0xb31e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_204, bid128_ldexp, 1, 0xb3200000000000000000000000000000u128, 1 , 0xb3220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_205, bid128_ldexp, 2, 0x00000000000000000000000000000000u128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_206, bid128_ldexp, 2, 0x00000000000000000000000000000000u128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_207, bid128_ldexp, 2, 0x00000000000000000000000000000000u128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_208, bid128_ldexp, 2, 0x00000000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_209, bid128_ldexp, 2, 0x00000000000000000000000000000001u128, 0 , 0x00000000000000000000000000000001u128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_210, bid128_ldexp, 2, 0x00000000000000000000000000000001u128, -1 , 0x00000000000000000000000000000001u128, 0x30); // ulp=-.9000000000 dec_test!(bid128_ldexp_211, bid128_ldexp, 2, 0x00000000000000000000000000000005u128, -1 , 0x00000000000000000000000000000001u128, 0x30); // ulp=-.500000000 dec_test!(bid128_ldexp_212, bid128_ldexp, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_213, bid128_ldexp, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_214, bid128_ldexp, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_215, bid128_ldexp, 2, 0x0001ed09bead87c0378d8e64ffffffffu128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_216, bid128_ldexp, 2, 0x003e0000000000000000000000000000u128, 0 , 0x003e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_217, bid128_ldexp, 2, 0x003e0000000000000000000000000000u128, -1 , 0x003c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_218, bid128_ldexp, 2, 0x003e0000000000000000000000000000u128, 1 , 0x00400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_219, bid128_ldexp, 2, 0x003e0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_220, bid128_ldexp, 2, 0x00840000000000000000000000000000u128, 0 , 0x00840000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_221, bid128_ldexp, 2, 0x00840000000000000000000000000000u128, -1 , 0x00820000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_222, bid128_ldexp, 2, 0x00840000000000000000000000000000u128, 1 , 0x00860000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_223, bid128_ldexp, 2, 0x00840000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_224, bid128_ldexp, 2, 0x2d240000000000000000000000000000u128, 0 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_225, bid128_ldexp, 2, 0x2d240000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_226, bid128_ldexp, 2, 0x2d240000000000000000000000000000u128, -1 , 0x2d220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_227, bid128_ldexp, 2, 0x2d240000000000000000000000000000u128, 1 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_228, bid128_ldexp, 2, 0x2d260000000000000000000000000000u128, 0 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_229, bid128_ldexp, 2, 0x2d260000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_230, bid128_ldexp, 2, 0x2d260000000000000000000000000000u128, -1 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_231, bid128_ldexp, 2, 0x2d260000000000000000000000000000u128, 1 , 0x2d280000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_232, bid128_ldexp, 2, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_233, bid128_ldexp, 2, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -1 , 0x2FFBED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_234, bid128_ldexp, 2, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x2FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_235, bid128_ldexp, 2, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 2147483647 , 0x78000000000000000000000000000000u128, 0x28); // ulp=0.00000 dec_test!(bid128_ldexp_236, bid128_ldexp, 2, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -2147483648, 0x00000000000000000000000000000001u128, 0x30); // ulp=-1.000000000 dec_test!(bid128_ldexp_237, bid128_ldexp, 2, 0x30200000000000000000000000000000u128, 0 , 0x30200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_238, bid128_ldexp, 2, 0x30200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_239, bid128_ldexp, 2, 0x30200000000000000000000000000000u128, -1 , 0x301e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_240, bid128_ldexp, 2, 0x30200000000000000000000000000000u128, 1 , 0x30220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_241, bid128_ldexp, 2, 0x33200000000000000000000000000000u128, 0 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_242, bid128_ldexp, 2, 0x33200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_243, bid128_ldexp, 2, 0x33200000000000000000000000000000u128, -1 , 0x331e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_244, bid128_ldexp, 2, 0x33200000000000000000000000000000u128, 1 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_245, bid128_ldexp, 2, 0x33220000000000000000000000000000u128, 0 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_246, bid128_ldexp, 2, 0x33220000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_247, bid128_ldexp, 2, 0x33220000000000000000000000000000u128, -1 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_248, bid128_ldexp, 2, 0x33220000000000000000000000000000u128, 1 , 0x33240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_249, bid128_ldexp, 2, 0x5ffa0000000000000000000000000000u128, 0 , 0x5ffa0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_250, bid128_ldexp, 2, 0x5ffa0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_251, bid128_ldexp, 2, 0x5ffa0000000000000000000000000000u128, -1 , 0x5ff80000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_252, bid128_ldexp, 2, 0x5ffa0000000000000000000000000000u128, 1 , 0x5ffc0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_253, bid128_ldexp, 2, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_254, bid128_ldexp, 2, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x78000000000000000000000000000000u128, 0x28); // ulp=0.0000000000 dec_test!(bid128_ldexp_255, bid128_ldexp, 2, 0x6003b75d7734cd9e1234567890123456u128, 0 , 0x000e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_256, bid128_ldexp, 2, 0x6003b75d7734cd9e1234567890123456u128, -1 , 0x000c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_257, bid128_ldexp, 2, 0x6003b75d7734cd9e1234567890123456u128, 1 , 0x00100000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_258, bid128_ldexp, 2, 0x6003b75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_259, bid128_ldexp, 2, 0x69dbb75d7734cd9e1234567890123456u128, 0 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_260, bid128_ldexp, 2, 0x69dbb75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_261, bid128_ldexp, 2, 0x69dbb75d7734cd9e1234567890123456u128, -1 , 0x276c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_262, bid128_ldexp, 2, 0x69dbb75d7734cd9e1234567890123456u128, 1 , 0x27700000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_263, bid128_ldexp, 2, 0x78000000000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_264, bid128_ldexp, 2, 0x78000000000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_265, bid128_ldexp, 2, 0x78000000000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_266, bid128_ldexp, 2, 0x78000000000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_267, bid128_ldexp, 2, 0x78000001000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_268, bid128_ldexp, 2, 0x78000001000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_269, bid128_ldexp, 2, 0x78000001000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_270, bid128_ldexp, 2, 0x78000001000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_271, bid128_ldexp, 2, 0x7c000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_272, bid128_ldexp, 2, 0x7c000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_273, bid128_ldexp, 2, 0x7c000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_274, bid128_ldexp, 2, 0x7c000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_275, bid128_ldexp, 2, 0x7c000001000000000000000000000000u128, 0 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_276, bid128_ldexp, 2, 0x7c000001000000000000000000000000u128, 12336256 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_277, bid128_ldexp, 2, 0x7c000001000000000000000000000000u128, -1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_278, bid128_ldexp, 2, 0x7c000001000000000000000000000000u128, 1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_279, bid128_ldexp, 2, 0x7e000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_280, bid128_ldexp, 2, 0x7e000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_281, bid128_ldexp, 2, 0x7e000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_282, bid128_ldexp, 2, 0x7e000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_283, bid128_ldexp, 2, 0x7e003fffffffefffffffffffffffffffu128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_284, bid128_ldexp, 2, 0x7e003fffffffefffffffffffffffffffu128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_285, bid128_ldexp, 2, 0x7e003fffffffefffffffffffffffffffu128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_286, bid128_ldexp, 2, 0x7e003fffffffefffffffffffffffffffu128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_287, bid128_ldexp, 2, 0x7ef00000000000000000000000000001u128, 0 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_288, bid128_ldexp, 2, 0x7ef00000000000000000000000000001u128, 12336256 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_289, bid128_ldexp, 2, 0x7ef00000000000000000000000000001u128, -1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_290, bid128_ldexp, 2, 0x7ef00000000000000000000000000001u128, 1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_291, bid128_ldexp, 2, 0xad240000000000000000000000000000u128, 0 , 0xad240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_292, bid128_ldexp, 2, 0xad240000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_293, bid128_ldexp, 2, 0xad240000000000000000000000000000u128, -1 , 0xad220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_294, bid128_ldexp, 2, 0xad240000000000000000000000000000u128, 1 , 0xad260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_295, bid128_ldexp, 2, 0xad3e0000000000000000000000000000u128, 0 , 0xad3e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_296, bid128_ldexp, 2, 0xad3e0000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_297, bid128_ldexp, 2, 0xad3e0000000000000000000000000000u128, -1 , 0xad3c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_298, bid128_ldexp, 2, 0xad3e0000000000000000000000000000u128, 1 , 0xad400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_299, bid128_ldexp, 2, 0xb0200000000000000000000000000000u128, 0 , 0xb0200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_300, bid128_ldexp, 2, 0xb0200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_301, bid128_ldexp, 2, 0xb0200000000000000000000000000000u128, -1 , 0xb01e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_302, bid128_ldexp, 2, 0xb0200000000000000000000000000000u128, 1 , 0xb0220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_303, bid128_ldexp, 2, 0xb3200000000000000000000000000000u128, 0 , 0xb3200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_304, bid128_ldexp, 2, 0xb3200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_305, bid128_ldexp, 2, 0xb3200000000000000000000000000000u128, -1 , 0xb31e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_306, bid128_ldexp, 2, 0xb3200000000000000000000000000000u128, 1 , 0xb3220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_307, bid128_ldexp, 3, 0x00000000000000000000000000000000u128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_308, bid128_ldexp, 3, 0x00000000000000000000000000000000u128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_309, bid128_ldexp, 3, 0x00000000000000000000000000000000u128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_310, bid128_ldexp, 3, 0x00000000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_311, bid128_ldexp, 3, 0x00000000000000000000000000000001u128, 0 , 0x00000000000000000000000000000001u128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_312, bid128_ldexp, 3, 0x00000000000000000000000000000001u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.1000000000 dec_test!(bid128_ldexp_313, bid128_ldexp, 3, 0x00000000000000000000000000000005u128, -1 , 0x00000000000000000000000000000000u128, 0x30); // ulp=.5000000000 dec_test!(bid128_ldexp_314, bid128_ldexp, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_315, bid128_ldexp, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_316, bid128_ldexp, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_317, bid128_ldexp, 3, 0x0001ed09bead87c0378d8e64ffffffffu128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_318, bid128_ldexp, 3, 0x003e0000000000000000000000000000u128, 0 , 0x003e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_319, bid128_ldexp, 3, 0x003e0000000000000000000000000000u128, -1 , 0x003c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_320, bid128_ldexp, 3, 0x003e0000000000000000000000000000u128, 1 , 0x00400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_321, bid128_ldexp, 3, 0x003e0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_322, bid128_ldexp, 3, 0x00840000000000000000000000000000u128, 0 , 0x00840000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_323, bid128_ldexp, 3, 0x00840000000000000000000000000000u128, -1 , 0x00820000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_324, bid128_ldexp, 3, 0x00840000000000000000000000000000u128, 1 , 0x00860000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_325, bid128_ldexp, 3, 0x00840000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_326, bid128_ldexp, 3, 0x2d240000000000000000000000000000u128, 0 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_327, bid128_ldexp, 3, 0x2d240000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_328, bid128_ldexp, 3, 0x2d240000000000000000000000000000u128, -1 , 0x2d220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_329, bid128_ldexp, 3, 0x2d240000000000000000000000000000u128, 1 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_330, bid128_ldexp, 3, 0x2d260000000000000000000000000000u128, 0 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_331, bid128_ldexp, 3, 0x2d260000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_332, bid128_ldexp, 3, 0x2d260000000000000000000000000000u128, -1 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_333, bid128_ldexp, 3, 0x2d260000000000000000000000000000u128, 1 , 0x2d280000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_334, bid128_ldexp, 3, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_335, bid128_ldexp, 3, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -1 , 0x2FFBED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_336, bid128_ldexp, 3, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x2FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_337, bid128_ldexp, 3, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, 2147483647 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x28); // ulp=0.00000 dec_test!(bid128_ldexp_338, bid128_ldexp, 3, 0x2FFDED09BEAD87C0378D8E63FFFFFFFFu128, -2147483648, 0x00000000000000000000000000000000u128, 0x30); // ulp=0.0000000000 dec_test!(bid128_ldexp_339, bid128_ldexp, 3, 0x30200000000000000000000000000000u128, 0 , 0x30200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_340, bid128_ldexp, 3, 0x30200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_341, bid128_ldexp, 3, 0x30200000000000000000000000000000u128, -1 , 0x301e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_342, bid128_ldexp, 3, 0x30200000000000000000000000000000u128, 1 , 0x30220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_343, bid128_ldexp, 3, 0x33200000000000000000000000000000u128, 0 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_344, bid128_ldexp, 3, 0x33200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_345, bid128_ldexp, 3, 0x33200000000000000000000000000000u128, -1 , 0x331e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_346, bid128_ldexp, 3, 0x33200000000000000000000000000000u128, 1 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_347, bid128_ldexp, 3, 0x33220000000000000000000000000000u128, 0 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_348, bid128_ldexp, 3, 0x33220000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_349, bid128_ldexp, 3, 0x33220000000000000000000000000000u128, -1 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_350, bid128_ldexp, 3, 0x33220000000000000000000000000000u128, 1 , 0x33240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_351, bid128_ldexp, 3, 0x5ffa0000000000000000000000000000u128, 0 , 0x5ffa0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_352, bid128_ldexp, 3, 0x5ffa0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_353, bid128_ldexp, 3, 0x5ffa0000000000000000000000000000u128, -1 , 0x5ff80000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_354, bid128_ldexp, 3, 0x5ffa0000000000000000000000000000u128, 1 , 0x5ffc0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_355, bid128_ldexp, 3, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x00); // ulp=0.0000000000 dec_test!(bid128_ldexp_356, bid128_ldexp, 3, 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 1 , 0x5FFFED09BEAD87C0378D8E63FFFFFFFFu128, 0x28); // ulp=0.0000000000 dec_test!(bid128_ldexp_357, bid128_ldexp, 3, 0x6003b75d7734cd9e1234567890123456u128, 0 , 0x000e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_358, bid128_ldexp, 3, 0x6003b75d7734cd9e1234567890123456u128, -1 , 0x000c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_359, bid128_ldexp, 3, 0x6003b75d7734cd9e1234567890123456u128, 1 , 0x00100000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_360, bid128_ldexp, 3, 0x6003b75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_361, bid128_ldexp, 3, 0x69dbb75d7734cd9e1234567890123456u128, 0 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_362, bid128_ldexp, 3, 0x69dbb75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_363, bid128_ldexp, 3, 0x69dbb75d7734cd9e1234567890123456u128, -1 , 0x276c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_364, bid128_ldexp, 3, 0x69dbb75d7734cd9e1234567890123456u128, 1 , 0x27700000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_365, bid128_ldexp, 3, 0x78000000000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_366, bid128_ldexp, 3, 0x78000000000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_367, bid128_ldexp, 3, 0x78000000000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_368, bid128_ldexp, 3, 0x78000000000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_369, bid128_ldexp, 3, 0x78000001000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_370, bid128_ldexp, 3, 0x78000001000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_371, bid128_ldexp, 3, 0x78000001000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_372, bid128_ldexp, 3, 0x78000001000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_373, bid128_ldexp, 3, 0x7c000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_374, bid128_ldexp, 3, 0x7c000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_375, bid128_ldexp, 3, 0x7c000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_376, bid128_ldexp, 3, 0x7c000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_377, bid128_ldexp, 3, 0x7c000001000000000000000000000000u128, 0 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_378, bid128_ldexp, 3, 0x7c000001000000000000000000000000u128, 12336256 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_379, bid128_ldexp, 3, 0x7c000001000000000000000000000000u128, -1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_380, bid128_ldexp, 3, 0x7c000001000000000000000000000000u128, 1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_381, bid128_ldexp, 3, 0x7e000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_382, bid128_ldexp, 3, 0x7e000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_383, bid128_ldexp, 3, 0x7e000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_384, bid128_ldexp, 3, 0x7e000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_385, bid128_ldexp, 3, 0x7e003fffffffefffffffffffffffffffu128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_386, bid128_ldexp, 3, 0x7e003fffffffefffffffffffffffffffu128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_387, bid128_ldexp, 3, 0x7e003fffffffefffffffffffffffffffu128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_388, bid128_ldexp, 3, 0x7e003fffffffefffffffffffffffffffu128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_389, bid128_ldexp, 3, 0x7ef00000000000000000000000000001u128, 0 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_390, bid128_ldexp, 3, 0x7ef00000000000000000000000000001u128, 12336256 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_391, bid128_ldexp, 3, 0x7ef00000000000000000000000000001u128, -1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_392, bid128_ldexp, 3, 0x7ef00000000000000000000000000001u128, 1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_393, bid128_ldexp, 3, 0xad240000000000000000000000000000u128, 0 , 0xad240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_394, bid128_ldexp, 3, 0xad240000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_395, bid128_ldexp, 3, 0xad240000000000000000000000000000u128, -1 , 0xad220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_396, bid128_ldexp, 3, 0xad240000000000000000000000000000u128, 1 , 0xad260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_397, bid128_ldexp, 3, 0xad3e0000000000000000000000000000u128, 0 , 0xad3e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_398, bid128_ldexp, 3, 0xad3e0000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_399, bid128_ldexp, 3, 0xad3e0000000000000000000000000000u128, -1 , 0xad3c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_400, bid128_ldexp, 3, 0xad3e0000000000000000000000000000u128, 1 , 0xad400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_401, bid128_ldexp, 3, 0xb0200000000000000000000000000000u128, 0 , 0xb0200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_402, bid128_ldexp, 3, 0xb0200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_403, bid128_ldexp, 3, 0xb0200000000000000000000000000000u128, -1 , 0xb01e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_404, bid128_ldexp, 3, 0xb0200000000000000000000000000000u128, 1 , 0xb0220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_405, bid128_ldexp, 3, 0xb3200000000000000000000000000000u128, 0 , 0xb3200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_406, bid128_ldexp, 3, 0xb3200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_407, bid128_ldexp, 3, 0xb3200000000000000000000000000000u128, -1 , 0xb31e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_408, bid128_ldexp, 3, 0xb3200000000000000000000000000000u128, 1 , 0xb3220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_409, bid128_ldexp, 4, 0x00000000000000000000000000000000u128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_410, bid128_ldexp, 4, 0x00000000000000000000000000000000u128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_411, bid128_ldexp, 4, 0x00000000000000000000000000000000u128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_412, bid128_ldexp, 4, 0x00000000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_413, bid128_ldexp, 4, 0x00000000000000000000000000000005u128, -1 , 0x00000000000000000000000000000001u128, 0x30); // ulp=-.500000000 dec_test!(bid128_ldexp_414, bid128_ldexp, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, 0 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_415, bid128_ldexp, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, -1 , 0x00000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_416, bid128_ldexp, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, 1 , 0x00020000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_417, bid128_ldexp, 4, 0x0001ed09bead87c0378d8e64ffffffffu128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_418, bid128_ldexp, 4, 0x003e0000000000000000000000000000u128, 0 , 0x003e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_419, bid128_ldexp, 4, 0x003e0000000000000000000000000000u128, -1 , 0x003c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_420, bid128_ldexp, 4, 0x003e0000000000000000000000000000u128, 1 , 0x00400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_421, bid128_ldexp, 4, 0x003e0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_422, bid128_ldexp, 4, 0x00840000000000000000000000000000u128, 0 , 0x00840000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_423, bid128_ldexp, 4, 0x00840000000000000000000000000000u128, -1 , 0x00820000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_424, bid128_ldexp, 4, 0x00840000000000000000000000000000u128, 1 , 0x00860000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_425, bid128_ldexp, 4, 0x00840000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_426, bid128_ldexp, 4, 0x2d240000000000000000000000000000u128, 0 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_427, bid128_ldexp, 4, 0x2d240000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_428, bid128_ldexp, 4, 0x2d240000000000000000000000000000u128, -1 , 0x2d220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_429, bid128_ldexp, 4, 0x2d240000000000000000000000000000u128, 1 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_430, bid128_ldexp, 4, 0x2d260000000000000000000000000000u128, 0 , 0x2d260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_431, bid128_ldexp, 4, 0x2d260000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_432, bid128_ldexp, 4, 0x2d260000000000000000000000000000u128, -1 , 0x2d240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_433, bid128_ldexp, 4, 0x2d260000000000000000000000000000u128, 1 , 0x2d280000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_434, bid128_ldexp, 4, 0x30200000000000000000000000000000u128, 0 , 0x30200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_435, bid128_ldexp, 4, 0x30200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_436, bid128_ldexp, 4, 0x30200000000000000000000000000000u128, -1 , 0x301e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_437, bid128_ldexp, 4, 0x30200000000000000000000000000000u128, 1 , 0x30220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_438, bid128_ldexp, 4, 0x33200000000000000000000000000000u128, 0 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_439, bid128_ldexp, 4, 0x33200000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_440, bid128_ldexp, 4, 0x33200000000000000000000000000000u128, -1 , 0x331e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_441, bid128_ldexp, 4, 0x33200000000000000000000000000000u128, 1 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_442, bid128_ldexp, 4, 0x33220000000000000000000000000000u128, 0 , 0x33220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_443, bid128_ldexp, 4, 0x33220000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_444, bid128_ldexp, 4, 0x33220000000000000000000000000000u128, -1 , 0x33200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_445, bid128_ldexp, 4, 0x33220000000000000000000000000000u128, 1 , 0x33240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_446, bid128_ldexp, 4, 0x5ffa0000000000000000000000000000u128, 0 , 0x5ffa0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_447, bid128_ldexp, 4, 0x5ffa0000000000000000000000000000u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_448, bid128_ldexp, 4, 0x5ffa0000000000000000000000000000u128, -1 , 0x5ff80000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_449, bid128_ldexp, 4, 0x5ffa0000000000000000000000000000u128, 1 , 0x5ffc0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_450, bid128_ldexp, 4, 0x6003b75d7734cd9e1234567890123456u128, 0 , 0x000e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_451, bid128_ldexp, 4, 0x6003b75d7734cd9e1234567890123456u128, -1 , 0x000c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_452, bid128_ldexp, 4, 0x6003b75d7734cd9e1234567890123456u128, 1 , 0x00100000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_453, bid128_ldexp, 4, 0x6003b75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_454, bid128_ldexp, 4, 0x69dbb75d7734cd9e1234567890123456u128, 0 , 0x276e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_455, bid128_ldexp, 4, 0x69dbb75d7734cd9e1234567890123456u128, 12336256 , 0x5ffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_456, bid128_ldexp, 4, 0x69dbb75d7734cd9e1234567890123456u128, -1 , 0x276c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_457, bid128_ldexp, 4, 0x69dbb75d7734cd9e1234567890123456u128, 1 , 0x27700000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_458, bid128_ldexp, 4, 0x78000000000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_459, bid128_ldexp, 4, 0x78000000000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_460, bid128_ldexp, 4, 0x78000000000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_461, bid128_ldexp, 4, 0x78000000000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_462, bid128_ldexp, 4, 0x78000001000000000000000000000000u128, 0 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_463, bid128_ldexp, 4, 0x78000001000000000000000000000000u128, 12336256 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_464, bid128_ldexp, 4, 0x78000001000000000000000000000000u128, -1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_465, bid128_ldexp, 4, 0x78000001000000000000000000000000u128, 1 , 0x78000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_466, bid128_ldexp, 4, 0x7c000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_467, bid128_ldexp, 4, 0x7c000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_468, bid128_ldexp, 4, 0x7c000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_469, bid128_ldexp, 4, 0x7c000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_470, bid128_ldexp, 4, 0x7c000001000000000000000000000000u128, 0 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_471, bid128_ldexp, 4, 0x7c000001000000000000000000000000u128, 12336256 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_472, bid128_ldexp, 4, 0x7c000001000000000000000000000000u128, -1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_473, bid128_ldexp, 4, 0x7c000001000000000000000000000000u128, 1 , 0x7c000001000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_474, bid128_ldexp, 4, 0x7e000000000000000000000000000000u128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_475, bid128_ldexp, 4, 0x7e000000000000000000000000000000u128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_476, bid128_ldexp, 4, 0x7e000000000000000000000000000000u128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_477, bid128_ldexp, 4, 0x7e000000000000000000000000000000u128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_478, bid128_ldexp, 4, 0x7e003fffffffefffffffffffffffffffu128, 0 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_479, bid128_ldexp, 4, 0x7e003fffffffefffffffffffffffffffu128, 12336256 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_480, bid128_ldexp, 4, 0x7e003fffffffefffffffffffffffffffu128, -1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_481, bid128_ldexp, 4, 0x7e003fffffffefffffffffffffffffffu128, 1 , 0x7c000000000000000000000000000000u128, 0x01); dec_test!(bid128_ldexp_482, bid128_ldexp, 4, 0x7ef00000000000000000000000000001u128, 0 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_483, bid128_ldexp, 4, 0x7ef00000000000000000000000000001u128, 12336256 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_484, bid128_ldexp, 4, 0x7ef00000000000000000000000000001u128, -1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_485, bid128_ldexp, 4, 0x7ef00000000000000000000000000001u128, 1 , 0x7c000000000000000000000000000001u128, 0x01); dec_test!(bid128_ldexp_486, bid128_ldexp, 4, 0xad240000000000000000000000000000u128, 0 , 0xad240000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_487, bid128_ldexp, 4, 0xad240000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_488, bid128_ldexp, 4, 0xad240000000000000000000000000000u128, -1 , 0xad220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_489, bid128_ldexp, 4, 0xad240000000000000000000000000000u128, 1 , 0xad260000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_490, bid128_ldexp, 4, 0xad3e0000000000000000000000000000u128, 0 , 0xad3e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_491, bid128_ldexp, 4, 0xad3e0000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_492, bid128_ldexp, 4, 0xad3e0000000000000000000000000000u128, -1 , 0xad3c0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_493, bid128_ldexp, 4, 0xad3e0000000000000000000000000000u128, 1 , 0xad400000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_494, bid128_ldexp, 4, 0xb0200000000000000000000000000000u128, 0 , 0xb0200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_495, bid128_ldexp, 4, 0xb0200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_496, bid128_ldexp, 4, 0xb0200000000000000000000000000000u128, -1 , 0xb01e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_497, bid128_ldexp, 4, 0xb0200000000000000000000000000000u128, 1 , 0xb0220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_498, bid128_ldexp, 4, 0xb3200000000000000000000000000000u128, 0 , 0xb3200000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_499, bid128_ldexp, 4, 0xb3200000000000000000000000000000u128, 12336256 , 0xdffe0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_500, bid128_ldexp, 4, 0xb3200000000000000000000000000000u128, -1 , 0xb31e0000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_501, bid128_ldexp, 4, 0xb3200000000000000000000000000000u128, 1 , 0xb3220000000000000000000000000000u128, 0x00); dec_test!(bid128_ldexp_502, bid128_ldexp, 0, 0x48040000a0808000d5e8e106b3f52825u128, 67108864 , 0x78000000000000000000000000000000u128, 0x28); dec_test!(bid128_ldexp_503, bid128_ldexp, 0, 0x000020a000004800dee1fb6effefbb7fu128, 12288 , 0x5fff46400002d008b4d3d255ff5d52f6u128, 0x00);