aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ir_regalloc.c
diff options
context:
space:
mode:
authorlemon <lsof@mailbox.org>2026-03-19 11:51:13 +0100
committerlemon <lsof@mailbox.org>2026-03-19 11:51:13 +0100
commit46fc55e27390ea85eb34ec0367f40426197c9b9f (patch)
treee7fab125f4f5a0da5d1f8e47d3a5301f501e5a35 /src/ir_regalloc.c
parent85afa319cae05bcd39de0f4f63d22a49bbd0e665 (diff)
regalloc & emit: explicit comparisons over memcmp of small structures
The one in x86-64_emit was not portable due to relying on zero initialization of inactive union fields/padding.
Diffstat (limited to 'src/ir_regalloc.c')
-rw-r--r--src/ir_regalloc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ir_regalloc.c b/src/ir_regalloc.c
index ddb05e2..54f5d59 100644
--- a/src/ir_regalloc.c
+++ b/src/ir_regalloc.c
@@ -210,7 +210,7 @@ typedef struct {
static void
pmadd(PMState *pms, enum irclass k, Alloc dst, Alloc src)
{
- if (!memcmp(&dst, &src, sizeof dst)) return;
+ if (dst.bits == src.bits) return;
assert(pms->npmove < MAXREGS);
pms->pmove[pms->npmove++] = (struct PMove) { k, PMTOMOVE, dst, src };
}