mirror of
https://github.com/danog/ir.git
synced 2024-11-30 04:39:43 +01:00
Fixed incorrect condition evaluation
This commit is contained in:
parent
cbfdeb46fe
commit
30c6717812
@ -659,7 +659,11 @@ int ir_sccp(ir_ctx *ctx)
|
|||||||
ir_bitqueue_add(&worklist, insn->op2);
|
ir_bitqueue_add(&worklist, insn->op2);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (!IR_IS_BOTTOM(insn->op2)) {
|
if (!IR_IS_BOTTOM(insn->op2)
|
||||||
|
#if IR_COMBO_COPY_PROPAGATION
|
||||||
|
&& (IR_IS_CONST_REF(insn->op2) || _values[insn->op2].op != IR_COPY)
|
||||||
|
#endif
|
||||||
|
) {
|
||||||
bool b = ir_sccp_is_true(ctx, _values, insn->op2);
|
bool b = ir_sccp_is_true(ctx, _values, insn->op2);
|
||||||
use_list = &ctx->use_lists[i];
|
use_list = &ctx->use_lists[i];
|
||||||
IR_ASSERT(use_list->count == 2);
|
IR_ASSERT(use_list->count == 2);
|
||||||
|
Loading…
Reference in New Issue
Block a user