1// RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon -show-encoding < %s | FileCheck %s
2
3// Check that the assembler can handle the documented syntax for AArch64
4
5//----------------------------------------------------------------------
6// Vector Reciprocal Square Root Step (Floating Point)
7//----------------------------------------------------------------------
8         frsqrts v0.2s, v31.2s, v16.2s
9         frsqrts v4.4s, v7.4s, v15.4s
10         frsqrts v29.2d, v2.2d, v5.2d
11
12// CHECK: frsqrts v0.2s, v31.2s, v16.2s // encoding: [0xe0,0xff,0xb0,0x0e]
13// CHECK: frsqrts v4.4s, v7.4s, v15.4s  // encoding: [0xe4,0xfc,0xaf,0x4e]
14// CHECK: frsqrts v29.2d, v2.2d, v5.2d  // encoding: [0x5d,0xfc,0xe5,0x4e]
15
16//----------------------------------------------------------------------
17// Vector Reciprocal Step (Floating Point)
18//----------------------------------------------------------------------
19         frecps v31.4s, v29.4s, v28.4s
20         frecps v3.2s, v8.2s, v12.2s
21         frecps v17.2d, v15.2d, v13.2d
22
23// CHECK: frecps v31.4s, v29.4s, v28.4s  // encoding: [0xbf,0xff,0x3c,0x4e]
24// CHECK: frecps v3.2s, v8.2s, v12.2s    // encoding: [0x03,0xfd,0x2c,0x0e]
25// CHECK: frecps v17.2d, v15.2d, v13.2d  // encoding: [0xf1,0xfd,0x6d,0x4e]
26
27
28