1 // RUN: llvm-mc -triple i386-unknown-unknown --show-encoding %s | FileCheck %s 2 3 // CHECK: sha1msg1 -485498096(%edx,%eax,4), %xmm1 4 // CHECK: encoding: [0x0f,0x38,0xc9,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 5 sha1msg1 -485498096(%edx,%eax,4), %xmm1 6 7 // CHECK: sha1msg1 485498096(%edx,%eax,4), %xmm1 8 // CHECK: encoding: [0x0f,0x38,0xc9,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 9 sha1msg1 485498096(%edx,%eax,4), %xmm1 10 11 // CHECK: sha1msg1 485498096(%edx), %xmm1 12 // CHECK: encoding: [0x0f,0x38,0xc9,0x8a,0xf0,0x1c,0xf0,0x1c] 13 sha1msg1 485498096(%edx), %xmm1 14 15 // CHECK: sha1msg1 485498096, %xmm1 16 // CHECK: encoding: [0x0f,0x38,0xc9,0x0d,0xf0,0x1c,0xf0,0x1c] 17 sha1msg1 485498096, %xmm1 18 19 // CHECK: sha1msg1 64(%edx,%eax), %xmm1 20 // CHECK: encoding: [0x0f,0x38,0xc9,0x4c,0x02,0x40] 21 sha1msg1 64(%edx,%eax), %xmm1 22 23 // CHECK: sha1msg1 (%edx), %xmm1 24 // CHECK: encoding: [0x0f,0x38,0xc9,0x0a] 25 sha1msg1 (%edx), %xmm1 26 27 // CHECK: sha1msg1 %xmm1, %xmm1 28 // CHECK: encoding: [0x0f, 29 sha1msg1 %xmm1, %xmm1 30 31 // CHECK: sha1msg1 %xmm1, %xmm1 32 // CHECK: encoding: [0x0f,0x38,0xc9,0xc9] 33 sha1msg1 %xmm1, %xmm1 34 35 // CHECK: sha1msg2 -485498096(%edx,%eax,4), %xmm1 36 // CHECK: encoding: [0x0f,0x38,0xca,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 37 sha1msg2 -485498096(%edx,%eax,4), %xmm1 38 39 // CHECK: sha1msg2 485498096(%edx,%eax,4), %xmm1 40 // CHECK: encoding: [0x0f,0x38,0xca,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 41 sha1msg2 485498096(%edx,%eax,4), %xmm1 42 43 // CHECK: sha1msg2 485498096(%edx), %xmm1 44 // CHECK: encoding: [0x0f,0x38,0xca,0x8a,0xf0,0x1c,0xf0,0x1c] 45 sha1msg2 485498096(%edx), %xmm1 46 47 // CHECK: sha1msg2 485498096, %xmm1 48 // CHECK: encoding: [0x0f,0x38,0xca,0x0d,0xf0,0x1c,0xf0,0x1c] 49 sha1msg2 485498096, %xmm1 50 51 // CHECK: sha1msg2 64(%edx,%eax), %xmm1 52 // CHECK: encoding: [0x0f,0x38,0xca,0x4c,0x02,0x40] 53 sha1msg2 64(%edx,%eax), %xmm1 54 55 // CHECK: sha1msg2 (%edx), %xmm1 56 // CHECK: encoding: [0x0f,0x38,0xca,0x0a] 57 sha1msg2 (%edx), %xmm1 58 59 // CHECK: sha1msg2 %xmm1, %xmm1 60 // CHECK: encoding: [0x0f,0x38,0xca,0xc9] 61 sha1msg2 %xmm1, %xmm1 62 63 // CHECK: sha1nexte -485498096(%edx,%eax,4), %xmm1 64 // CHECK: encoding: [0x0f,0x38,0xc8,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 65 sha1nexte -485498096(%edx,%eax,4), %xmm1 66 67 // CHECK: sha1nexte 485498096(%edx,%eax,4), %xmm1 68 // CHECK: encoding: [0x0f,0x38,0xc8,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 69 sha1nexte 485498096(%edx,%eax,4), %xmm1 70 71 // CHECK: sha1nexte 485498096(%edx), %xmm1 72 // CHECK: encoding: [0x0f,0x38,0xc8,0x8a,0xf0,0x1c,0xf0,0x1c] 73 sha1nexte 485498096(%edx), %xmm1 74 75 // CHECK: sha1nexte 485498096, %xmm1 76 // CHECK: encoding: [0x0f,0x38,0xc8,0x0d,0xf0,0x1c,0xf0,0x1c] 77 sha1nexte 485498096, %xmm1 78 79 // CHECK: sha1nexte 64(%edx,%eax), %xmm1 80 // CHECK: encoding: [0x0f,0x38,0xc8,0x4c,0x02,0x40] 81 sha1nexte 64(%edx,%eax), %xmm1 82 83 // CHECK: sha1nexte (%edx), %xmm1 84 // CHECK: encoding: [0x0f,0x38,0xc8,0x0a] 85 sha1nexte (%edx), %xmm1 86 87 // CHECK: sha1nexte %xmm1, %xmm1 88 // CHECK: encoding: [0x0f,0x38,0xc8,0xc9] 89 sha1nexte %xmm1, %xmm1 90 91 // CHECK: sha1rnds4 $0, -485498096(%edx,%eax,4), %xmm1 92 // CHECK: encoding: [0x0f,0x3a,0xcc,0x8c,0x82,0x10,0xe3,0x0f,0xe3,0x00] 93 sha1rnds4 $0, -485498096(%edx,%eax,4), %xmm1 94 95 // CHECK: sha1rnds4 $0, 485498096(%edx,%eax,4), %xmm1 96 // CHECK: encoding: [0x0f,0x3a,0xcc,0x8c,0x82,0xf0,0x1c,0xf0,0x1c,0x00] 97 sha1rnds4 $0, 485498096(%edx,%eax,4), %xmm1 98 99 // CHECK: sha1rnds4 $0, 485498096(%edx), %xmm1 100 // CHECK: encoding: [0x0f,0x3a,0xcc,0x8a,0xf0,0x1c,0xf0,0x1c,0x00] 101 sha1rnds4 $0, 485498096(%edx), %xmm1 102 103 // CHECK: sha1rnds4 $0, 485498096, %xmm1 104 // CHECK: encoding: [0x0f,0x3a,0xcc,0x0d,0xf0,0x1c,0xf0,0x1c,0x00] 105 sha1rnds4 $0, 485498096, %xmm1 106 107 // CHECK: sha1rnds4 $0, 64(%edx,%eax), %xmm1 108 // CHECK: encoding: [0x0f,0x3a,0xcc,0x4c,0x02,0x40,0x00] 109 sha1rnds4 $0, 64(%edx,%eax), %xmm1 110 111 // CHECK: sha1rnds4 $0, (%edx), %xmm1 112 // CHECK: encoding: [0x0f,0x3a,0xcc,0x0a,0x00] 113 sha1rnds4 $0, (%edx), %xmm1 114 115 // CHECK: sha1rnds4 $0, %xmm1, %xmm1 116 // CHECK: encoding: [0x0f,0x3a,0xcc,0xc9,0x00] 117 sha1rnds4 $0, %xmm1, %xmm1 118 119 // CHECK: sha256msg1 -485498096(%edx,%eax,4), %xmm1 120 // CHECK: encoding: [0x0f,0x38,0xcc,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 121 sha256msg1 -485498096(%edx,%eax,4), %xmm1 122 123 // CHECK: sha256msg1 485498096(%edx,%eax,4), %xmm1 124 // CHECK: encoding: [0x0f,0x38,0xcc,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 125 sha256msg1 485498096(%edx,%eax,4), %xmm1 126 127 // CHECK: sha256msg1 485498096(%edx), %xmm1 128 // CHECK: encoding: [0x0f,0x38,0xcc,0x8a,0xf0,0x1c,0xf0,0x1c] 129 sha256msg1 485498096(%edx), %xmm1 130 131 // CHECK: sha256msg1 485498096, %xmm1 132 // CHECK: encoding: [0x0f,0x38,0xcc,0x0d,0xf0,0x1c,0xf0,0x1c] 133 sha256msg1 485498096, %xmm1 134 135 // CHECK: sha256msg1 64(%edx,%eax), %xmm1 136 // CHECK: encoding: [0x0f,0x38,0xcc,0x4c,0x02,0x40] 137 sha256msg1 64(%edx,%eax), %xmm1 138 139 // CHECK: sha256msg1 (%edx), %xmm1 140 // CHECK: encoding: [0x0f,0x38,0xcc,0x0a] 141 sha256msg1 (%edx), %xmm1 142 143 // CHECK: sha256msg1 %xmm1, %xmm1 144 // CHECK: encoding: [0x0f,0x38,0xcc,0xc9] 145 sha256msg1 %xmm1, %xmm1 146 147 // CHECK: sha256msg2 -485498096(%edx,%eax,4), %xmm1 148 // CHECK: encoding: [0x0f,0x38,0xcd,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 149 sha256msg2 -485498096(%edx,%eax,4), %xmm1 150 151 // CHECK: sha256msg2 485498096(%edx,%eax,4), %xmm1 152 // CHECK: encoding: [0x0f,0x38,0xcd,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 153 sha256msg2 485498096(%edx,%eax,4), %xmm1 154 155 // CHECK: sha256msg2 485498096(%edx), %xmm1 156 // CHECK: encoding: [0x0f,0x38,0xcd,0x8a,0xf0,0x1c,0xf0,0x1c] 157 sha256msg2 485498096(%edx), %xmm1 158 159 // CHECK: sha256msg2 485498096, %xmm1 160 // CHECK: encoding: [0x0f,0x38,0xcd,0x0d,0xf0,0x1c,0xf0,0x1c] 161 sha256msg2 485498096, %xmm1 162 163 // CHECK: sha256msg2 64(%edx,%eax), %xmm1 164 // CHECK: encoding: [0x0f,0x38,0xcd,0x4c,0x02,0x40] 165 sha256msg2 64(%edx,%eax), %xmm1 166 167 // CHECK: sha256msg2 (%edx), %xmm1 168 // CHECK: encoding: [0x0f,0x38,0xcd,0x0a] 169 sha256msg2 (%edx), %xmm1 170 171 // CHECK: sha256msg2 %xmm1, %xmm1 172 // CHECK: encoding: [0x0f,0x38,0xcd,0xc9] 173 sha256msg2 %xmm1, %xmm1 174 175 // CHECK: sha256rnds2 %xmm0, -485498096(%edx,%eax,4), %xmm1 176 // CHECK: encoding: [0x0f,0x38,0xcb,0x8c,0x82,0x10,0xe3,0x0f,0xe3] 177 sha256rnds2 %xmm0, -485498096(%edx,%eax,4), %xmm1 178 179 // CHECK: sha256rnds2 %xmm0, 485498096(%edx,%eax,4), %xmm1 180 // CHECK: encoding: [0x0f,0x38,0xcb,0x8c,0x82,0xf0,0x1c,0xf0,0x1c] 181 sha256rnds2 %xmm0, 485498096(%edx,%eax,4), %xmm1 182 183 // CHECK: sha256rnds2 %xmm0, 485498096(%edx), %xmm1 184 // CHECK: encoding: [0x0f,0x38,0xcb,0x8a,0xf0,0x1c,0xf0,0x1c] 185 sha256rnds2 %xmm0, 485498096(%edx), %xmm1 186 187 // CHECK: sha256rnds2 %xmm0, 485498096, %xmm1 188 // CHECK: encoding: [0x0f,0x38,0xcb,0x0d,0xf0,0x1c,0xf0,0x1c] 189 sha256rnds2 %xmm0, 485498096, %xmm1 190 191 // CHECK: sha256rnds2 %xmm0, 64(%edx,%eax), %xmm1 192 // CHECK: encoding: [0x0f,0x38,0xcb,0x4c,0x02,0x40] 193 sha256rnds2 %xmm0, 64(%edx,%eax), %xmm1 194 195 // CHECK: sha256rnds2 %xmm0, (%edx), %xmm1 196 // CHECK: encoding: [0x0f,0x38,0xcb,0x0a] 197 sha256rnds2 %xmm0, (%edx), %xmm1 198 199 // CHECK: sha256rnds2 %xmm0, %xmm1, %xmm1 200 // CHECK: encoding: [0x0f,0x38,0xcb,0xc9] 201 sha256rnds2 %xmm0, %xmm1, %xmm1 202 203