summaryrefslogtreecommitdiff
path: root/plugins/arm/v7/opdefs/yield_A88426.d
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/arm/v7/opdefs/yield_A88426.d')
-rw-r--r--plugins/arm/v7/opdefs/yield_A88426.d32
1 files changed, 27 insertions, 5 deletions
diff --git a/plugins/arm/v7/opdefs/yield_A88426.d b/plugins/arm/v7/opdefs/yield_A88426.d
index 252c018..1ccee59 100644
--- a/plugins/arm/v7/opdefs/yield_A88426.d
+++ b/plugins/arm/v7/opdefs/yield_A88426.d
@@ -2,7 +2,7 @@
/* Chrysalide - Outil d'analyse de fichiers binaires
* ##FILE## - traduction d'instructions ARMv7
*
- * Copyright (C) 2015 Cyrille Bagard
+ * Copyright (C) 2017 Cyrille Bagard
*
* This file is part of Chrysalide.
*
@@ -23,19 +23,35 @@
@title YIELD
-@desc YIELD is a hint instruction. Software with a multithreading capability can use a YIELD instruction to indicate to the hardware that it is performing a task, for example a spin-lock, that could be swapped out to improve overall system performance. Hardware can use this hint to suspend and resume multiple software threads if it supports the capability. For more information about the recommended use of this instruction see The Yield instruction on page A4-178.
+@id 425
+
+@desc {
+
+ YIELD is a hint instruction. Software with a multithreading capability can use a YIELD instruction to indicate to the hardware that it is performing a task, for example a spin-lock, that could be swapped out to improve overall system performance. Hardware can use this hint to suspend and resume multiple software threads if it supports the capability. For more information about the recommended use of this instruction see The Yield instruction on page A4-178.
+
+}
@encoding (t1) {
@half 1 0 1 1 1 1 1 1 0 0 0 1 0 0 0 0
+ @syntax {
+
+ @asm yield
+
+ }
+
}
@encoding (T2) {
@word 1 1 1 1 0 0 1 1 1 0 1 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
- @syntax ".W"
+ @syntax {
+
+ @asm yield.w
+
+ }
}
@@ -43,9 +59,15 @@
@word cond(4) 0 0 1 1 0 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1
- @rules {
+ @syntax {
+
+ @asm yield
+
+ @rules {
+
+ check g_arm_instruction_set_cond(cond)
- chk_call StoreCondition(cond)
+ }
}