[InstCombine] Signed saturation patterns
[llvm-core.git] / test / MC / AArch64 / neon-scalar-extract-narrow.s
blobe25224e386f08a5c19f887d001911aa15185d5d8
1 // RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
3 // Check that the assembler can handle the documented syntax for AArch64
5 //----------------------------------------------------------------------
6 // Scalar Signed Saturating Extract Unsigned Narrow
7 //----------------------------------------------------------------------
9 sqxtun b19, h14
10 sqxtun h21, s15
11 sqxtun s20, d12
13 // CHECK: sqxtun b19, h14 // encoding: [0xd3,0x29,0x21,0x7e]
14 // CHECK: sqxtun h21, s15 // encoding: [0xf5,0x29,0x61,0x7e]
15 // CHECK: sqxtun s20, d12 // encoding: [0x94,0x29,0xa1,0x7e]
17 //----------------------------------------------------------------------
18 // Scalar Signed Saturating Extract Signed Narrow
19 //----------------------------------------------------------------------
21 sqxtn b18, h18
22 sqxtn h20, s17
23 sqxtn s19, d14
25 // CHECK: sqxtn b18, h18 // encoding: [0x52,0x4a,0x21,0x5e]
26 // CHECK: sqxtn h20, s17 // encoding: [0x34,0x4a,0x61,0x5e]
27 // CHECK: sqxtn s19, d14 // encoding: [0xd3,0x49,0xa1,0x5e]
30 //----------------------------------------------------------------------
31 // Scalar Unsigned Saturating Extract Narrow
32 //----------------------------------------------------------------------
34 uqxtn b18, h18
35 uqxtn h20, s17
36 uqxtn s19, d14
38 // CHECK: uqxtn b18, h18 // encoding: [0x52,0x4a,0x21,0x7e]
39 // CHECK: uqxtn h20, s17 // encoding: [0x34,0x4a,0x61,0x7e]
40 // CHECK: uqxtn s19, d14 // encoding: [0xd3,0x49,0xa1,0x7e]