HIR vs Ghidra
Fission's HIR(clone-only readability layer) next to Ghidra's own decompiled output for the same function. Semantic correctness is measured on Fission's NIR, not HIR — this page is purely a readability comparison.
HIR vs Ghidra — readability, side by side, not ranking
Fission's HIR(clone-only readability layer) next to Ghidra's own decompiled output for the same function. Semantic correctness is measured on Fission's NIR, not HIR — this page is purely a readability comparison.
Readability comparison only — never used for semantic ranking (that is Fission NIR vs. each tool's output, elsewhere on this dashboard). This is what a human reading each tool's output would actually see.
typedef struct fission_agg8 {
uint field_0;
unsigned char _pad_4[4];
} fission_agg8;
longlong accumulate_pairs(fission_agg8 * param_1, ulonglong param_2)
{
longlong local_20;
longlong local_14;
int uVar31;
longlong xVar41;
local_14 = 0;
for (local_20 = 0; local_20 < param_2; local_20 = xVar41) {
uVar31 = (longlong)((fission_agg8 *)(param_1))[local_20].field_0 * (longlong)*(uint *)((uint8_t *)(param_1 + (local_20 << 1)) + 1);
uVar31 += local_14;
local_14 = uVar31;
xVar41 = local_20;
xVar41 = local_20 + 1;
}
return local_14;
}int accumulate_pairs(Pair *pairs,size_t len)
{
size_t i;
int total;
size_t len_local;
Pair *pairs_local;
total = 0;
for (i = 0; i < len; i = i + 1) {
total = pairs[i].key * pairs[i].value + total;
}
return total;
}Both columns are each tool's own most human-oriented output — Fission's HIR printer vs. Ghidra's default decompiler window text. Diagnostic only: semantic correctness ranking is computed on Fission's NIR (not shown here), never on HIR.