191 lines · plain
1; RUN: llvm-mc -triple aarch64-apple-ios -mattr=+lse %s | FileCheck %s2 3 ; CHECK: ldaddab w3, wzr, [x5] ; acquire semantics dropped since destination is zero4 ; CHECK: ldaddah w5, wzr, [x0] ; acquire semantics dropped since destination is zero5 ; CHECK: ldadda w7, wzr, [x5] ; acquire semantics dropped since destination is zero6 ; CHECK: ldadda x9, xzr, [sp] ; acquire semantics dropped since destination is zero7 ldaddab w3, wzr, [x5]8 ldaddah w5, wzr, [x0]9 ldadda w7, wzr, [x5]10 ldadda x9, xzr, [sp]11 12 ; CHECK: ldaddalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero13 ; CHECK: ldaddalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero14 ; CHECK: ldaddal w7, wzr, [x5] ; acquire semantics dropped since destination is zero15 ; CHECK: ldaddal x9, xzr, [sp] ; acquire semantics dropped since destination is zero16 ldaddalb w3, wzr, [x5]17 ldaddalh w5, wzr, [x0]18 ldaddal w7, wzr, [x5]19 ldaddal x9, xzr, [sp]20 21 ; CHECK: ldclrab w3, wzr, [x5] ; acquire semantics dropped since destination is zero22 ; CHECK: ldclrah w5, wzr, [x0] ; acquire semantics dropped since destination is zero23 ; CHECK: ldclra w7, wzr, [x5] ; acquire semantics dropped since destination is zero24 ; CHECK: ldclra x9, xzr, [sp] ; acquire semantics dropped since destination is zero25 ldclrab w3, wzr, [x5]26 ldclrah w5, wzr, [x0]27 ldclra w7, wzr, [x5]28 ldclra x9, xzr, [sp]29 30 ; CHECK: ldclralb w3, wzr, [x5] ; acquire semantics dropped since destination is zero31 ; CHECK: ldclralh w5, wzr, [x0] ; acquire semantics dropped since destination is zero32 ; CHECK: ldclral w7, wzr, [x5] ; acquire semantics dropped since destination is zero33 ; CHECK: ldclral x9, xzr, [sp] ; acquire semantics dropped since destination is zero34 ldclralb w3, wzr, [x5]35 ldclralh w5, wzr, [x0]36 ldclral w7, wzr, [x5]37 ldclral x9, xzr, [sp]38 39 ; CHECK: ldeorab w3, wzr, [x5] ; acquire semantics dropped since destination is zero40 ; CHECK: ldeorah w5, wzr, [x0] ; acquire semantics dropped since destination is zero41 ; CHECK: ldeora w7, wzr, [x5] ; acquire semantics dropped since destination is zero42 ; CHECK: ldeora x9, xzr, [sp] ; acquire semantics dropped since destination is zero43 ldeorab w3, wzr, [x5]44 ldeorah w5, wzr, [x0]45 ldeora w7, wzr, [x5]46 ldeora x9, xzr, [sp]47 48 ; CHECK: ldeoralb w3, wzr, [x5] ; acquire semantics dropped since destination is zero49 ; CHECK: ldeoralh w5, wzr, [x0] ; acquire semantics dropped since destination is zero50 ; CHECK: ldeoral w7, wzr, [x5] ; acquire semantics dropped since destination is zero51 ; CHECK: ldeoral x9, xzr, [sp] ; acquire semantics dropped since destination is zero52 ldeoralb w3, wzr, [x5]53 ldeoralh w5, wzr, [x0]54 ldeoral w7, wzr, [x5]55 ldeoral x9, xzr, [sp]56 57 ; CHECK: ldsetab w3, wzr, [x5] ; acquire semantics dropped since destination is zero58 ; CHECK: ldsetah w5, wzr, [x0] ; acquire semantics dropped since destination is zero59 ; CHECK: ldseta w7, wzr, [x5] ; acquire semantics dropped since destination is zero60 ; CHECK: ldseta x9, xzr, [sp] ; acquire semantics dropped since destination is zero61 ldsetab w3, wzr, [x5]62 ldsetah w5, wzr, [x0]63 ldseta w7, wzr, [x5]64 ldseta x9, xzr, [sp]65 66 ; CHECK: ldsetalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero67 ; CHECK: ldsetalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero68 ; CHECK: ldsetal w7, wzr, [x5] ; acquire semantics dropped since destination is zero69 ; CHECK: ldsetal x9, xzr, [sp] ; acquire semantics dropped since destination is zero70 ldsetalb w3, wzr, [x5]71 ldsetalh w5, wzr, [x0]72 ldsetal w7, wzr, [x5]73 ldsetal x9, xzr, [sp]74 75 ; CHECK: ldsmaxab w3, wzr, [x5] ; acquire semantics dropped since destination is zero76 ; CHECK: ldsmaxah w5, wzr, [x0] ; acquire semantics dropped since destination is zero77 ; CHECK: ldsmaxa w7, wzr, [x5] ; acquire semantics dropped since destination is zero78 ; CHECK: ldsmaxa x9, xzr, [sp] ; acquire semantics dropped since destination is zero79 ldsmaxab w3, wzr, [x5]80 ldsmaxah w5, wzr, [x0]81 ldsmaxa w7, wzr, [x5]82 ldsmaxa x9, xzr, [sp]83 84 ; CHECK: ldsmaxalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero85 ; CHECK: ldsmaxalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero86 ; CHECK: ldsmaxal w7, wzr, [x5] ; acquire semantics dropped since destination is zero87 ; CHECK: ldsmaxal x9, xzr, [sp] ; acquire semantics dropped since destination is zero88 ldsmaxalb w3, wzr, [x5]89 ldsmaxalh w5, wzr, [x0]90 ldsmaxal w7, wzr, [x5]91 ldsmaxal x9, xzr, [sp]92 93 ; CHECK: ldsminab w3, wzr, [x5] ; acquire semantics dropped since destination is zero94 ; CHECK: ldsminah w5, wzr, [x0] ; acquire semantics dropped since destination is zero95 ; CHECK: ldsmina w7, wzr, [x5] ; acquire semantics dropped since destination is zero96 ; CHECK: ldsmina x9, xzr, [sp] ; acquire semantics dropped since destination is zero97 ldsminab w3, wzr, [x5]98 ldsminah w5, wzr, [x0]99 ldsmina w7, wzr, [x5]100 ldsmina x9, xzr, [sp]101 102 ; CHECK: ldsminalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero103 ; CHECK: ldsminalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero104 ; CHECK: ldsminal w7, wzr, [x5] ; acquire semantics dropped since destination is zero105 ; CHECK: ldsminal x9, xzr, [sp] ; acquire semantics dropped since destination is zero106 ldsminalb w3, wzr, [x5]107 ldsminalh w5, wzr, [x0]108 ldsminal w7, wzr, [x5]109 ldsminal x9, xzr, [sp]110 111 ; CHECK: ldumaxab w3, wzr, [x5] ; acquire semantics dropped since destination is zero112 ; CHECK: ldumaxah w5, wzr, [x0] ; acquire semantics dropped since destination is zero113 ; CHECK: ldumaxa w7, wzr, [x5] ; acquire semantics dropped since destination is zero114 ; CHECK: ldumaxa x9, xzr, [sp] ; acquire semantics dropped since destination is zero115 ldumaxab w3, wzr, [x5]116 ldumaxah w5, wzr, [x0]117 ldumaxa w7, wzr, [x5]118 ldumaxa x9, xzr, [sp]119 120 ; CHECK: ldumaxalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero121 ; CHECK: ldumaxalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero122 ; CHECK: ldumaxal w7, wzr, [x5] ; acquire semantics dropped since destination is zero123 ; CHECK: ldumaxal x9, xzr, [sp] ; acquire semantics dropped since destination is zero124 ldumaxalb w3, wzr, [x5]125 ldumaxalh w5, wzr, [x0]126 ldumaxal w7, wzr, [x5]127 ldumaxal x9, xzr, [sp]128 129 ; CHECK: lduminab w3, wzr, [x5] ; acquire semantics dropped since destination is zero130 ; CHECK: lduminah w5, wzr, [x0] ; acquire semantics dropped since destination is zero131 ; CHECK: ldumina w7, wzr, [x5] ; acquire semantics dropped since destination is zero132 ; CHECK: ldumina x9, xzr, [sp] ; acquire semantics dropped since destination is zero133 lduminab w3, wzr, [x5]134 lduminah w5, wzr, [x0]135 ldumina w7, wzr, [x5]136 ldumina x9, xzr, [sp]137 138 ; CHECK: lduminalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero139 ; CHECK: lduminalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero140 ; CHECK: lduminal w7, wzr, [x5] ; acquire semantics dropped since destination is zero141 ; CHECK: lduminal x9, xzr, [sp] ; acquire semantics dropped since destination is zero142 lduminalb w3, wzr, [x5]143 lduminalh w5, wzr, [x0]144 lduminal w7, wzr, [x5]145 lduminal x9, xzr, [sp]146 147 ; CHECK: swpab w3, wzr, [x5] ; acquire semantics dropped since destination is zero148 ; CHECK: swpah w5, wzr, [x0] ; acquire semantics dropped since destination is zero149 ; CHECK: swpa w7, wzr, [x5] ; acquire semantics dropped since destination is zero150 ; CHECK: swpa x9, xzr, [sp] ; acquire semantics dropped since destination is zero151 swpab w3, wzr, [x5]152 swpah w5, wzr, [x0]153 swpa w7, wzr, [x5]154 swpa x9, xzr, [sp]155 156 ; CHECK: swpalb w3, wzr, [x5] ; acquire semantics dropped since destination is zero157 ; CHECK: swpalh w5, wzr, [x0] ; acquire semantics dropped since destination is zero158 ; CHECK: swpal w7, wzr, [x5] ; acquire semantics dropped since destination is zero159 ; CHECK: swpal x9, xzr, [sp] ; acquire semantics dropped since destination is zero160 swpalb w3, wzr, [x5]161 swpalh w5, wzr, [x0]162 swpal w7, wzr, [x5]163 swpal x9, xzr, [sp]164 165 ; CHECK: ldaddal xzr, x3, [x0]{{$}}166 ; CHECK: ldeora wzr, w7, [x5]{{$}}167 ; CHECK: ldsminb w5, w9, [sp]{{$}}168 ldaddal xzr, x3, [x0]169 ldeora wzr, w7, [x5]170 ldsminb w5, w9, [sp]171 172 ; CAS instructions aren't affected.173 174 ; CHECK: casab w3, wzr, [x5]{{$}}175 ; CHECK: casah w5, wzr, [x0]{{$}}176 ; CHECK: casa w7, wzr, [x5]{{$}}177 ; CHECK: casa x9, xzr, [sp]{{$}}178 casab w3, wzr, [x5]179 casah w5, wzr, [x0]180 casa w7, wzr, [x5]181 casa x9, xzr, [sp]182 183 ; CHECK: casalb w3, wzr, [x5]{{$}}184 ; CHECK: casalh w5, wzr, [x0]{{$}}185 ; CHECK: casal w7, wzr, [x5]{{$}}186 ; CHECK: casal x9, xzr, [sp]{{$}}187 casalb w3, wzr, [x5]188 casalh w5, wzr, [x0]189 casal w7, wzr, [x5]190 casal x9, xzr, [sp]191