@@ -188,8 +188,10 @@ enum aarch64_insn_ldst_type {
188
188
AARCH64_INSN_LDST_STORE_PAIR_PRE_INDEX ,
189
189
AARCH64_INSN_LDST_LOAD_PAIR_POST_INDEX ,
190
190
AARCH64_INSN_LDST_STORE_PAIR_POST_INDEX ,
191
+ AARCH64_INSN_LDST_LOAD_ACQ ,
191
192
AARCH64_INSN_LDST_LOAD_EX ,
192
193
AARCH64_INSN_LDST_LOAD_ACQ_EX ,
194
+ AARCH64_INSN_LDST_STORE_REL ,
193
195
AARCH64_INSN_LDST_STORE_EX ,
194
196
AARCH64_INSN_LDST_STORE_REL_EX ,
195
197
AARCH64_INSN_LDST_SIGNED_LOAD_IMM_OFFSET ,
@@ -351,6 +353,8 @@ __AARCH64_INSN_FUNCS(ldr_imm, 0x3FC00000, 0x39400000)
351
353
__AARCH64_INSN_FUNCS (ldr_lit , 0xBF000000 , 0x18000000 )
352
354
__AARCH64_INSN_FUNCS (ldrsw_lit , 0xFF000000 , 0x98000000 )
353
355
__AARCH64_INSN_FUNCS (exclusive , 0x3F800000 , 0x08000000 )
356
+ __AARCH64_INSN_FUNCS (load_acq , 0x3FDFFC00 , 0x08DFFC00 )
357
+ __AARCH64_INSN_FUNCS (store_rel , 0x3FDFFC00 , 0x089FFC00 )
354
358
__AARCH64_INSN_FUNCS (load_ex , 0x3FC00000 , 0x08400000 )
355
359
__AARCH64_INSN_FUNCS (store_ex , 0x3FC00000 , 0x08000000 )
356
360
__AARCH64_INSN_FUNCS (mops , 0x3B200C00 , 0x19000400 )
@@ -602,6 +606,10 @@ u32 aarch64_insn_gen_load_store_pair(enum aarch64_insn_register reg1,
602
606
int offset ,
603
607
enum aarch64_insn_variant variant ,
604
608
enum aarch64_insn_ldst_type type );
609
+ u32 aarch64_insn_gen_load_acq_store_rel (enum aarch64_insn_register reg ,
610
+ enum aarch64_insn_register base ,
611
+ enum aarch64_insn_size_type size ,
612
+ enum aarch64_insn_ldst_type type );
605
613
u32 aarch64_insn_gen_load_store_ex (enum aarch64_insn_register reg ,
606
614
enum aarch64_insn_register base ,
607
615
enum aarch64_insn_register state ,
0 commit comments