mirror of
git://c9x.me/qbe.git
synced 2026-04-07 10:59:47 +00:00
both comparison arguments need to be fixed
The second argument will not be a constant because of the assertion. But it could be a fast local, and this situation needs to be handled by the last case of fixarg().
This commit is contained in:
parent
60feaba8c5
commit
5c3c410c60
1
isel.c
1
isel.c
@ -192,6 +192,7 @@ selcmp(Ref arg[2], int k, Fn *fn)
|
|||||||
assert(rtype(arg[0]) != RCon);
|
assert(rtype(arg[0]) != RCon);
|
||||||
emit(OXCmp, k, R, arg[1], arg[0]);
|
emit(OXCmp, k, R, arg[1], arg[0]);
|
||||||
fixarg(&curi->arg[0], k, 0, fn);
|
fixarg(&curi->arg[0], k, 0, fn);
|
||||||
|
fixarg(&curi->arg[1], k, 0, fn);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user