Просмотр исходного кода

Fix clang-tidy warnings (parens around macro arguments)

Fabian 6 лет назад
Родитель
Сommit
7859db9126
4 измененных файлов с 27 добавлено и 27 удалено
  1. 10 10
      src/native/codegen/codegen.c
  2. 2 2
      src/native/instructions.h
  3. 14 14
      src/native/modrm.c
  4. 1 1
      src/native/string.c

+ 10 - 10
src/native/codegen/codegen.c

@@ -212,17 +212,17 @@ void gen_fn3(char* fn, uint8_t fn_len, int32_t arg0, int32_t arg1, int32_t arg2)
     case (n) | 5 << 3:\
     case (n) | 6 << 3:\
     case (n) | 7 << 3:\
-        work; break;
+        (work); break;
 
 #define MODRM_ENTRY16_0(row, seg, reg1, reg2)\
-    MODRM_ENTRY(0x00 | row, gen_modrm_entry_0(seg, reg1, reg2, 0))\
-    MODRM_ENTRY(0x40 | row, gen_modrm_entry_0(seg, reg1, reg2, read_imm8s()))\
-    MODRM_ENTRY(0x80 | row, gen_modrm_entry_0(seg, reg1, reg2, read_imm16()))
+    MODRM_ENTRY(0x00 | (row), gen_modrm_entry_0((seg), (reg1), (reg2), 0))\
+    MODRM_ENTRY(0x40 | (row), gen_modrm_entry_0((seg), (reg1), (reg2), read_imm8s()))\
+    MODRM_ENTRY(0x80 | (row), gen_modrm_entry_0((seg), (reg1), (reg2), read_imm16()))
 
 #define MODRM_ENTRY16_1(row, seg, reg)\
-    MODRM_ENTRY(0x00 | row, gen_modrm_entry_1(seg, reg, 0))\
-    MODRM_ENTRY(0x40 | row, gen_modrm_entry_1(seg, reg, read_imm8s()))\
-    MODRM_ENTRY(0x80 | row, gen_modrm_entry_1(seg, reg, read_imm16()))
+    MODRM_ENTRY(0x00 | (row), gen_modrm_entry_1(seg, reg, 0))\
+    MODRM_ENTRY(0x40 | (row), gen_modrm_entry_1(seg, reg, read_imm8s()))\
+    MODRM_ENTRY(0x80 | (row), gen_modrm_entry_1(seg, reg, read_imm16()))
 
 static void inline gen_modrm_entry_0(int32_t fn_idx, int32_t reg16_idx_1, int32_t reg16_idx_2, int32_t imm)
 {
@@ -289,9 +289,9 @@ void gen_resolve_modrm16(int32_t modrm_byte)
 }
 
 #define MODRM_ENTRY32_0(row, seg, reg)\
