mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
0212aa10c9
* update refs * [decompiler] read and process art groups * finish decompiler art group selection & detect in `ja-group?` * make art stuff work on offline tests! * [decompiler] detect `ja-group!` (primitive) * corrections. * more * use new feature on skel groups! * find `loop!` as well * fully fledged `ja` macro & decomp + `loop` detect * fancy fixed point printing! * update source * `:num! max` (i knew i should've done this) * Update jak1_ntsc_black_label.jsonc * hi imports * make compiling the game work * fix `defskelgroup` * clang * update refs * fix chan * fix seek and finalboss * fix tests * delete unused function * track let rewrite stats * reorder `rewrite_let` * Update .gitattributes * fix bug with `:num! max` * Update robotboss-part.gc * Update goal-lib.gc * document `ja` * get rid of pc fixes thing * use std::abs
27 lines
618 B
C++
27 lines
618 B
C++
#pragma once
|
|
|
|
#include "decompiler/Function/Function.h"
|
|
#include "decompiler/IR2/Env.h"
|
|
#include "decompiler/IR2/Form.h"
|
|
#include "decompiler/ObjectFile/ObjectFileDB.h"
|
|
|
|
namespace decompiler {
|
|
|
|
struct LetStats {
|
|
int total_vars = 0;
|
|
int vars_in_lets = 0;
|
|
|
|
void operator+=(const LetStats& other) {
|
|
total_vars += other.total_vars;
|
|
vars_in_lets += other.vars_in_lets;
|
|
}
|
|
};
|
|
|
|
LetStats insert_lets(const Function& func,
|
|
Env& env,
|
|
FormPool& pool,
|
|
Form* top_level_form,
|
|
LetRewriteStats& let_stats);
|
|
|
|
} // namespace decompiler
|