@@ -215,39 +215,39 @@ def : InstRW<[A53WriteVLD1], (instregex "LD1Onev(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
215
215
def : InstRW<[A53WriteVLD2], (instregex "LD1Twov(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
216
216
def : InstRW<[A53WriteVLD3], (instregex "LD1Threev(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
217
217
def : InstRW<[A53WriteVLD4], (instregex "LD1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
218
- def : InstRW<[A53WriteVLD1, WriteAdr ], (instregex "LD1i(8|16|32|64)_POST$")>;
219
- def : InstRW<[A53WriteVLD1, WriteAdr ], (instregex "LD1Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
220
- def : InstRW<[A53WriteVLD1, WriteAdr ], (instregex "LD1Onev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
221
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD1Twov(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
222
- def : InstRW<[A53WriteVLD3, WriteAdr ], (instregex "LD1Threev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
223
- def : InstRW<[A53WriteVLD4, WriteAdr ], (instregex "LD1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
218
+ def : InstRW<[WriteAdr, A53WriteVLD1 ], (instregex "LD1i(8|16|32|64)_POST$")>;
219
+ def : InstRW<[WriteAdr, A53WriteVLD1 ], (instregex "LD1Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
220
+ def : InstRW<[WriteAdr, A53WriteVLD1 ], (instregex "LD1Onev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
221
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD1Twov(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
222
+ def : InstRW<[WriteAdr, A53WriteVLD3 ], (instregex "LD1Threev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
223
+ def : InstRW<[WriteAdr, A53WriteVLD4 ], (instregex "LD1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
224
224
225
225
def : InstRW<[A53WriteVLD1], (instregex "LD2i(8|16|32|64)$")>;
226
226
def : InstRW<[A53WriteVLD1], (instregex "LD2Rv(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
227
227
def : InstRW<[A53WriteVLD2], (instregex "LD2Twov(8b|4h|2s)$")>;
228
228
def : InstRW<[A53WriteVLD4], (instregex "LD2Twov(16b|8h|4s|2d)$")>;
229
- def : InstRW<[A53WriteVLD1, WriteAdr ], (instregex "LD2i(8|16|32|64)_POST$")>;
230
- def : InstRW<[A53WriteVLD1, WriteAdr ], (instregex "LD2Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
231
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD2Twov(8b|4h|2s)_POST$")>;
232
- def : InstRW<[A53WriteVLD4, WriteAdr ], (instregex "LD2Twov(16b|8h|4s|2d)_POST$")>;
229
+ def : InstRW<[WriteAdr, A53WriteVLD1 ], (instregex "LD2i(8|16|32|64)_POST$")>;
230
+ def : InstRW<[WriteAdr, A53WriteVLD1 ], (instregex "LD2Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
231
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD2Twov(8b|4h|2s)_POST$")>;
232
+ def : InstRW<[WriteAdr, A53WriteVLD4 ], (instregex "LD2Twov(16b|8h|4s|2d)_POST$")>;
233
233
234
234
def : InstRW<[A53WriteVLD2], (instregex "LD3i(8|16|32|64)$")>;
235
235
def : InstRW<[A53WriteVLD2], (instregex "LD3Rv(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
236
236
def : InstRW<[A53WriteVLD4], (instregex "LD3Threev(8b|4h|2s|1d|16b|8h|4s)$")>;
237
237
def : InstRW<[A53WriteVLD3], (instregex "LD3Threev2d$")>;
238
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD3i(8|16|32|64)_POST$")>;
239
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD3Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
240
- def : InstRW<[A53WriteVLD4, WriteAdr ], (instregex "LD3Threev(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
241
- def : InstRW<[A53WriteVLD3, WriteAdr ], (instregex "LD3Threev2d_POST$")>;
238
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD3i(8|16|32|64)_POST$")>;
239
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD3Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
240
+ def : InstRW<[WriteAdr, A53WriteVLD4 ], (instregex "LD3Threev(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
241
+ def : InstRW<[WriteAdr, A53WriteVLD3 ], (instregex "LD3Threev2d_POST$")>;
242
242
243
243
def : InstRW<[A53WriteVLD2], (instregex "LD4i(8|16|32|64)$")>;
244
244
def : InstRW<[A53WriteVLD2], (instregex "LD4Rv(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
245
245
def : InstRW<[A53WriteVLD5], (instregex "LD4Fourv(8b|4h|2s|1d|16b|8h|4s)$")>;
246
246
def : InstRW<[A53WriteVLD4], (instregex "LD4Fourv(2d)$")>;
247
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD4i(8|16|32|64)_POST$")>;
248
- def : InstRW<[A53WriteVLD2, WriteAdr ], (instregex "LD4Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
249
- def : InstRW<[A53WriteVLD5, WriteAdr ], (instregex "LD4Fourv(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
250
- def : InstRW<[A53WriteVLD4, WriteAdr ], (instregex "LD4Fourv(2d)_POST$")>;
247
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD4i(8|16|32|64)_POST$")>;
248
+ def : InstRW<[WriteAdr, A53WriteVLD2 ], (instregex "LD4Rv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
249
+ def : InstRW<[WriteAdr, A53WriteVLD5 ], (instregex "LD4Fourv(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
250
+ def : InstRW<[WriteAdr, A53WriteVLD4 ], (instregex "LD4Fourv(2d)_POST$")>;
251
251
252
252
//---
253
253
// Vector Stores
@@ -257,32 +257,32 @@ def : InstRW<[A53WriteVST1], (instregex "ST1Onev(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
257
257
def : InstRW<[A53WriteVST1], (instregex "ST1Twov(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
258
258
def : InstRW<[A53WriteVST2], (instregex "ST1Threev(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
259
259
def : InstRW<[A53WriteVST2], (instregex "ST1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)$")>;
260
- def : InstRW<[A53WriteVST1, WriteAdr ], (instregex "ST1i(8|16|32|64)_POST$")>;
261
- def : InstRW<[A53WriteVST1, WriteAdr ], (instregex "ST1Onev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
262
- def : InstRW<[A53WriteVST1, WriteAdr ], (instregex "ST1Twov(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
263
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST1Threev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
264
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
260
+ def : InstRW<[WriteAdr, A53WriteVST1 ], (instregex "ST1i(8|16|32|64)_POST$")>;
261
+ def : InstRW<[WriteAdr, A53WriteVST1 ], (instregex "ST1Onev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
262
+ def : InstRW<[WriteAdr, A53WriteVST1 ], (instregex "ST1Twov(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
263
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST1Threev(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
264
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST1Fourv(8b|4h|2s|1d|16b|8h|4s|2d)_POST$")>;
265
265
266
266
def : InstRW<[A53WriteVST1], (instregex "ST2i(8|16|32|64)$")>;
267
267
def : InstRW<[A53WriteVST1], (instregex "ST2Twov(8b|4h|2s)$")>;
268
268
def : InstRW<[A53WriteVST2], (instregex "ST2Twov(16b|8h|4s|2d)$")>;
269
- def : InstRW<[A53WriteVST1, WriteAdr ], (instregex "ST2i(8|16|32|64)_POST$")>;
270
- def : InstRW<[A53WriteVST1, WriteAdr ], (instregex "ST2Twov(8b|4h|2s)_POST$")>;
271
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST2Twov(16b|8h|4s|2d)_POST$")>;
269
+ def : InstRW<[WriteAdr, A53WriteVST1 ], (instregex "ST2i(8|16|32|64)_POST$")>;
270
+ def : InstRW<[WriteAdr, A53WriteVST1 ], (instregex "ST2Twov(8b|4h|2s)_POST$")>;
271
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST2Twov(16b|8h|4s|2d)_POST$")>;
272
272
273
273
def : InstRW<[A53WriteVST2], (instregex "ST3i(8|16|32|64)$")>;
274
274
def : InstRW<[A53WriteVST3], (instregex "ST3Threev(8b|4h|2s|1d|16b|8h|4s)$")>;
275
275
def : InstRW<[A53WriteVST2], (instregex "ST3Threev(2d)$")>;
276
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST3i(8|16|32|64)_POST$")>;
277
- def : InstRW<[A53WriteVST3, WriteAdr ], (instregex "ST3Threev(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
278
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST3Threev(2d)_POST$")>;
276
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST3i(8|16|32|64)_POST$")>;
277
+ def : InstRW<[WriteAdr, A53WriteVST3 ], (instregex "ST3Threev(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
278
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST3Threev(2d)_POST$")>;
279
279
280
280
def : InstRW<[A53WriteVST2], (instregex "ST4i(8|16|32|64)$")>;
281
281
def : InstRW<[A53WriteVST3], (instregex "ST4Fourv(8b|4h|2s|1d|16b|8h|4s)$")>;
282
282
def : InstRW<[A53WriteVST2], (instregex "ST4Fourv(2d)$")>;
283
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST4i(8|16|32|64)_POST$")>;
284
- def : InstRW<[A53WriteVST3, WriteAdr ], (instregex "ST4Fourv(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
285
- def : InstRW<[A53WriteVST2, WriteAdr ], (instregex "ST4Fourv(2d)_POST$")>;
283
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST4i(8|16|32|64)_POST$")>;
284
+ def : InstRW<[WriteAdr, A53WriteVST3 ], (instregex "ST4Fourv(8b|4h|2s|1d|16b|8h|4s)_POST$")>;
285
+ def : InstRW<[WriteAdr, A53WriteVST2 ], (instregex "ST4Fourv(2d)_POST$")>;
286
286
287
287
//---
288
288
// Floating Point MAC, DIV, SQRT
0 commit comments