From a4c9ec645f4521bd2d12de6e96c8a1ab078eedcb Mon Sep 17 00:00:00 2001 From: Lioncash Date: Mon, 22 Feb 2021 07:31:08 -0500 Subject: [PATCH] thumb32: Implement SEV --- src/frontend/A32/decoder/thumb32.inc | 2 +- src/frontend/A32/translate/impl/thumb32_control.cpp | 4 ++++ src/frontend/A32/translate/impl/translate_thumb.h | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/frontend/A32/decoder/thumb32.inc b/src/frontend/A32/decoder/thumb32.inc index dc5963cc..ee9deec9 100644 --- a/src/frontend/A32/decoder/thumb32.inc +++ b/src/frontend/A32/decoder/thumb32.inc @@ -99,7 +99,7 @@ INST(thumb32_NOP, "NOP", "1111001110101111100000 INST(thumb32_YIELD, "YIELD", "11110011101011111000000000000001") INST(thumb32_WFE, "WFE", "11110011101011111000000000000010") INST(thumb32_WFI, "WFI", "11110011101011111000000000000011") -//INST(thumb32_SEV, "SEV", "111100111010----10-0-00000000100") +INST(thumb32_SEV, "SEV", "11110011101011111000000000000100") //INST(thumb32_SEVL, "SEVL", "111100111010----10-0-00000000101") //INST(thumb32_DBG, "DBG", "111100111010----10-0-0001111----") //INST(thumb32_CPS, "CPS", "111100111010----10-0------------") diff --git a/src/frontend/A32/translate/impl/thumb32_control.cpp b/src/frontend/A32/translate/impl/thumb32_control.cpp index e4322e51..fbe4b192 100644 --- a/src/frontend/A32/translate/impl/thumb32_control.cpp +++ b/src/frontend/A32/translate/impl/thumb32_control.cpp @@ -34,6 +34,10 @@ bool ThumbTranslatorVisitor::thumb32_NOP() { return thumb16_NOP(); } +bool ThumbTranslatorVisitor::thumb32_SEV() { + return thumb16_SEV(); +} + bool ThumbTranslatorVisitor::thumb32_UDF() { return thumb16_UDF(); } diff --git a/src/frontend/A32/translate/impl/translate_thumb.h b/src/frontend/A32/translate/impl/translate_thumb.h index 5423f4aa..4b41dc78 100644 --- a/src/frontend/A32/translate/impl/translate_thumb.h +++ b/src/frontend/A32/translate/impl/translate_thumb.h @@ -169,6 +169,7 @@ struct ThumbTranslatorVisitor final { bool thumb32_DSB(Imm<4> option); bool thumb32_ISB(Imm<4> option); bool thumb32_NOP(); + bool thumb32_SEV(); bool thumb32_UDF(); bool thumb32_WFE(); bool thumb32_WFI();