From 005c7e7c5e3bc3a7095f41ea4527e6f801739f51 Mon Sep 17 00:00:00 2001 From: Quentin Carbonneaux Date: Mon, 7 Mar 2016 12:07:22 -0500 Subject: fix two bad bugs in abi classification The conditions to put a struct in memory or not were wrong. And I misused the cls field of the AClass struct. --- lisc/isel.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lisc/isel.c b/lisc/isel.c index 73d4c21..6a6f0f4 100644 --- a/lisc/isel.c +++ b/lisc/isel.c @@ -530,11 +530,11 @@ classify(Ins *i0, Ins *i1, AClass *ac, int op) continue; ni = ns = 0; for (n=0; n<2; n++) - if (a->cls[n] == 0) + if (KBASE(a->cls[n]) == 0) ni++; else ns++; - if (nint > ni && nsse > ns) { + if (nint >= ni && nsse >= ns) { nint -= ni; nsse -= ns; } else -- cgit 1.4.1