1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
|
; RUN: llvm-mc -triple aarch64-apple-ios -mattr=+lse %s | FileCheck %s
; CHECK: ldaddab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldaddah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldadda w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldadda x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldaddab w3, wzr, [x5]
ldaddah w5, wzr, [x0]
ldadda w7, wzr, [x5]
ldadda x9, xzr, [sp]
; CHECK: ldaddalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldaddalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldaddal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldaddal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldaddalb w3, wzr, [x5]
ldaddalh w5, wzr, [x0]
ldaddal w7, wzr, [x5]
ldaddal x9, xzr, [sp]
; CHECK: ldclrab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldclrah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldclra w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldclra x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldclrab w3, wzr, [x5]
ldclrah w5, wzr, [x0]
ldclra w7, wzr, [x5]
ldclra x9, xzr, [sp]
; CHECK: ldclralb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldclralh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldclral w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldclral x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldclralb w3, wzr, [x5]
ldclralh w5, wzr, [x0]
ldclral w7, wzr, [x5]
ldclral x9, xzr, [sp]
; CHECK: ldeorab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldeorah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldeora w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldeora x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldeorab w3, wzr, [x5]
ldeorah w5, wzr, [x0]
ldeora w7, wzr, [x5]
ldeora x9, xzr, [sp]
; CHECK: ldeoralb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldeoralh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldeoral w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldeoral x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldeoralb w3, wzr, [x5]
ldeoralh w5, wzr, [x0]
ldeoral w7, wzr, [x5]
ldeoral x9, xzr, [sp]
; CHECK: ldsetab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsetah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldseta w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldseta x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsetab w3, wzr, [x5]
ldsetah w5, wzr, [x0]
ldseta w7, wzr, [x5]
ldseta x9, xzr, [sp]
; CHECK: ldsetalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsetalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldsetal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsetal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsetalb w3, wzr, [x5]
ldsetalh w5, wzr, [x0]
ldsetal w7, wzr, [x5]
ldsetal x9, xzr, [sp]
; CHECK: ldsmaxab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxa w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxa x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsmaxab w3, wzr, [x5]
ldsmaxah w5, wzr, [x0]
ldsmaxa w7, wzr, [x5]
ldsmaxa x9, xzr, [sp]
; CHECK: ldsmaxalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsmaxal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsmaxalb w3, wzr, [x5]
ldsmaxalh w5, wzr, [x0]
ldsmaxal w7, wzr, [x5]
ldsmaxal x9, xzr, [sp]
; CHECK: ldsminab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsminah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldsmina w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsmina x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsminab w3, wzr, [x5]
ldsminah w5, wzr, [x0]
ldsmina w7, wzr, [x5]
ldsmina x9, xzr, [sp]
; CHECK: ldsminalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsminalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldsminal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldsminal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldsminalb w3, wzr, [x5]
ldsminalh w5, wzr, [x0]
ldsminal w7, wzr, [x5]
ldsminal x9, xzr, [sp]
; CHECK: ldumaxab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxa w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxa x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldumaxab w3, wzr, [x5]
ldumaxah w5, wzr, [x0]
ldumaxa w7, wzr, [x5]
ldumaxa x9, xzr, [sp]
; CHECK: ldumaxalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldumaxal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
ldumaxalb w3, wzr, [x5]
ldumaxalh w5, wzr, [x0]
ldumaxal w7, wzr, [x5]
ldumaxal x9, xzr, [sp]
; CHECK: lduminab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: lduminah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: ldumina w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: ldumina x9, xzr, [sp] ; acquire semantics dropped since destination is zero
lduminab w3, wzr, [x5]
lduminah w5, wzr, [x0]
ldumina w7, wzr, [x5]
ldumina x9, xzr, [sp]
; CHECK: lduminalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: lduminalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: lduminal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: lduminal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
lduminalb w3, wzr, [x5]
lduminalh w5, wzr, [x0]
lduminal w7, wzr, [x5]
lduminal x9, xzr, [sp]
; CHECK: swpab w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: swpah w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: swpa w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: swpa x9, xzr, [sp] ; acquire semantics dropped since destination is zero
swpab w3, wzr, [x5]
swpah w5, wzr, [x0]
swpa w7, wzr, [x5]
swpa x9, xzr, [sp]
; CHECK: swpalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: swpalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero
; CHECK: swpal w7, wzr, [x5] ; acquire semantics dropped since destination is zero
; CHECK: swpal x9, xzr, [sp] ; acquire semantics dropped since destination is zero
swpalb w3, wzr, [x5]
swpalh w5, wzr, [x0]
swpal w7, wzr, [x5]
swpal x9, xzr, [sp]
; CHECK: ldaddal xzr, x3, [x0]{{$}}
; CHECK: ldeora wzr, w7, [x5]{{$}}
; CHECK: ldsminb w5, w9, [sp]{{$}}
ldaddal xzr, x3, [x0]
ldeora wzr, w7, [x5]
ldsminb w5, w9, [sp]
; CAS instructions aren't affected.
; CHECK: casab w3, wzr, [x5]{{$}}
; CHECK: casah w5, wzr, [x0]{{$}}
; CHECK: casa w7, wzr, [x5]{{$}}
; CHECK: casa x9, xzr, [sp]{{$}}
casab w3, wzr, [x5]
casah w5, wzr, [x0]
casa w7, wzr, [x5]
casa x9, xzr, [sp]
; CHECK: casalb w3, wzr, [x5]{{$}}
; CHECK: casalh w5, wzr, [x0]{{$}}
; CHECK: casal w7, wzr, [x5]{{$}}
; CHECK: casal x9, xzr, [sp]{{$}}
casalb w3, wzr, [x5]
casalh w5, wzr, [x0]
casal w7, wzr, [x5]
casal x9, xzr, [sp]
|