A64: Implement STLRB, STLRH, STLR, LDARB, LDARH, LDAR

This commit is contained in:
MerryMage
2018-02-05 01:10:52 +00:00
parent 5a65313236
commit b02b861242
4 changed files with 91 additions and 58 deletions

View File

@@ -124,38 +124,22 @@ INST(LDx_mult_2, "LDx (multiple structures)", "0Q001
//INST(LD4R_2, "LD4R", "0Q001101111mmmmm1110zznnnnnttttt")
// Loads and stores - Load/Store Exclusive
//INST(STXRB, "STXRB", "00001000000sssss011111nnnnnttttt")
//INST(STLXRB, "STLXRB", "00001000000sssss111111nnnnnttttt")
//INST(CASP, "CASP, CASPA, CASPAL, CASPL", "0z0010000L1sssssp11111nnnnnttttt")
//INST(LDXRB, "LDXRB", "0000100001011111011111nnnnnttttt")
//INST(LDAXRB, "LDAXRB", "0000100001011111111111nnnnnttttt")
//INST(STLLRB, "STLLRB", "0000100010011111011111nnnnnttttt")
//INST(STLRB, "STLRB", "0000100010011111111111nnnnnttttt")
//INST(CASB, "CASB, CASAB, CASALB, CASLB", "000010001L1sssssp11111nnnnnttttt")
//INST(LDLARB, "LDLARB", "0000100011011111011111nnnnnttttt")
//INST(LDARB, "LDARB", "0000100011011111111111nnnnnttttt")
//INST(STXRH, "STXRH", "01001000000sssss011111nnnnnttttt")
//INST(STLXRH, "STLXRH", "01001000000sssss111111nnnnnttttt")
//INST(LDXRH, "LDXRH", "0100100001011111011111nnnnnttttt")
//INST(LDAXRH, "LDAXRH", "0100100001011111111111nnnnnttttt")
//INST(STLLRH, "STLLRH", "0100100010011111011111nnnnnttttt")
//INST(STLRH, "STLRH", "0100100010011111111111nnnnnttttt")
//INST(CASH, "CASH, CASAH, CASALH, CASLH", "010010001L1sssssp11111nnnnnttttt")
//INST(LDLARH, "LDLARH", "0100100011011111011111nnnnnttttt")
//INST(LDARH, "LDARH", "0100100011011111111111nnnnnttttt")
//INST(STXR, "STXR", "1-001000000sssss011111nnnnnttttt")
//INST(STLXR, "STLXR", "1-001000000sssss111111nnnnnttttt")
//INST(STXR, "STXRB, STXRH, STXR", "zz001000000sssss011111nnnnnttttt")
//INST(STLXR, "STLXRB, STLXRH, STLXR", "zz001000000sssss111111nnnnnttttt")
//INST(STXP, "STXP", "1z001000001sssss0uuuuunnnnnttttt")
//INST(STLXP, "STLXP", "1z001000001sssss1uuuuunnnnnttttt")
//INST(LDXR, "LDXR", "1-00100001011111011111nnnnnttttt")
//INST(LDAXR, "LDAXR", "1-00100001011111111111nnnnnttttt")
//INST(LDXR, "LDXRB, LDXRH, LDXR", "zz00100001011111011111nnnnnttttt")
//INST(LDAXRB, "LDAXRB", "zz00100001011111111111nnnnnttttt")
//INST(LDXP, "LDXP", "1z001000011111110uuuuunnnnnttttt")
//INST(LDAXP, "LDAXP", "1z001000011111111uuuuunnnnnttttt")
//INST(STLLR, "STLLR", "1-00100010011111011111nnnnnttttt")
//INST(STLR, "STLR", "1-00100010011111111111nnnnnttttt")
//INST(CAS, "CAS, CASA, CASAL, CASL", "1-0010001L1sssssp11111nnnnnttttt")
//INST(LDLAR, "LDLAR", "1-00100011011111011111nnnnnttttt")
//INST(LDAR, "LDAR", "1-00100011011111111111nnnnnttttt")
//INST(STLLR, "STLLRB, STLLRH, STLLR", "zz00100010011111011111nnnnnttttt")
INST(STLR, "STLRB, STLRH, STLR", "zz00100010011111111111nnnnnttttt")
//INST(LDLAR, "LDLARB, LDLARH, LDLAR", "zz00100011011111011111nnnnnttttt")
INST(LDAR, "LDARB, LDARH, LDAR", "zz00100011011111111111nnnnnttttt")
//INST(CASP, "CASP, CASPA, CASPAL, CASPL", "0z0010000L1sssssp11111nnnnnttttt") // ARMv8.1
//INST(CASB, "CASB, CASAB, CASALB, CASLB", "000010001L1sssssp11111nnnnnttttt") // ARMv8.1
//INST(CASH, "CASH, CASAH, CASALH, CASLH", "010010001L1sssssp11111nnnnnttttt") // ARMv8.1
//INST(CAS, "CAS, CASA, CASAL, CASL", "1z0010001L1sssssp11111nnnnnttttt") // ARMv8.1
// Loads and stores - Load register (literal)
INST(LDR_lit_gen, "LDR (literal)", "0z011000iiiiiiiiiiiiiiiiiiittttt")