2 /* { dg-do compile } */
3 /* { dg-options "-march=armv8-a+crypto" } */
8 test_vsha256hq_u32 (uint32x4_t hash_abcd
, uint32x4_t hash_efgh
, uint32x4_t wk
)
10 return vsha256hq_u32 (hash_abcd
, hash_efgh
, wk
);
13 /* { dg-final { scan-assembler-times "sha256h\\tq" 1 } } */
16 test_vsha256h2q_u32 (uint32x4_t hash_efgh
, uint32x4_t hash_abcd
, uint32x4_t wk
)
18 return vsha256h2q_u32 (hash_efgh
, hash_abcd
, wk
);
21 /* { dg-final { scan-assembler-times "sha256h2\\tq" 1 } } */
24 test_vsha256su0q_u32 (uint32x4_t w0_3
, uint32x4_t w4_7
)
26 return vsha256su0q_u32 (w0_3
, w4_7
);
29 /* { dg-final { scan-assembler-times "sha256su0\\tv" 1 } } */
32 test_vsha256su1q_u32 (uint32x4_t tw0_3
, uint32x4_t w8_11
, uint32x4_t w12_15
)
34 return vsha256su1q_u32 (tw0_3
, w8_11
, w12_15
);
37 /* { dg-final { scan-assembler-times "sha256su1\\tv" 1 } } */
40 /* { dg-final { cleanup-saved-temps } } */