Pete Lomax <[EMAIL PROTECTED]> wrote: > ... only to find there are no such equivalents for ne, gt, and ge.
I've added these missing ops now. *But* there are a lot more missing: * all <op>_p_nc?_ic # <op> := eq, ne, lt, le, gt, ge * all <op>_p_sc?_ic * cmp_i_p_nc? * cmp_i_p_sc? And we don't support Perl's '==' vs 'eq' opcodes. All current ops try to do the right thing, but this is mainly a numeric comparison, except for the obvious <op>_sc?_sc?_ic case. So we probably need more: * <op>_str_p_* * cmp_str_i_p_* * <op>_int_p_* * cmp_int_p_* A Perl compiler will probably emit only the <op>_str or <op>_int variants. The opcode replacement inside imcc can emit an error or warning, if the opcodes have the wrong operands, and can replace the opcodes with the plain variants without _str or _int suffix, if there is no matching opcode. Comments welcome leo