about summary refs log tree commit diff stats
path: root/src/dynarec/arm64/arm64_printer.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/dynarec/arm64/arm64_printer.c')
-rw-r--r--src/dynarec/arm64/arm64_printer.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/dynarec/arm64/arm64_printer.c b/src/dynarec/arm64/arm64_printer.c
index 48b67e0c..4b797a3c 100644
--- a/src/dynarec/arm64/arm64_printer.c
+++ b/src/dynarec/arm64/arm64_printer.c
@@ -124,6 +124,18 @@ const char* arm64_print(uint32_t opcode, uintptr_t addr)
         snprintf(buff, sizeof(buff), "NOP");

         return buff;

     }

+    if(isMask(opcode, "11010101000000110010000001011111", &a)) {

+        snprintf(buff, sizeof(buff), "WFE");

+        return buff;

+    }

+    if(isMask(opcode, "11010101000000110010000001111111", &a)) {

+        snprintf(buff, sizeof(buff), "WFI");

+        return buff;

+    }

+    if(isMask(opcode, "11010101000000110010000000111111", &a)) {

+        snprintf(buff, sizeof(buff), "YIELD");

+        return buff;

+    }

     // --- LDR / STR

     if(isMask(opcode, "f010100011iiiiiii22222nnnnnttttt", &a)) {

         int offset = signExtend(imm, 7)<<(2+sf);