static void emit_cmp_x86(Inst* inst) { if (inst->src.type == REG) { emit_2(0x39, modr(inst->dst.reg, inst->src.reg)); } else { emit_2(0x81, 0xf8 + REGNO[inst->dst.reg]); emit_le(inst->src.imm); } }
void integrate(float *s, int srcSize, int sample, int line, float azimuth_length, float range_length, float *sum, float *maximum) { int ii, kk; float power; *sum = 0.0; *maximum = //s[modr(line,srcSize)*srcSize + modr(sample,srcSize)] * s[modr(line,srcSize)*srcSize + modr(sample,srcSize)]; for (ii=sample; ii<sample+(int)(range_length+0.5)-1; ii++) for (kk=line; kk<line+(int)(azimuth_length+0.5)-1; kk++) { power = //s[modr(kk,srcSize)*srcSize+modr(ii,srcSize)] * s[modr(kk,srcSize)*srcSize+modr(ii,srcSize)]; *sum += power; if (power > *maximum) *maximum = power; } }
static void emit_zero_reg(Reg r) { emit_2(0x31, modr(r, r)); }
static void emit_reg2(Reg dst, Reg src) { emit_1(modr(dst, src)); }