1 ! RUN: llvm-mc %s -arch=sparcv9 -show-encoding | FileCheck %s 2 3 ! CHECK: fitos %f0, %f4 ! encoding: [0x89,0xa0,0x18,0x80] 4 ! CHECK: fitod %f0, %f4 ! encoding: [0x89,0xa0,0x19,0x00] 5 ! CHECK: fitoq %f0, %f4 ! encoding: [0x89,0xa0,0x19,0x80] 6 fitos %f0, %f4 7 fitod %f0, %f4 8 fitoq %f0, %f4 9 10 ! CHECK: fstoi %f0, %f4 ! encoding: [0x89,0xa0,0x1a,0x20] 11 ! CHECK: fdtoi %f0, %f4 ! encoding: [0x89,0xa0,0x1a,0x40] 12 ! CHECK: fqtoi %f0, %f4 ! encoding: [0x89,0xa0,0x1a,0x60] 13 fstoi %f0, %f4 14 fdtoi %f0, %f4 15 fqtoi %f0, %f4 16 17 ! CHECK: fstod %f0, %f4 ! encoding: [0x89,0xa0,0x19,0x20] 18 ! CHECK: fstoq %f0, %f4 ! encoding: [0x89,0xa0,0x19,0xa0] 19 fstod %f0, %f4 20 fstoq %f0, %f4 21 22 ! CHECK: fdtos %f0, %f4 ! encoding: [0x89,0xa0,0x18,0xc0] 23 ! CHECK: fdtoq %f0, %f4 ! encoding: [0x89,0xa0,0x19,0xc0] 24 fdtos %f0, %f4 25 fdtoq %f0, %f4 26 27 ! CHECK: fqtos %f0, %f4 ! encoding: [0x89,0xa0,0x18,0xe0] 28 ! CHECK: fqtod %f0, %f4 ! encoding: [0x89,0xa0,0x19,0x60] 29 fqtos %f0, %f4 30 fqtod %f0, %f4 31 32 ! CHECK: fmovs %f0, %f4 ! encoding: [0x89,0xa0,0x00,0x20] 33 ! CHECK: fmovd %f0, %f4 ! encoding: [0x89,0xa0,0x00,0x40] 34 ! CHECK: fmovq %f0, %f4 ! encoding: [0x89,0xa0,0x00,0x60] 35 fmovs %f0, %f4 36 fmovd %f0, %f4 37 fmovq %f0, %f4 38 39 ! CHECK: fnegs %f0, %f4 ! encoding: [0x89,0xa0,0x00,0xa0] 40 ! CHECK: fnegd %f0, %f4 ! encoding: [0x89,0xa0,0x00,0xc0] 41 ! CHECK: fnegq %f0, %f4 ! encoding: [0x89,0xa0,0x00,0xe0] 42 fnegs %f0, %f4 43 fnegd %f0, %f4 44 fnegq %f0, %f4 45 46 ! CHECK: fabss %f0, %f4 ! encoding: [0x89,0xa0,0x01,0x20] 47 ! CHECK: fabsd %f0, %f4 ! encoding: [0x89,0xa0,0x01,0x40] 48 ! CHECK: fabsq %f0, %f4 ! encoding: [0x89,0xa0,0x01,0x60] 49 fabss %f0, %f4 50 fabsd %f0, %f4 51 fabsq %f0, %f4 52 53 ! CHECK: fsqrts %f0, %f4 ! encoding: [0x89,0xa0,0x05,0x20] 54 ! CHECK: fsqrtd %f0, %f4 ! encoding: [0x89,0xa0,0x05,0x40] 55 ! CHECK: fsqrtq %f0, %f4 ! encoding: [0x89,0xa0,0x05,0x60] 56 fsqrts %f0, %f4 57 fsqrtd %f0, %f4 58 fsqrtq %f0, %f4 59 60 ! CHECK: fadds %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0x24] 61 ! CHECK: faddd %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0x44] 62 ! CHECK: faddq %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0x64] 63 fadds %f0, %f4, %f8 64 faddd %f0, %f4, %f8 65 faddq %f0, %f4, %f8 66 67 ! make sure we can handle V9 double registers and their aliased quad registers. 68 ! CHECK: faddd %f32, %f34, %f62 ! encoding: [0xbf,0xa0,0x48,0x43] 69 ! CHECK: faddq %f32, %f36, %f60 ! encoding: [0xbb,0xa0,0x48,0x65] 70 faddd %f32, %f34, %f62 71 faddq %f32, %f36, %f60 72 73 ! CHECK: fsubs %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0xa4] 74 ! CHECK: fsubd %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0xc4] 75 ! CHECK: fsubq %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x08,0xe4] 76 fsubs %f0, %f4, %f8 77 fsubd %f0, %f4, %f8 78 fsubq %f0, %f4, %f8 79 80 ! CHECK: fmuls %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0x24] 81 ! CHECK: fmuld %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0x44] 82 ! CHECK: fmulq %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0x64] 83 fmuls %f0, %f4, %f8 84 fmuld %f0, %f4, %f8 85 fmulq %f0, %f4, %f8 86 87 ! CHECK: fsmuld %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x0d,0x24] 88 ! CHECK: fdmulq %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x0d,0xc4] 89 fsmuld %f0, %f4, %f8 90 fdmulq %f0, %f4, %f8 91 92 ! CHECK: fdivs %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0xa4] 93 ! CHECK: fdivd %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0xc4] 94 ! CHECK: fdivq %f0, %f4, %f8 ! encoding: [0x91,0xa0,0x09,0xe4] 95 fdivs %f0, %f4, %f8 96 fdivd %f0, %f4, %f8 97 fdivq %f0, %f4, %f8 98 99 ! CHECK: fcmps %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0x24] 100 ! CHECK: fcmpd %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0x44] 101 ! CHECK: fcmpq %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0x64] 102 fcmps %f0, %f4 103 fcmpd %f0, %f4 104 fcmpq %f0, %f4 105 106 ! CHECK: fcmpes %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0xa4] 107 ! CHECK: fcmped %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0xc4] 108 ! CHECK: fcmpeq %f0, %f4 ! encoding: [0x81,0xa8,0x0a,0xe4] 109 fcmpes %f0, %f4 110 fcmped %f0, %f4 111 fcmpeq %f0, %f4 112 113 ! CHECK: fcmps %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0x24] 114 ! CHECK: fcmpd %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0x44] 115 ! CHECK: fcmpq %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0x64] 116 fcmps %fcc2, %f0, %f4 117 fcmpd %fcc2, %f0, %f4 118 fcmpq %fcc2, %f0, %f4 119 120 ! CHECK: fcmpes %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0xa4] 121 ! CHECK: fcmped %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0xc4] 122 ! CHECK: fcmpeq %fcc2, %f0, %f4 ! encoding: [0x85,0xa8,0x0a,0xe4] 123 fcmpes %fcc2, %f0, %f4 124 fcmped %fcc2, %f0, %f4 125 fcmpeq %fcc2, %f0, %f4 126 127 ! CHECK: fxtos %f0, %f4 ! encoding: [0x89,0xa0,0x10,0x80] 128 ! CHECK: fxtod %f0, %f4 ! encoding: [0x89,0xa0,0x11,0x00] 129 ! CHECK: fxtoq %f0, %f4 ! encoding: [0x89,0xa0,0x11,0x80] 130 fxtos %f0, %f4 131 fxtod %f0, %f4 132 fxtoq %f0, %f4 133 134 ! CHECK: fstox %f0, %f4 ! encoding: [0x89,0xa0,0x10,0x20] 135 ! CHECK: fdtox %f0, %f4 ! encoding: [0x89,0xa0,0x10,0x40] 136 ! CHECK: fqtox %f0, %f4 ! encoding: [0x89,0xa0,0x10,0x60] 137 fstox %f0, %f4 138 fdtox %f0, %f4 139 fqtox %f0, %f4 140 141