-    MODRM_ENTRY(0x00 | row, gen_modrm32_entry(seg, reg, 0))\
-    MODRM_ENTRY(0x40 | row, gen_modrm32_entry(seg, reg, read_imm8s()))\
-    MODRM_ENTRY(0x80 | row, gen_modrm32_entry(seg, reg, read_imm32s()))
+    MODRM_ENTRY(0x00 | (row), gen_modrm32_entry(seg, reg, 0))\
+    MODRM_ENTRY(0x40 | (row), gen_modrm32_entry(seg, reg, read_imm8s()))\
+    MODRM_ENTRY(0x80 | (row), gen_modrm32_entry(seg, reg, read_imm32s()))
 
 static void gen_modrm32_entry(int32_t fn_idx, int32_t reg32s_idx, int32_t imm)
 {

+ 2 - 2
src/native/instructions.h

@@ -11,7 +11,7 @@
     int32_t phys_addr = translate_address_write(addr); \
     if((phys_addr & 0xFFF) == 0xFFF) \
     { \
-        int32_t phys_addr_high = translate_address_write(addr + 1); \
+        int32_t phys_addr_high = translate_address_write((addr) + 1); \
         int32_t ___ = virt_boundary_read16(phys_addr, phys_addr_high); \
         virt_boundary_write16(phys_addr, phys_addr_high, fun); \
     } \
@@ -25,7 +25,7 @@
     int32_t phys_addr = translate_address_write(addr); \
     if((phys_addr & 0xFFF) >= 0xFFD) \
     { \
-        int32_t phys_addr_high = translate_address_write(addr + 3 & ~3) | (addr + 3) & 3; \
+        int32_t phys_addr_high = translate_address_write((addr) + 3 & ~3) | ((addr) + 3) & 3; \
         int32_t ___ = virt_boundary_read32s(phys_addr, phys_addr_high); \
         virt_boundary_write32(phys_addr, phys_addr_high, fun); \
     } \

+ 14 - 14
src/native/modrm.c

@@ -27,9 +27,9 @@ static int32_t resolve_sib(bool mod);
         return offset;
 
 #define MODRM_ENTRY16(row, seg, value)\
-    MODRM_ENTRY(0x00 | row, seg(((value) & 0xFFFF)))\
-    MODRM_ENTRY(0x40 | row, seg(((value) + read_imm8s() & 0xFFFF)))\
-    MODRM_ENTRY(0x80 | row, seg(((value) + read_imm16() & 0xFFFF)))\
+    MODRM_ENTRY(0x00 | (row), seg(((value) & 0xFFFF)))\
+    MODRM_ENTRY(0x40 | (row), seg(((value) + read_imm8s() & 0xFFFF)))\
+    MODRM_ENTRY(0x80 | (row), seg(((value) + read_imm16() & 0xFFFF)))\
 
 int32_t resolve_modrm16(int32_t modrm_byte)
 {
@@ -59,9 +59,9 @@ int32_t resolve_modrm16(int32_t modrm_byte)
 #undef MODRM_ENTRY16
 
 #define MODRM_ENTRY32(row, seg, value)\
-    MODRM_ENTRY(0x00 | row, seg((value)))\
-    MODRM_ENTRY(0x40 | row, seg((value) + read_imm8s()))\
-    MODRM_ENTRY(0x80 | row, seg((value) + read_imm32s()))\
+    MODRM_ENTRY(0x00 | (row), seg((value)))\
+    MODRM_ENTRY(0x40 | (row), seg((value) + read_imm8s()))\
+    MODRM_ENTRY(0x80 | (row), seg((value) + read_imm32s()))\
 
 int32_t resolve_modrm32(int32_t modrm_byte)
 {
@@ -98,14 +98,14 @@ int32_t resolve_modrm32(int32_t modrm_byte)
     case n: return offset;
 
 #define SIB_ENTRY_LEVEL2(n, offset)\
-    SIB_ENTRY_LEVEL3(n | 0, ds((offset) + reg32s[EAX]))\
-    SIB_ENTRY_LEVEL3(n | 1, ds((offset) + reg32s[ECX]))\
-    SIB_ENTRY_LEVEL3(n | 2, ds((offset) + reg32s[EDX]))\
-    SIB_ENTRY_LEVEL3(n | 3, ds((offset) + reg32s[EBX]))\
-    SIB_ENTRY_LEVEL3(n | 4, ss((offset) + reg32s[ESP]))\
-    SIB_ENTRY_LEVEL3(n | 5, (mod ? ss((offset) + reg32s[EBP]) : ds((offset) + read_imm32s())))\
-    SIB_ENTRY_LEVEL3(n | 6, ds((offset) + reg32s[ESI]))\
-    SIB_ENTRY_LEVEL3(n | 7, ds((offset) + reg32s[EDI]))
+    SIB_ENTRY_LEVEL3((n) | 0, ds((offset) + reg32s[EAX]))\
+    SIB_ENTRY_LEVEL3((n) | 1, ds((offset) + reg32s[ECX]))\
+    SIB_ENTRY_LEVEL3((n) | 2, ds((offset) + reg32s[EDX]))\
+    SIB_ENTRY_LEVEL3((n) | 3, ds((offset) + reg32s[EBX]))\
+    SIB_ENTRY_LEVEL3((n) | 4, ss((offset) + reg32s[ESP]))\
+    SIB_ENTRY_LEVEL3((n) | 5, (mod ? ss((offset) + reg32s[EBP]) : ds((offset) + read_imm32s())))\
+    SIB_ENTRY_LEVEL3((n) | 6, ds((offset) + reg32s[ESI]))\
+    SIB_ENTRY_LEVEL3((n) | 7, ds((offset) + reg32s[EDI]))
 
 #define SIB_ENTRY_LEVEL1(n, reg1)\
     SIB_ENTRY_LEVEL2(0x00 | (n) << 3, (reg1))\

+ 1 - 1
src/native/string.c

@@ -10,7 +10,7 @@
 #include "string.h"
 
 #define MAX_COUNT_PER_CYCLE 0x1000
-#define MIN(x, y) (x < y ? x : y)
+#define MIN(x, y) ((x) < (y) ? (x) : (y))
 
 int32_t string_get_cycle_count(int32_t size, int32_t address)
 {