compiler startup speed, decomp options, add some shrub docs (#1187)

This commit is contained in:
water111 2022-02-19 21:31:24 -05:00 committed by GitHub
parent 4a7a297649
commit ff6362d181
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 1498 additions and 9 deletions

View File

@ -190,9 +190,9 @@ int main(int argc, char** argv) {
fmt::print("[Mem] After text: {} MB\n", get_peak_rss() / (1024 * 1024));
decompiler::TextureDB tex_db;
if (config.process_tpages) {
if (config.process_tpages || config.levels_extract) {
auto result = db.process_tpages(tex_db);
if (!result.empty()) {
if (!result.empty() && config.process_tpages) {
file_util::write_text_file(file_util::get_file_path({"assets", "tpage-dir.txt"}), result);
}
}

1486
docs/scratch/shrub_asm.md Normal file

File diff suppressed because it is too large Load Diff

View File

@ -94,7 +94,7 @@
:tool 'dgo
:out `(,out-name)
)
(append!! *all-cgos* out-name)
(set! *all-cgos* (cons out-name *all-cgos*))
)
)
@ -141,7 +141,7 @@
(defstep :in path
:tool 'copy
:out `(,out-file))
(append!! *all-str* out-file)))
(set! *all-str* (cons out-file *all-str*))))
(define *all-vis* '())
(defmacro copy-vis-files (&rest files)
@ -153,7 +153,7 @@
(defstep :in path
:tool 'copy
:out `(,out-name))
(append!! *all-vis* out-name)))
(set! *all-vis* (cons out-name *all-vis*))))
(defmacro group (name &rest stuff)
@ -1864,13 +1864,14 @@
(group-list "iso"
`("out/iso/0COMMON.TXT"
"out/iso/0SUBTIT.TXT"
,@*all-cgos*
,@*all-vis*
,@*all-str*)
,@(reverse *all-cgos*)
,@(reverse *all-vis*)
,@(reverse *all-str*))
)
(group-list "spools"
`(,@*all-str*)
`(,@(reverse *all-str*))
)
(group-list "text"

View File

@ -74,6 +74,8 @@ void MakeSystem::load_project_file(const std::string& file_path) {
auto data = m_goos.reader.read_from_file({file_path});
// interpret it, which will call various handlers.
m_goos.eval(data, m_goos.global_environment.as_env_ptr());
fmt::print("Loaded project {} with {} steps in {} ms\n", file_path, m_output_to_step.size(),
(int)timer.getMs());
}
goos::Object MakeSystem::handle_defstep(const goos::Object& form,