brintos

brintos / llvm-project-archived public Read only

0
0
Text · 24.0 KiB · ffa88e5 Raw
496 lines · plain
1// RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+neon,+fullfp16 -show-encoding < %s | FileCheck %s2 3// Check that the assembler can handle the documented syntax for AArch644 5//----------------------------------------------------------------------6// Vector Compare Mask Equal (Integer)7//----------------------------------------------------------------------8 9         cmeq v0.8b, v15.8b, v17.8b10         cmeq v1.16b, v31.16b, v8.16b11         cmeq v15.4h, v16.4h, v17.4h12         cmeq v5.8h, v6.8h, v7.8h13         cmeq v29.2s, v27.2s, v28.2s14         cmeq v9.4s, v7.4s, v8.4s15         cmeq v3.2d, v31.2d, v21.2d16 17// CHECK: cmeq v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x8d,0x31,0x2e]18// CHECK: cmeq v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x8f,0x28,0x6e]19// CHECK: cmeq v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x8e,0x71,0x2e]20// CHECK: cmeq v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x8c,0x67,0x6e]21// CHECK: cmeq v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x8f,0xbc,0x2e]22// CHECK: cmeq v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x8c,0xa8,0x6e]23// CHECK: cmeq v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x8f,0xf5,0x6e]24 25//----------------------------------------------------------------------26// Vector Compare Mask Higher or Same (Unsigned Integer)27// Vector Compare Mask Less or Same (Unsigned Integer)28// CMLS is alias for CMHS with operands reversed.29//----------------------------------------------------------------------30 31         cmhs v0.8b, v15.8b, v17.8b32         cmhs v1.16b, v31.16b, v8.16b33         cmhs v15.4h, v16.4h, v17.4h34         cmhs v5.8h, v6.8h, v7.8h35         cmhs v29.2s, v27.2s, v28.2s36         cmhs v9.4s, v7.4s, v8.4s37         cmhs v3.2d, v31.2d, v21.2d38 39         cmls v0.8b, v17.8b, v15.8b40         cmls v1.16b, v8.16b, v31.16b41         cmls v15.4h, v17.4h, v16.4h42         cmls v5.8h, v7.8h, v6.8h43         cmls v29.2s, v28.2s, v27.2s44         cmls v9.4s, v8.4s, v7.4s45         cmls v3.2d, v21.2d, v31.2d46 47// CHECK: cmhs v0.8b, v15.8b, v17.8b   // encoding: [0xe0,0x3d,0x31,0x2e]48// CHECK: cmhs v1.16b, v31.16b, v8.16b // encoding: [0xe1,0x3f,0x28,0x6e]49// CHECK: cmhs v15.4h, v16.4h, v17.4h  // encoding: [0x0f,0x3e,0x71,0x2e]50// CHECK: cmhs v5.8h, v6.8h, v7.8h     // encoding: [0xc5,0x3c,0x67,0x6e]51// CHECK: cmhs v29.2s, v27.2s, v28.2s  // encoding: [0x7d,0x3f,0xbc,0x2e]52// CHECK: cmhs v9.4s, v7.4s, v8.4s     // encoding: [0xe9,0x3c,0xa8,0x6e]53// CHECK: cmhs v3.2d, v31.2d, v21.2d   // encoding: [0xe3,0x3f,0xf5,0x6e]54// CHECK: cmhs v0.8b, v15.8b, v17.8b   // encoding: [0xe0,0x3d,0x31,0x2e]55// CHECK: cmhs v1.16b, v31.16b, v8.16b // encoding: [0xe1,0x3f,0x28,0x6e]56// CHECK: cmhs v15.4h, v16.4h, v17.4h  // encoding: [0x0f,0x3e,0x71,0x2e]57// CHECK: cmhs v5.8h, v6.8h, v7.8h     // encoding: [0xc5,0x3c,0x67,0x6e]58// CHECK: cmhs v29.2s, v27.2s, v28.2s  // encoding: [0x7d,0x3f,0xbc,0x2e]59// CHECK: cmhs v9.4s, v7.4s, v8.4s     // encoding: [0xe9,0x3c,0xa8,0x6e]60// CHECK: cmhs v3.2d, v31.2d, v21.2d   // encoding: [0xe3,0x3f,0xf5,0x6e]61 62//----------------------------------------------------------------------63// Vector Compare Mask Greater Than or Equal (Integer)64// Vector Compare Mask Less Than or Equal (Integer)65// CMLE is alias for CMGE with operands reversed.66//----------------------------------------------------------------------67 68         cmge v0.8b, v15.8b, v17.8b69         cmge v1.16b, v31.16b, v8.16b70         cmge v15.4h, v16.4h, v17.4h71         cmge v5.8h, v6.8h, v7.8h72         cmge v29.2s, v27.2s, v28.2s73         cmge v9.4s, v7.4s, v8.4s74         cmge v3.2d, v31.2d, v21.2d75 76         cmle v0.8b, v17.8b, v15.8b77         cmle v1.16b, v8.16b, v31.16b78         cmle v15.4h, v17.4h, v16.4h79         cmle v5.8h, v7.8h, v6.8h80         cmle v29.2s, v28.2s, v27.2s81         cmle v9.4s, v8.4s, v7.4s82         cmle v3.2d, v21.2d, v31.2d83 84// CHECK: cmge v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x3d,0x31,0x0e]85// CHECK: cmge v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x3f,0x28,0x4e]86// CHECK: cmge v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x3e,0x71,0x0e]87// CHECK: cmge v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x3c,0x67,0x4e]88// CHECK: cmge v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x3f,0xbc,0x0e]89// CHECK: cmge v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x3c,0xa8,0x4e]90// CHECK: cmge v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x3f,0xf5,0x4e]91// CHECK: cmge v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x3d,0x31,0x0e]92// CHECK: cmge v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x3f,0x28,0x4e]93// CHECK: cmge v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x3e,0x71,0x0e]94// CHECK: cmge v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x3c,0x67,0x4e]95// CHECK: cmge v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x3f,0xbc,0x0e]96// CHECK: cmge v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x3c,0xa8,0x4e]97// CHECK: cmge v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x3f,0xf5,0x4e]98 99//----------------------------------------------------------------------100// Vector Compare Mask Higher (Unsigned Integer)101// Vector Compare Mask Lower (Unsigned Integer)102// CMLO is alias for CMHI with operands reversed.103//----------------------------------------------------------------------104 105         cmhi v0.8b, v15.8b, v17.8b106         cmhi v1.16b, v31.16b, v8.16b107         cmhi v15.4h, v16.4h, v17.4h108         cmhi v5.8h, v6.8h, v7.8h109         cmhi v29.2s, v27.2s, v28.2s110         cmhi v9.4s, v7.4s, v8.4s111         cmhi v3.2d, v31.2d, v21.2d112 113         cmlo v0.8b, v17.8b, v15.8b114         cmlo v1.16b, v8.16b, v31.16b115         cmlo v15.4h, v17.4h, v16.4h116         cmlo v5.8h, v7.8h, v6.8h117         cmlo v29.2s, v28.2s, v27.2s118         cmlo v9.4s, v8.4s, v7.4s119         cmlo v3.2d, v21.2d, v31.2d120 121// CHECK: cmhi v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x35,0x31,0x2e]122// CHECK: cmhi v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x37,0x28,0x6e]123// CHECK: cmhi v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x36,0x71,0x2e]124// CHECK: cmhi v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x34,0x67,0x6e]125// CHECK: cmhi v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x37,0xbc,0x2e]126// CHECK: cmhi v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x34,0xa8,0x6e]127// CHECK: cmhi v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x37,0xf5,0x6e]128// CHECK: cmhi v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x35,0x31,0x2e]129// CHECK: cmhi v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x37,0x28,0x6e]130// CHECK: cmhi v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x36,0x71,0x2e]131// CHECK: cmhi v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x34,0x67,0x6e]132// CHECK: cmhi v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x37,0xbc,0x2e]133// CHECK: cmhi v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x34,0xa8,0x6e]134// CHECK: cmhi v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x37,0xf5,0x6e]135 136//----------------------------------------------------------------------137// Vector Compare Mask Greater Than (Integer)138// Vector Compare Mask Less Than (Integer)139// CMLT is alias for CMGT with operands reversed.140//----------------------------------------------------------------------141 142         cmgt v0.8b, v15.8b, v17.8b143         cmgt v1.16b, v31.16b, v8.16b144         cmgt v15.4h, v16.4h, v17.4h145         cmgt v5.8h, v6.8h, v7.8h146         cmgt v29.2s, v27.2s, v28.2s147         cmgt v9.4s, v7.4s, v8.4s148         cmgt v3.2d, v31.2d, v21.2d149 150         cmlt v0.8b, v17.8b, v15.8b151         cmlt v1.16b, v8.16b, v31.16b152         cmlt v15.4h, v17.4h, v16.4h153         cmlt v5.8h, v7.8h, v6.8h154         cmlt v29.2s, v28.2s, v27.2s155         cmlt v9.4s, v8.4s, v7.4s156         cmlt v3.2d, v21.2d, v31.2d157 158// CHECK: cmgt v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x35,0x31,0x0e]159// CHECK: cmgt v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x37,0x28,0x4e]160// CHECK: cmgt v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x36,0x71,0x0e]161// CHECK: cmgt v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x34,0x67,0x4e]162// CHECK: cmgt v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x37,0xbc,0x0e]163// CHECK: cmgt v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x34,0xa8,0x4e]164// CHECK: cmgt v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x37,0xf5,0x4e]165// CHECK: cmgt v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x35,0x31,0x0e]166// CHECK: cmgt v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x37,0x28,0x4e]167// CHECK: cmgt v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x36,0x71,0x0e]168// CHECK: cmgt v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x34,0x67,0x4e]169// CHECK: cmgt v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x37,0xbc,0x0e]170// CHECK: cmgt v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x34,0xa8,0x4e]171// CHECK: cmgt v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x37,0xf5,0x4e]172 173//----------------------------------------------------------------------174// Vector Compare Mask Bitwise Test (Integer)175//----------------------------------------------------------------------176 177         cmtst v0.8b, v15.8b, v17.8b178         cmtst v1.16b, v31.16b, v8.16b179         cmtst v15.4h, v16.4h, v17.4h180         cmtst v5.8h, v6.8h, v7.8h181         cmtst v29.2s, v27.2s, v28.2s182         cmtst v9.4s, v7.4s, v8.4s183         cmtst v3.2d, v31.2d, v21.2d184 185// CHECK: cmtst v0.8b, v15.8b, v17.8b    // encoding: [0xe0,0x8d,0x31,0x0e]186// CHECK: cmtst v1.16b, v31.16b, v8.16b  // encoding: [0xe1,0x8f,0x28,0x4e]187// CHECK: cmtst v15.4h, v16.4h, v17.4h   // encoding: [0x0f,0x8e,0x71,0x0e]188// CHECK: cmtst v5.8h, v6.8h, v7.8h      // encoding: [0xc5,0x8c,0x67,0x4e]189// CHECK: cmtst v29.2s, v27.2s, v28.2s   // encoding: [0x7d,0x8f,0xbc,0x0e]190// CHECK: cmtst v9.4s, v7.4s, v8.4s      // encoding: [0xe9,0x8c,0xa8,0x4e]191// CHECK: cmtst v3.2d, v31.2d, v21.2d    // encoding: [0xe3,0x8f,0xf5,0x4e]192 193//----------------------------------------------------------------------194// Vector Compare Mask Equal (Floating Point)195//----------------------------------------------------------------------196 197         fcmeq v0.4h, v31.4h, v16.4h198         fcmeq v4.8h, v7.8h, v15.8h199         fcmeq v0.2s, v31.2s, v16.2s200         fcmeq v4.4s, v7.4s, v15.4s201         fcmeq v29.2d, v2.2d, v5.2d202 203// CHECK: fcmeq   v0.4h, v31.4h, v16.4h   // encoding: [0xe0,0x27,0x50,0x0e]204// CHECK: fcmeq   v4.8h, v7.8h, v15.8h    // encoding: [0xe4,0x24,0x4f,0x4e]205// CHECK: fcmeq v0.2s, v31.2s, v16.2s // encoding: [0xe0,0xe7,0x30,0x0e]206// CHECK: fcmeq v4.4s, v7.4s, v15.4s  // encoding: [0xe4,0xe4,0x2f,0x4e]207// CHECK: fcmeq v29.2d, v2.2d, v5.2d  // encoding: [0x5d,0xe4,0x65,0x4e]208 209//----------------------------------------------------------------------210// Vector Compare Mask Greater Than Or Equal (Floating Point)211// Vector Compare Mask Less Than Or Equal (Floating Point)212// FCMLE is alias for FCMGE with operands reversed.213//----------------------------------------------------------------------214 215         fcmge v3.4h, v8.4h, v12.4h216         fcmge v31.8h, v29.8h, v28.8h217         fcmle v3.4h,  v12.4h, v8.4h218         fcmle v31.8h, v28.8h, v29.8h219         fcmge v31.4s, v29.4s, v28.4s220         fcmge v3.2s, v8.2s, v12.2s221         fcmge v17.2d, v15.2d, v13.2d222         fcmle v31.4s, v28.4s, v29.4s223         fcmle v3.2s,  v12.2s, v8.2s224         fcmle v17.2d, v13.2d, v15.2d225 226// CHECK: fcmge   v3.4h, v8.4h, v12.4h    // encoding: [0x03,0x25,0x4c,0x2e]227// CHECK: fcmge   v31.8h, v29.8h, v28.8h  // encoding: [0xbf,0x27,0x5c,0x6e]228// CHECK: fcmge   v3.4h, v8.4h, v12.4h    // encoding: [0x03,0x25,0x4c,0x2e]229// CHECK: fcmge   v31.8h, v29.8h, v28.8h  // encoding: [0xbf,0x27,0x5c,0x6e]230// CHECK: fcmge v31.4s, v29.4s, v28.4s  // encoding: [0xbf,0xe7,0x3c,0x6e]231// CHECK: fcmge v3.2s, v8.2s, v12.2s    // encoding: [0x03,0xe5,0x2c,0x2e]232// CHECK: fcmge v17.2d, v15.2d, v13.2d  // encoding: [0xf1,0xe5,0x6d,0x6e]233// CHECK: fcmge v31.4s, v29.4s, v28.4s  // encoding: [0xbf,0xe7,0x3c,0x6e]234// CHECK: fcmge v3.2s,  v8.2s, v12.2s   // encoding: [0x03,0xe5,0x2c,0x2e]235// CHECK: fcmge v17.2d, v15.2d, v13.2d  // encoding: [0xf1,0xe5,0x6d,0x6e]236 237//----------------------------------------------------------------------238// Vector Compare Mask Greater Than (Floating Point)239// Vector Compare Mask Less Than (Floating Point)240// FCMLT is alias for FCMGT with operands reversed.241//----------------------------------------------------------------------242 243         fcmgt v0.4h, v31.4h, v16.4h244         fcmgt v4.8h, v7.8h, v15.8h245         fcmlt v0.4h, v16.4h, v31.4h246         fcmlt v4.8h, v15.8h, v7.8h247         fcmgt v0.2s, v31.2s, v16.2s248         fcmgt v4.4s, v7.4s, v15.4s249         fcmgt v29.2d, v2.2d, v5.2d250         fcmlt v0.2s, v16.2s, v31.2s251         fcmlt v4.4s, v15.4s, v7.4s252         fcmlt v29.2d, v5.2d, v2.2d253 254// CHECK: fcmgt   v0.4h, v31.4h, v16.4h   // encoding: [0xe0,0x27,0xd0,0x2e]255// CHECK: fcmgt   v4.8h, v7.8h, v15.8h    // encoding: [0xe4,0x24,0xcf,0x6e]256// CHECK: fcmgt   v0.4h, v31.4h, v16.4h   // encoding: [0xe0,0x27,0xd0,0x2e]257// CHECK: fcmgt   v4.8h, v7.8h, v15.8h    // encoding: [0xe4,0x24,0xcf,0x6e]258// CHECK: fcmgt v0.2s, v31.2s, v16.2s  // encoding: [0xe0,0xe7,0xb0,0x2e]259// CHECK: fcmgt v4.4s, v7.4s, v15.4s   // encoding: [0xe4,0xe4,0xaf,0x6e]260// CHECK: fcmgt v29.2d, v2.2d, v5.2d   // encoding: [0x5d,0xe4,0xe5,0x6e]261// CHECK: fcmgt v0.2s, v31.2s, v16.2s  // encoding: [0xe0,0xe7,0xb0,0x2e]262// CHECK: fcmgt v4.4s, v7.4s, v15.4s   // encoding: [0xe4,0xe4,0xaf,0x6e]263// CHECK: fcmgt v29.2d, v2.2d, v5.2d   // encoding: [0x5d,0xe4,0xe5,0x6e]264 265 266//----------------------------------------------------------------------267// Vector Compare Mask Equal to Zero (Integer)268//----------------------------------------------------------------------269 270         cmeq v0.8b, v15.8b, #0271         cmeq v1.16b, v31.16b, #0272         cmeq v15.4h, v16.4h, #0273         cmeq v5.8h, v6.8h, #0274         cmeq v29.2s, v27.2s, #0275         cmeq v9.4s, v7.4s, #0276         cmeq v3.2d, v31.2d, #0277 278// CHECK: cmeq v0.8b, v15.8b, #{{0x0|0}}    // encoding: [0xe0,0x99,0x20,0x0e]279// CHECK: cmeq v1.16b, v31.16b, #{{0x0|0}}  // encoding: [0xe1,0x9b,0x20,0x4e]280// CHECK: cmeq v15.4h, v16.4h, #{{0x0|0}}   // encoding: [0x0f,0x9a,0x60,0x0e]281// CHECK: cmeq v5.8h, v6.8h, #{{0x0|0}}     // encoding: [0xc5,0x98,0x60,0x4e]282// CHECK: cmeq v29.2s, v27.2s, #{{0x0|0}}   // encoding: [0x7d,0x9b,0xa0,0x0e]283// CHECK: cmeq v9.4s, v7.4s, #{{0x0|0}}     // encoding: [0xe9,0x98,0xa0,0x4e]284// CHECK: cmeq v3.2d, v31.2d, #{{0x0|0}}    // encoding: [0xe3,0x9b,0xe0,0x4e]285 286//----------------------------------------------------------------------287// Vector Compare Mask Greater Than or Equal to Zero (Signed Integer)288//----------------------------------------------------------------------289         cmge v0.8b, v15.8b, #0290         cmge v1.16b, v31.16b, #0291         cmge v15.4h, v16.4h, #0292         cmge v5.8h, v6.8h, #0293         cmge v29.2s, v27.2s, #0294         cmge v17.4s, v20.4s, #0295         cmge v3.2d, v31.2d, #0296 297// CHECK: cmge v0.8b, v15.8b, #{{0x0|0}}    // encoding: [0xe0,0x89,0x20,0x2e]298// CHECK: cmge v1.16b, v31.16b, #{{0x0|0}}  // encoding: [0xe1,0x8b,0x20,0x6e]299// CHECK: cmge v15.4h, v16.4h, #{{0x0|0}}   // encoding: [0x0f,0x8a,0x60,0x2e]300// CHECK: cmge v5.8h, v6.8h, #{{0x0|0}}     // encoding: [0xc5,0x88,0x60,0x6e]301// CHECK: cmge v29.2s, v27.2s, #{{0x0|0}}   // encoding: [0x7d,0x8b,0xa0,0x2e]302// CHECK: cmge v17.4s, v20.4s, #{{0x0|0}}   // encoding: [0x91,0x8a,0xa0,0x6e]303// CHECK: cmge v3.2d, v31.2d, #{{0x0|0}}    // encoding: [0xe3,0x8b,0xe0,0x6e]304 305//----------------------------------------------------------------------306// Vector Compare Mask Greater Than Zero (Signed Integer)307//----------------------------------------------------------------------308 309         cmgt v0.8b, v15.8b, #0310         cmgt v1.16b, v31.16b, #0311         cmgt v15.4h, v16.4h, #0312         cmgt v5.8h, v6.8h, #0313         cmgt v29.2s, v27.2s, #0314         cmgt v9.4s, v7.4s, #0315         cmgt v3.2d, v31.2d, #0316 317// CHECK: cmgt v0.8b, v15.8b, #{{0x0|0}}    // encoding: [0xe0,0x89,0x20,0x0e]318// CHECK: cmgt v1.16b, v31.16b, #{{0x0|0}}  // encoding: [0xe1,0x8b,0x20,0x4e]319// CHECK: cmgt v15.4h, v16.4h, #{{0x0|0}}   // encoding: [0x0f,0x8a,0x60,0x0e]320// CHECK: cmgt v5.8h, v6.8h, #{{0x0|0}}     // encoding: [0xc5,0x88,0x60,0x4e]321// CHECK: cmgt v29.2s, v27.2s, #{{0x0|0}}   // encoding: [0x7d,0x8b,0xa0,0x0e]322// CHECK: cmgt v9.4s, v7.4s, #{{0x0|0}}     // encoding: [0xe9,0x88,0xa0,0x4e]323// CHECK: cmgt v3.2d, v31.2d, #{{0x0|0}}    // encoding: [0xe3,0x8b,0xe0,0x4e]324 325//----------------------------------------------------------------------326// Vector Compare Mask Less Than or Equal To Zero (Signed Integer)327//----------------------------------------------------------------------328         cmle v0.8b, v15.8b, #0329         cmle v1.16b, v31.16b, #0330         cmle v15.4h, v16.4h, #0331         cmle v5.8h, v6.8h, #0332         cmle v29.2s, v27.2s, #0333         cmle v9.4s, v7.4s, #0334         cmle v3.2d, v31.2d, #0335 336// CHECK: cmle v0.8b, v15.8b, #{{0x0|0}}    // encoding: [0xe0,0x99,0x20,0x2e]337// CHECK: cmle v1.16b, v31.16b, #{{0x0|0}}  // encoding: [0xe1,0x9b,0x20,0x6e]338// CHECK: cmle v15.4h, v16.4h, #{{0x0|0}}   // encoding: [0x0f,0x9a,0x60,0x2e]339// CHECK: cmle v5.8h, v6.8h, #{{0x0|0}}     // encoding: [0xc5,0x98,0x60,0x6e]340// CHECK: cmle v29.2s, v27.2s, #{{0x0|0}}   // encoding: [0x7d,0x9b,0xa0,0x2e]341// CHECK: cmle v9.4s, v7.4s, #{{0x0|0}}     // encoding: [0xe9,0x98,0xa0,0x6e]342// CHECK: cmle v3.2d, v31.2d, #{{0x0|0}}    // encoding: [0xe3,0x9b,0xe0,0x6e]343 344//----------------------------------------------------------------------345// Vector Compare Mask Less Than Zero (Signed Integer)346//----------------------------------------------------------------------347         cmlt v0.8b, v15.8b, #0348         cmlt v1.16b, v31.16b, #0349         cmlt v15.4h, v16.4h, #0350         cmlt v5.8h, v6.8h, #0351         cmlt v29.2s, v27.2s, #0352         cmlt v9.4s, v7.4s, #0353         cmlt v3.2d, v31.2d, #0354 355// CHECK: cmlt v0.8b, v15.8b, #{{0x0|0}}    // encoding: [0xe0,0xa9,0x20,0x0e]356// CHECK: cmlt v1.16b, v31.16b, #{{0x0|0}}  // encoding: [0xe1,0xab,0x20,0x4e]357// CHECK: cmlt v15.4h, v16.4h, #{{0x0|0}}   // encoding: [0x0f,0xaa,0x60,0x0e]358// CHECK: cmlt v5.8h, v6.8h, #{{0x0|0}}     // encoding: [0xc5,0xa8,0x60,0x4e]359// CHECK: cmlt v29.2s, v27.2s, #{{0x0|0}}   // encoding: [0x7d,0xab,0xa0,0x0e]360// CHECK: cmlt v9.4s, v7.4s, #{{0x0|0}}     // encoding: [0xe9,0xa8,0xa0,0x4e]361// CHECK: cmlt v3.2d, v31.2d, #{{0x0|0}}    // encoding: [0xe3,0xab,0xe0,0x4e]362 363//----------------------------------------------------------------------364// Vector Compare Mask Equal to Zero (Floating Point)365//----------------------------------------------------------------------366         fcmeq v0.4h, v31.4h, #0.0367         fcmeq v4.8h, v7.8h, #0.0368         fcmeq v0.2s, v31.2s, #0.0369         fcmeq v4.4s, v7.4s, #0.0370         fcmeq v29.2d, v2.2d, #0.0371         fcmeq v0.4h, v31.4h, #0372         fcmeq v4.8h, v7.8h, #0373         fcmeq v0.2s, v31.2s, #0374         fcmeq v4.4s, v7.4s, #0375         fcmeq v29.2d, v2.2d, #0376 377// CHECK: fcmeq   v0.4h, v31.4h, #0.0     // encoding: [0xe0,0xdb,0xf8,0x0e]378// CHECK: fcmeq   v4.8h, v7.8h, #0.0      // encoding: [0xe4,0xd8,0xf8,0x4e]379// CHECK: fcmeq v0.2s, v31.2s, #0.0  // encoding: [0xe0,0xdb,0xa0,0x0e]380// CHECK: fcmeq v4.4s, v7.4s, #0.0   // encoding: [0xe4,0xd8,0xa0,0x4e]381// CHECK: fcmeq v29.2d, v2.2d, #0.0  // encoding: [0x5d,0xd8,0xe0,0x4e]382// CHECK: fcmeq   v0.4h, v31.4h, #0.0     // encoding: [0xe0,0xdb,0xf8,0x0e]383// CHECK: fcmeq   v4.8h, v7.8h, #0.0      // encoding: [0xe4,0xd8,0xf8,0x4e]384// CHECK: fcmeq v0.2s, v31.2s, #0.0  // encoding: [0xe0,0xdb,0xa0,0x0e]385// CHECK: fcmeq v4.4s, v7.4s, #0.0   // encoding: [0xe4,0xd8,0xa0,0x4e]386// CHECK: fcmeq v29.2d, v2.2d, #0.0  // encoding: [0x5d,0xd8,0xe0,0x4e]387 388//----------------------------------------------------------------------389// Vector Compare Mask Greater Than or Equal to Zero (Floating Point)390//----------------------------------------------------------------------391         fcmge v3.4h, v8.4h, #0.0392         fcmge v31.8h, v29.8h, #0.0393         fcmge v31.4s, v29.4s, #0.0394         fcmge v3.2s, v8.2s, #0.0395         fcmge v17.2d, v15.2d, #0.0396         fcmge v3.4h, v8.4h, #0397         fcmge v31.8h, v29.8h, #0398         fcmge v31.4s, v29.4s, #0399         fcmge v3.2s, v8.2s, #0400         fcmge v17.2d, v15.2d, #0401 402// CHECK: fcmge   v3.4h, v8.4h, #0.0      // encoding: [0x03,0xc9,0xf8,0x2e]403// CHECK: fcmge   v31.8h, v29.8h, #0.0    // encoding: [0xbf,0xcb,0xf8,0x6e]404// CHECK: fcmge v31.4s, v29.4s, #0.0  // encoding: [0xbf,0xcb,0xa0,0x6e]405// CHECK: fcmge v3.2s, v8.2s, #0.0    // encoding: [0x03,0xc9,0xa0,0x2e]406// CHECK: fcmge v17.2d, v15.2d, #0.0   // encoding: [0xf1,0xc9,0xe0,0x6e]407// CHECK: fcmge   v3.4h, v8.4h, #0.0      // encoding: [0x03,0xc9,0xf8,0x2e]408// CHECK: fcmge   v31.8h, v29.8h, #0.0    // encoding: [0xbf,0xcb,0xf8,0x6e]409// CHECK: fcmge v31.4s, v29.4s, #0.0  // encoding: [0xbf,0xcb,0xa0,0x6e]410// CHECK: fcmge v3.2s, v8.2s, #0.0    // encoding: [0x03,0xc9,0xa0,0x2e]411// CHECK: fcmge v17.2d, v15.2d, #0.0   // encoding: [0xf1,0xc9,0xe0,0x6e]412 413//----------------------------------------------------------------------414// Vector Compare Mask Greater Than Zero (Floating Point)415//----------------------------------------------------------------------416         fcmgt v0.4h, v31.4h, #0.0417         fcmgt v4.8h, v7.8h, #0.0418         fcmgt v0.2s, v31.2s, #0.0419         fcmgt v4.4s, v7.4s, #0.0420         fcmgt v29.2d, v2.2d, #0.0421         fcmgt v0.4h, v31.4h, #0422         fcmgt v4.8h, v7.8h, #0423         fcmgt v0.2s, v31.2s, #0424         fcmgt v4.4s, v7.4s, #0425         fcmgt v29.2d, v2.2d, #0426 427// CHECK: fcmgt   v0.4h, v31.4h, #0.0     // encoding: [0xe0,0xcb,0xf8,0x0e]428// CHECK: fcmgt   v4.8h, v7.8h, #0.0      // encoding: [0xe4,0xc8,0xf8,0x4e]429// CHECK: fcmgt v0.2s, v31.2s, #0.0   // encoding: [0xe0,0xcb,0xa0,0x0e]430// CHECK: fcmgt v4.4s, v7.4s, #0.0    // encoding: [0xe4,0xc8,0xa0,0x4e]431// CHECK: fcmgt v29.2d, v2.2d, #0.0   // encoding: [0x5d,0xc8,0xe0,0x4e]432// CHECK: fcmgt   v0.4h, v31.4h, #0.0     // encoding: [0xe0,0xcb,0xf8,0x0e]433// CHECK: fcmgt   v4.8h, v7.8h, #0.0      // encoding: [0xe4,0xc8,0xf8,0x4e]434// CHECK: fcmgt v0.2s, v31.2s, #0.0   // encoding: [0xe0,0xcb,0xa0,0x0e]435// CHECK: fcmgt v4.4s, v7.4s, #0.0    // encoding: [0xe4,0xc8,0xa0,0x4e]436// CHECK: fcmgt v29.2d, v2.2d, #0.0   // encoding: [0x5d,0xc8,0xe0,0x4e]437 438//----------------------------------------------------------------------439// Vector Compare Mask Less Than or Equal To Zero (Floating Point)440//----------------------------------------------------------------------441         fcmle v3.4h, v20.4h, #0.0442         fcmle v1.8h, v8.8h, #0.0443         fcmle v1.4s, v8.4s, #0.0444         fcmle v3.2s, v20.2s, #0.0445         fcmle v7.2d, v13.2d, #0.0446         fcmle v3.4h, v20.4h, #0447         fcmle v1.8h, v8.8h, #0448         fcmle v1.4s, v8.4s, #0449         fcmle v3.2s, v20.2s, #0450         fcmle v7.2d, v13.2d, #0451 452// CHECK: fcmle   v3.4h, v20.4h, #0.0     // encoding: [0x83,0xda,0xf8,0x2e]453// CHECK: fcmle   v1.8h, v8.8h, #0.0      // encoding: [0x01,0xd9,0xf8,0x6e]454// CHECK: fcmle v1.4s, v8.4s, #0.0   // encoding: [0x01,0xd9,0xa0,0x6e]455// CHECK: fcmle v3.2s, v20.2s, #0.0  // encoding: [0x83,0xda,0xa0,0x2e]456// CHECK: fcmle v7.2d, v13.2d, #0.0  // encoding: [0xa7,0xd9,0xe0,0x6e]457// CHECK: fcmle   v3.4h, v20.4h, #0.0     // encoding: [0x83,0xda,0xf8,0x2e]458// CHECK: fcmle   v1.8h, v8.8h, #0.0      // encoding: [0x01,0xd9,0xf8,0x6e]459// CHECK: fcmle v1.4s, v8.4s, #0.0   // encoding: [0x01,0xd9,0xa0,0x6e]460// CHECK: fcmle v3.2s, v20.2s, #0.0  // encoding: [0x83,0xda,0xa0,0x2e]461// CHECK: fcmle v7.2d, v13.2d, #0.0  // encoding: [0xa7,0xd9,0xe0,0x6e]462 463//----------------------------------------------------------------------464// Vector Compare Mask Less Than Zero (Floating Point)465//----------------------------------------------------------------------466         fcmlt v16.4h, v2.4h, #0.0467         fcmlt v15.8h, v4.8h, #0.0468         fcmlt v16.2s, v2.2s, #0.0469         fcmlt v15.4s, v4.4s, #0.0470         fcmlt v5.2d, v29.2d, #0.0471         fcmlt v16.4h, v2.4h, #0472         fcmlt v15.8h, v4.8h, #0473         fcmlt v16.2s, v2.2s, #0474         fcmlt v15.4s, v4.4s, #0475         fcmlt v5.2d, v29.2d, #0476 477// CHECK: fcmlt   v16.4h, v2.4h, #0.0     // encoding: [0x50,0xe8,0xf8,0x0e]478// CHECK: fcmlt   v15.8h, v4.8h, #0.0     // encoding: [0x8f,0xe8,0xf8,0x4e]479// CHECK: fcmlt v16.2s, v2.2s, #0.0   // encoding: [0x50,0xe8,0xa0,0x0e]480// CHECK: fcmlt v15.4s, v4.4s, #0.0   // encoding: [0x8f,0xe8,0xa0,0x4e]481// CHECK: fcmlt v5.2d, v29.2d, #0.0   // encoding: [0xa5,0xeb,0xe0,0x4e]482// CHECK: fcmlt   v16.4h, v2.4h, #0.0     // encoding: [0x50,0xe8,0xf8,0x0e]483// CHECK: fcmlt   v15.8h, v4.8h, #0.0     // encoding: [0x8f,0xe8,0xf8,0x4e]484// CHECK: fcmlt v16.2s, v2.2s, #0.0   // encoding: [0x50,0xe8,0xa0,0x0e]485// CHECK: fcmlt v15.4s, v4.4s, #0.0   // encoding: [0x8f,0xe8,0xa0,0x4e]486// CHECK: fcmlt v5.2d, v29.2d, #0.0   // encoding: [0xa5,0xeb,0xe0,0x4e]487 488 489 490 491 492 493 494 495 496