tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] [PATCH 6/9] arm-asm: Raise an error if asm_binary_opcode


From: Danny Milosavljevic
Subject: [Tinycc-devel] [PATCH 6/9] arm-asm: Raise an error if asm_binary_opcode is used with PC as operand
Date: Mon, 28 Dec 2020 02:44:10 +0100

---
 arm-asm.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/arm-asm.c b/arm-asm.c
index 847a4f3..d6adc20 100644
--- a/arm-asm.c
+++ b/arm-asm.c
@@ -217,11 +217,21 @@ static void asm_binary_opcode(TCCState *s1, int token)
         return;
     }
 
+    if (ops[0].reg == 15) {
+        tcc_error("'%s' does not support 'pc' as operand", get_tok_str(token, 
NULL));
+        return;
+    }
+
     if (ops[1].type != OP_REG32) {
         expect("(source operand) register");
         return;
     }
 
+    if (ops[1].reg == 15) {
+        tcc_error("'%s' does not support 'pc' as operand", get_tok_str(token, 
NULL));
+        return;
+    }
+
     if (tok == ',') {
         next(); // skip ','
         if (tok == TOK_ASM_ror) {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]