2 /* { dg-options "-O2" } */
7 main (int argc
, char** argv
)
16 val1
= vcreate_s64(UINT64_C(0xffffffff80008000));
17 val2
= vcreate_s64(UINT64_C(0x0000f38d00000000));
18 val3
= vcreate_s64(UINT64_C(0xffff7fff0000809b));
19 /* Expect: "val13" = 8000000000001553. */
20 val13
= vcreate_u64 (UINT64_C(0x8000000000001553));
21 /* Expect: "val14" = 0010 0000 0000 0002 0000 0000 0000 0000. */
22 val14
= vcombine_u64(vcgt_s64(vqrshl_s64(val1
, val2
),
23 vshr_n_s64(val3
, 18)),
24 vshr_n_u64(val13
, 11));
25 /* Should be 0000000000000000. */
26 got
= vgetq_lane_u64(val14
, 0);