diff --git a/decompiler/Function/CfgVtx.cpp b/decompiler/Function/CfgVtx.cpp index 220ffae125..e70be31832 100644 --- a/decompiler/Function/CfgVtx.cpp +++ b/decompiler/Function/CfgVtx.cpp @@ -2855,14 +2855,14 @@ std::shared_ptr build_cfg(const LinkedObjectFile& file, changed = changed || cfg->find_infinite_continue(); if (changed && !complained_about_weird_gotos) { complained_about_weird_gotos = true; - func.warnings.general_warning( + func.warnings.warning( "Found some very strange gotos. Check result carefully, this is not well tested."); } } } if (!cfg->is_fully_resolved()) { - func.warnings.cfg_build_warning("Could not fully resolve CFG"); + func.warnings.error("CFG building failed: Could not fully resolve CFG"); } return cfg; diff --git a/decompiler/Function/Function.cpp b/decompiler/Function/Function.cpp index 86e7a9c14a..7dc33c21af 100644 --- a/decompiler/Function/Function.cpp +++ b/decompiler/Function/Function.cpp @@ -71,7 +71,7 @@ void Function::analyze_prologue(const LinkedObjectFile& file) { "Function {} was flagged as asm due to this instruction: {}. Consider flagging as asm " "in config!", name(), instr.to_string(file.labels)); - warnings.general_warning("Flagged as asm because of {}", instr.to_string(file.labels)); + warnings.warning("Flagged as asm because of {}", instr.to_string(file.labels)); suspected_asm = true; return; } @@ -97,7 +97,7 @@ void Function::analyze_prologue(const LinkedObjectFile& file) { "Function {} was flagged as asm due to this instruction: {}. Consider flagging as asm " "in config!", name(), instr.to_string(file.labels)); - warnings.general_warning("Flagged as asm because of {}", instr.to_string(file.labels)); + warnings.warning("Flagged as asm because of {}", instr.to_string(file.labels)); suspected_asm = true; return; } @@ -133,7 +133,7 @@ void Function::analyze_prologue(const LinkedObjectFile& file) { // sometimes stack memory is zeroed or a register is spilled immediately after gpr backups, // and this fools the previous check. if (store_reg == make_gpr(Reg::R0) || store_reg == make_gpr(Reg::A0)) { - warnings.general_warning("Check prologue - tricky store of {}", store_reg.to_string()); + warnings.warning("Check prologue - tricky store of {}", store_reg.to_string()); expect_nothing_after_gprs = true; break; } @@ -152,8 +152,8 @@ void Function::analyze_prologue(const LinkedObjectFile& file) { suspected_asm = true; lg::warn("Function {} stores on the stack in a strange way ({}), flagging as asm!", instructions.at(idx + i).to_string(file.labels), name()); - warnings.general_warning("Flagged as asm due to strange stack store: {}", - instructions.at(idx + i).to_string(file.labels)); + warnings.warning("Flagged as asm due to strange stack store: {}", + instructions.at(idx + i).to_string(file.labels)); return; } } @@ -181,8 +181,8 @@ void Function::analyze_prologue(const LinkedObjectFile& file) { suspected_asm = true; lg::warn("Function {} stores on the stack in a strange way ({}), flagging as asm!", instructions.at(idx + i).to_string(file.labels), name()); - warnings.general_warning("Flagged as asm due to strange stack store: {}", - instructions.at(idx + i).to_string(file.labels)); + warnings.warning("Flagged as asm due to strange stack store: {}", + instructions.at(idx + i).to_string(file.labels)); return; } } @@ -372,7 +372,7 @@ void Function::check_epilogue(const LinkedObjectFile& file) { ASSERT(is_jr_ra(instructions.at(idx))); idx--; lg::warn("Function {} has a double return and is being flagged as asm.", name()); - warnings.general_warning("Flagged as asm due to double return"); + warnings.warning("Flagged as asm due to double return"); } // delay slot should be daddiu sp, sp, offset ASSERT(is_gpr_2_imm_int(instructions.at(idx), InstructionKind::DADDIU, make_gpr(Reg::SP), diff --git a/decompiler/Function/Warnings.h b/decompiler/Function/Warnings.h index adb9c6a3b1..ad1a7bc4f1 100644 --- a/decompiler/Function/Warnings.h +++ b/decompiler/Function/Warnings.h @@ -1,6 +1,7 @@ #pragma once #include #include +#include #include #include "common/util/Assert.h" @@ -13,44 +14,43 @@ class DecompWarnings { DecompWarnings() = default; template - void general_warning(const std::string& str, Args&&... args) { - warning(Warning::Kind::GENERAL, str, std::forward(args)...); + void warning(const std::string& str, Args&&... args) { + _warning(Warning::Kind::WARN, false, str, std::forward(args)...); } template - void warn_and_throw(const std::string& str, Args&&... args) { + void unique_warning(const std::string& str, Args&&... args) { + _warning(Warning::Kind::WARN, true, str, std::forward(args)...); + } + + template + void error(const std::string& str, Args&&... args) { + _warning(Warning::Kind::ERR, false, str, std::forward(args)...); + } + + template + void unique_error(const std::string& str, Args&&... args) { + _warning(Warning::Kind::ERR, true, str, std::forward(args)...); + } + + template + void error_and_throw(const std::string& str, Args&&... args) { auto text = fmt::format(str, std::forward(args)...); - warning(Warning::Kind::GENERAL, text); + _warning(Warning::Kind::ERR, false, text); throw std::runtime_error(text); } - template - void expression_build_warning(const std::string& str, Args&&... args) { - warning(Warning::Kind::EXPR_BUILD_FAILED, str, std::forward(args)...); - } - - template - void cfg_build_warning(const std::string& str, Args&&... args) { - warning(Warning::Kind::CFG_FAILED, str, std::forward(args)...); - } - - template - void type_prop_warning(const std::string& str, Args&&... args) { - warning(Warning::Kind::TYPE_PROP_FAILED, str, std::forward(args)...); - } - - template - void bad_vf_dependency(const std::string& str, Args&&... args) { - warning(Warning::Kind::BAD_VF_DEPENDENCY, str, std::forward(args)...); - } - template void info(const std::string& str, Args&&... args) { - warning(Warning::Kind::INFO, str, std::forward(args)...); + _warning(Warning::Kind::INFO, false, str, std::forward(args)...); } - bool has_warnings() const { return !m_warnings.empty() || m_used_lq_sq; } - void warn_sq_lq() { m_used_lq_sq = true; } + template + void unique_info(const std::string& str, Args&&... args) { + _warning(Warning::Kind::INFO, true, str, std::forward(args)...); + } + + bool has_warnings() const { return !m_warnings.empty(); } std::string get_warning_text(bool as_comment) const { std::string result; @@ -60,38 +60,26 @@ class DecompWarnings { } result += w.print(); } - if (m_used_lq_sq) { - result += ";; Used lq/sq\n"; - } return result; } private: + // Add warnings without thinking about it, if you say they should be unique, only max of 1 will be + // logged with that same text. + std::unordered_set unique_warnings; + struct Warning { - enum class Kind { - GENERAL, - EXPR_BUILD_FAILED, - CFG_FAILED, - TYPE_PROP_FAILED, - INFO, - BAD_VF_DEPENDENCY - }; + enum class Kind { INFO, WARN, ERR }; Warning(Kind kind, std::string text) : warning_kind(kind), message(std::move(text)) {} std::string print() const { switch (warning_kind) { - case Kind::GENERAL: - return fmt::format("WARN: {}\n", message); - case Kind::EXPR_BUILD_FAILED: - return fmt::format("WARN: Expression building failed: {}\n", message); - case Kind::CFG_FAILED: - return fmt::format("WARN: CFG building failed: {}\n", message); - case Kind::TYPE_PROP_FAILED: - return fmt::format("WARN: Type Propagation failed: {}\n", message); - case Kind::BAD_VF_DEPENDENCY: - return fmt::format("WARN: Bad vector register dependency: {}\n", message); case Kind::INFO: return fmt::format("INFO: {}\n", message); + case Kind::WARN: + return fmt::format("WARN: {}\n", message); + case Kind::ERR: + return fmt::format("ERROR: {}\n", message); default: ASSERT(false); return {}; @@ -103,8 +91,15 @@ class DecompWarnings { }; template - void warning(Warning::Kind kind, const std::string& str, Args&&... args) { - Warning warn(kind, fmt::format(str, std::forward(args)...)); + void _warning(Warning::Kind kind, bool unique, const std::string& str, Args&&... args) { + std::string msg = fmt::format(str, std::forward(args)...); + if (unique) { + if (unique_warnings.find(msg) != unique_warnings.end()) { + return; + } + unique_warnings.insert(msg); + } + Warning warn(kind, msg); m_warnings.push_back(warn); } diff --git a/decompiler/IR2/AtomicOpTypeAnalysis.cpp b/decompiler/IR2/AtomicOpTypeAnalysis.cpp index 0ad9196887..327e8ada80 100644 --- a/decompiler/IR2/AtomicOpTypeAnalysis.cpp +++ b/decompiler/IR2/AtomicOpTypeAnalysis.cpp @@ -703,7 +703,7 @@ TP_Type SimpleExpression::get_type_int2(const TypeState& input, if (m_kind == Kind::OR && arg0_type.typespec() == TypeSpec("float") && arg1_type.typespec() == TypeSpec("float")) { - env.func->warnings.general_warning("Using logior on floats"); + env.func->warnings.warning("Using logior on floats"); // returning int instead of uint because they like to use the float sign bit as an integer sign // bit. return TP_Type::make_from_ts(TypeSpec("float")); @@ -1433,13 +1433,12 @@ TypeState StackSpillLoadOp::propagate_types_internal(const TypeState& input, // stack slot load auto& info = env.stack_spills().lookup(m_offset); if (info.size != m_size) { - env.func->warnings.general_warning( - "Stack slot load at {} mismatch: defined as size {}, got size {}", m_offset, info.size, - m_size); + env.func->warnings.error("Stack slot load at {} mismatch: defined as size {}, got size {}", + m_offset, info.size, m_size); } if (info.is_signed != m_is_signed) { - env.func->warnings.general_warning("Stack slot offset {} signed mismatch", m_offset); + env.func->warnings.warning("Stack slot offset {} signed mismatch", m_offset); } auto& loaded_type = input.get_slot(m_offset); @@ -1453,8 +1452,8 @@ TypeState StackSpillStoreOp::propagate_types_internal(const TypeState& input, DecompilerTypeSystem& dts) { auto& info = env.stack_spills().lookup(m_offset); if (info.size != m_size) { - env.func->warnings.general_warning( - "Stack slot store mismatch: defined as size {}, got size {}\n", info.size, m_size); + env.func->warnings.error("Stack slot store mismatch: defined as size {}, got size {}\n", + info.size, m_size); } auto stored_type = m_value.get_type(input, env, dts); diff --git a/decompiler/IR2/FormExpressionAnalysis.cpp b/decompiler/IR2/FormExpressionAnalysis.cpp index 8048597a87..17ce439e74 100644 --- a/decompiler/IR2/FormExpressionAnalysis.cpp +++ b/decompiler/IR2/FormExpressionAnalysis.cpp @@ -2162,7 +2162,7 @@ void SimpleExpressionElement::update_from_stack_subu_l32_s7(const Env& env, auto arg = pop_to_forms({var}, env, pool, stack, allow_side_effects).at(0); auto type = env.get_types_before_op(var.idx()).get(var.reg()).typespec(); if (type != TypeSpec("handle")) { - env.func->warnings.general_warning( + env.func->warnings.warning( ".subu (32-bit) used on a {} at idx {}. This probably should be a handle.", type.print(), var.idx()); } @@ -3618,7 +3618,7 @@ void UntilElement::push_to_stack(const Env& env, FormPool& pool, FormStack& stac stack.push_form_element(this, true); if (false_destination) { - env.func->warnings.general_warning("new jak 2 until loop case, check carefully"); + env.func->warnings.warning("new jak 2 until loop case, check carefully"); stack.push_value_to_reg(*false_destination, pool.form(SimpleAtom::make_sym_val("#f")), true, TypeSpec("symbol")); @@ -5695,7 +5695,7 @@ bool try_vector_reset_inline(const Env& env, // the function that attempts the pop. auto store_var = form_as_ra(store); if (!store_var) { - env.func->warnings.general_warning("Almost found vector reset, but couldn't get store var."); + env.func->warnings.warning("Almost found vector reset, but couldn't get store var."); // stack.push_form_element(new_thing->elts().at(0), true); return false; } diff --git a/decompiler/IR2/FormStack.cpp b/decompiler/IR2/FormStack.cpp index 0507d98a5b..672e315c9e 100644 --- a/decompiler/IR2/FormStack.cpp +++ b/decompiler/IR2/FormStack.cpp @@ -397,7 +397,7 @@ std::optional rewrite_to_get_var(std::vector& defa auto cast = last_op_as_set->required_cast(env); if (cast && cast == TypeSpec("none")) { - env.func->warnings.general_warning( + env.func->warnings.warning( "rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: {}]", last_op_as_set->dst().idx()); cast = std::nullopt; diff --git a/decompiler/IR2/IR2_common.h b/decompiler/IR2/IR2_common.h index 9248de12ed..0f1e4f387c 100644 --- a/decompiler/IR2/IR2_common.h +++ b/decompiler/IR2/IR2_common.h @@ -209,7 +209,7 @@ struct UseDefInfo { for (auto& x : defs) { if (x.op_id == op_id) { if (x.disabled) { - warnings.general_warning( + warnings.warning( "disable def twice: {}. This may happen when a cond (no else) is nested inside of " "another conditional, but it should be rare.", x.op_id); diff --git a/decompiler/ObjectFile/ObjectFileDB_IR2.cpp b/decompiler/ObjectFile/ObjectFileDB_IR2.cpp index 7007e8b88a..e056bffb7c 100644 --- a/decompiler/ObjectFile/ObjectFileDB_IR2.cpp +++ b/decompiler/ObjectFile/ObjectFileDB_IR2.cpp @@ -428,7 +428,7 @@ void ObjectFileDB::ir2_stack_spill_slot_pass(int seg, ObjectFileData& data) { auto spill_map = build_spill_map(func.instructions, {func.prologue_end, func.epilogue_start}); func.ir2.env.set_stack_spills(spill_map); } catch (std::exception& e) { - func.warnings.general_warning("stack spill failed: {}", e.what()); + func.warnings.warning("stack spill failed: {}", e.what()); } }); } @@ -465,7 +465,7 @@ void ObjectFileDB::ir2_atomic_op_pass(int seg, const Config& config, ObjectFileD } catch (std::exception& e) { lg::warn("Function {} from {} could not be converted to atomic ops: {}", func.name(), data.to_unique_name(), e.what()); - func.warnings.general_warning("Failed to convert to atomic ops: {}", e.what()); + func.warnings.error("Failed to convert to atomic ops: {}", e.what()); } } }); @@ -533,11 +533,11 @@ void ObjectFileDB::ir2_type_analysis_pass(int seg, const Config& config, ObjectF if (run_type_analysis_ir2(ts, dts, func)) { func.ir2.env.types_succeeded = true; } else { - func.warnings.type_prop_warning("Type analysis failed"); + func.warnings.error("Type Propagation failed: Type analysis failed"); } } else { lg::warn("Function {} didn't know its type", func.name()); - func.warnings.type_prop_warning("Function {} has unknown type", func.name()); + func.warnings.error("Function {} has unknown type", func.name()); } } }); @@ -567,7 +567,7 @@ void ObjectFileDB::ir2_register_usage_pass(int seg, ObjectFileData& data) { for (auto& x : dep_regs) { if ((x.get_kind() == Reg::VF && x.get_vf() != 0) || x.get_kind() == Reg::SPECIAL) { lg::error("Bad vf dependency on {} in {}", x.to_charp(), func.name()); - func.warnings.bad_vf_dependency("{}", x.to_string()); + func.warnings.error("Bad vector register dependency: {}", x.to_string()); continue; } @@ -581,8 +581,7 @@ void ObjectFileDB::ir2_register_usage_pass(int seg, ObjectFileData& data) { } lg::error("Bad register dependency on {} in {}", x.to_charp(), func.name()); - func.warnings.general_warning("Function may read a register that is not set: {}", - x.to_string()); + func.warnings.error("Function may read a register that is not set: {}", x.to_string()); } } } @@ -619,7 +618,7 @@ void ObjectFileDB::ir2_cfg_build_pass(int seg, ObjectFileData& data) { try { build_initial_forms(func); } catch (std::exception& e) { - func.warnings.general_warning("Failed to structure: {}", e.what()); + func.warnings.error("Failed to structure: {}", e.what()); func.ir2.top_form = nullptr; } } @@ -664,7 +663,7 @@ void ObjectFileDB::ir2_insert_lets(int seg, ObjectFileData& data) { "none if something is actually returned.", e.what()); lg::warn(err); - func.warnings.general_warning(err); + func.warnings.error(err); } } }); @@ -688,7 +687,7 @@ void ObjectFileDB::ir2_insert_anonymous_functions(int seg, ObjectFileData& data) try { insert_static_refs(func.ir2.top_form, *func.ir2.form_pool, func, dts); } catch (std::exception& e) { - func.warnings.general_warning("Failed static ref finding: {}\n", e.what()); + func.warnings.error("Failed static ref finding: {}\n", e.what()); lg::error("Function {} failed static ref: {}\n", func.name(), e.what()); } } diff --git a/decompiler/analysis/atomic_op_builder.cpp b/decompiler/analysis/atomic_op_builder.cpp index 435a7d182b..b633c56e3c 100644 --- a/decompiler/analysis/atomic_op_builder.cpp +++ b/decompiler/analysis/atomic_op_builder.cpp @@ -2095,7 +2095,7 @@ int convert_block_to_atomic_ops(int begin_idx, std::unique_ptr op; if (instr[0].kind == InstructionKind::SQ || instr[0].kind == InstructionKind::LQ) { - warnings.warn_sq_lq(); + warnings.unique_info("Used lq/sq"); } if (!converted && n_instr >= 12) { diff --git a/decompiler/analysis/cfg_builder.cpp b/decompiler/analysis/cfg_builder.cpp index f0bb7cb65a..76eace1500 100644 --- a/decompiler/analysis/cfg_builder.cpp +++ b/decompiler/analysis/cfg_builder.cpp @@ -1454,7 +1454,7 @@ Form* try_sc_as_type_of_jak2(FormPool& pool, Function& f, const ShortCircuit* vt f.ir2.env.disable_def(b2_delay_op.dst(), f.warnings); f.ir2.env.disable_use(shift_left->expr().get_arg(0).var()); - f.warnings.general_warning("Using new Jak 2 rtype-of"); + f.warnings.warning("Using new Jak 2 rtype-of"); return b0_ptr; } @@ -2046,7 +2046,7 @@ void build_initial_forms(Function& function) { function.ir2.top_form = result; } catch (std::runtime_error& e) { - function.warnings.general_warning(e.what()); + function.warnings.error(e.what()); lg::warn("Failed to build initial forms in {}: {}", function.name(), e.what()); } } diff --git a/decompiler/analysis/expression_build.cpp b/decompiler/analysis/expression_build.cpp index e1ba4b3b29..96cef58b5c 100644 --- a/decompiler/analysis/expression_build.cpp +++ b/decompiler/analysis/expression_build.cpp @@ -158,13 +158,13 @@ bool convert_to_expressions( "Function {} has a return type of none, but the expression builder found a return " "statement.", f.name()); - f.warnings.expression_build_warning(warn); + f.warnings.warning(warn); lg::warn(warn); } } } catch (std::exception& e) { - f.warnings.expression_build_warning("In {}: {}", f.name(), e.what()); + f.warnings.error("Expression building failed: In {}: {}", f.name(), e.what()); lg::warn("In {}: {}", f.name(), e.what()); return false; } diff --git a/decompiler/analysis/find_defpartgroup.cpp b/decompiler/analysis/find_defpartgroup.cpp index 2007c624c4..034d16cd2b 100644 --- a/decompiler/analysis/find_defpartgroup.cpp +++ b/decompiler/analysis/find_defpartgroup.cpp @@ -45,7 +45,7 @@ L82: auto& first_word = words.at(start_word_idx); if (first_word.kind() != LinkedWord::TYPE_PTR || first_word.symbol_name() != "sparticle-launch-group") { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Reference to sparticle-launch-group bad: invalid type pointer"); } @@ -58,7 +58,7 @@ L82: auto& string_word = words.at(start_word_idx + 3); if (string_word.kind() != LinkedWord::PTR) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Reference to sparticle-launch-group bad: invalid name label"); } group.name = env.file->get_goal_string_by_label( @@ -66,7 +66,7 @@ L82: auto& array_word = words.at(start_word_idx + 4); if (array_word.kind() != LinkedWord::PTR) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Reference to sparticle-launch-group bad: invalid array label"); } auto& array_lab = env.file->get_label_by_name(env.file->get_label_name(array_word.label_id())); @@ -90,7 +90,7 @@ L82: for (int i = 0; i < 4; i++) { auto& word = words.at(start_word_idx + 8 + i); if (word.kind() != LinkedWord::PLAIN_DATA) { - env.func->warnings.warn_and_throw("Reference to sparticle-launch-group bad: invalid bounds"); + env.func->warnings.error_and_throw("Reference to sparticle-launch-group bad: invalid bounds"); } group.bounds[i] = *reinterpret_cast(&word.data); } @@ -124,19 +124,19 @@ L80: auto& first_word = words.at(start_word_idx); if (first_word.kind() != LinkedWord::TYPE_PTR || first_word.symbol_name() != "sparticle-launcher") { - env.func->warnings.warn_and_throw("Reference to sparticle-launcher bad: invalid type pointer"); + env.func->warnings.error_and_throw("Reference to sparticle-launcher bad: invalid type pointer"); } auto& empty1 = words.at(start_word_idx + 1); auto& empty2 = words.at(start_word_idx + 2); if (empty1.kind() != LinkedWord::PLAIN_DATA || empty1.data != 0 || empty2.kind() != LinkedWord::PLAIN_DATA || empty2.data != 0) { - env.func->warnings.warn_and_throw("Reference to sparticle-launcher bad: accums not empty"); + env.func->warnings.error_and_throw("Reference to sparticle-launcher bad: accums not empty"); } auto& array_word = words.at(start_word_idx + 3); if (array_word.kind() != LinkedWord::PTR) { - env.func->warnings.warn_and_throw("Reference to sparticle-launcher bad: invalid array label"); + env.func->warnings.error_and_throw("Reference to sparticle-launcher bad: invalid array label"); } auto& array_lab = env.file->get_label_by_name(env.file->get_label_name(array_word.label_id())); auto& array_words = env.file->words_by_seg.at(array_lab.target_segment); diff --git a/decompiler/analysis/find_defstates.cpp b/decompiler/analysis/find_defstates.cpp index 063fa8104c..6237a6dc76 100644 --- a/decompiler/analysis/find_defstates.cpp +++ b/decompiler/analysis/find_defstates.cpp @@ -21,7 +21,7 @@ namespace { std::pair get_state_info(FormElement* state_set, const Env& env) { auto sff = dynamic_cast(state_set); if (!sff) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Failed to identify defstate. The state symbol set was supposed to be: {}, but " "this doesn't look like a set.", state_set->to_string(env)); @@ -29,7 +29,7 @@ std::pair get_state_info(FormElement* state_set, const En auto atom = form_as_atom(sff->dst()); if (!atom || atom->get_kind() != SimpleAtom::Kind::SYMBOL_VAL) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Failed to identify defstate. The state symbol set was: {}, which doesn't set a symbol", state_set->to_string(env)); } @@ -38,25 +38,25 @@ std::pair get_state_info(FormElement* state_set, const En auto type = env.dts->symbol_types.find(state_name); if (type == env.dts->symbol_types.end()) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Identified a defstate for state {}, but there is no type information for this state.", state_name); } if (type->second.base_type() != "state") { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Identified a defstate for state {}, but our type information thinks it is a {}, not a " "state.", state_name, type->second.print()); } if (type->second.arg_count() == 0) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Identified a defstate for state {}, but there is no argument information.", state_name); } if (type->second.last_arg() == TypeSpec("none")) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Identified a defstate for state {}, but the process type is none. You must " "provide a process type as the final argument of a state", state_name); @@ -88,7 +88,7 @@ std::vector get_defstate_entries( auto mr = match(matcher, &temp); if (!mr.matched) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "In defstate for state {}, failed to recognize handler set: {}", state_name, temp.to_string(env)); } @@ -107,9 +107,9 @@ std::vector get_defstate_entries( if (!var || env.get_variable_name(*var) != env.get_variable_name(let_dest_var)) { if (var) { - env.func->warnings.warn_and_throw("Messed up defstate. State is in {}, but we set {}", - env.get_variable_name(let_dest_var), - env.get_variable_name(*var)); + env.func->warnings.error_and_throw("Messed up defstate. State is in {}, but we set {}", + env.get_variable_name(let_dest_var), + env.get_variable_name(*var)); } else { ASSERT(false); } @@ -125,7 +125,7 @@ std::vector get_defstate_entries( if (handler_atom && handler_atom->is_label()) { auto handler_func = env.file->try_get_function_at_label(handler_atom->label()); if (!handler_func) { - env.func->warnings.warn_and_throw("Failed to find handler function."); + env.func->warnings.error_and_throw("Failed to find handler function."); } this_entry.is_behavior = true; @@ -161,8 +161,8 @@ std::vector get_defstate_entries( if (skip_states.count(name_to_check_for_skip) > 0) { if (skip_states.at(name_to_check_for_skip).find(name) != skip_states.at(name_to_check_for_skip).end()) { - env.func->warnings.general_warning("SKIP: skipping '{}' handler for state '{}'", name, - name_to_check_for_skip); + env.func->warnings.warning("SKIP: skipping '{}' handler for state '{}'", name, + name_to_check_for_skip); continue; } } @@ -186,7 +186,7 @@ FormElement* rewrite_nonvirtual_defstate( auto first_in_body = elt->body()->at(body_index); auto info = get_state_info(first_in_body, env); if (info.first != expected_state_name) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Inconsistent defstate name. code has {}, static state has {}", info.first, expected_state_name); } @@ -237,18 +237,18 @@ std::string verify_empty_state_and_get_name(DecompiledDataElement* state, const auto first_word = words.at(start_word_idx); if (first_word.kind() != LinkedWord::TYPE_PTR || first_word.symbol_name() != "state") { - env.func->warnings.warn_and_throw("Reference to state bad: invalid type pointer"); + env.func->warnings.error_and_throw("Reference to state bad: invalid type pointer"); } auto name_word = words.at(start_word_idx + 1); if (name_word.kind() != LinkedWord::SYM_PTR) { - env.func->warnings.warn_and_throw("Reference to state bad: invalid name"); + env.func->warnings.error_and_throw("Reference to state bad: invalid name"); } for (int i = 0; i < 7; i++) { auto& word = words.at(start_word_idx + 2 + i); if (word.kind() != LinkedWord::SYM_PTR || word.symbol_name() != "#f") { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Reference to state bad: got a non #f in the initial fields"); } } @@ -297,7 +297,7 @@ FormElement* rewrite_virtual_defstate( auto parent_state = inherit_mr.maps.forms.at(1); if (env.get_variable_name(state_var_from_let_def) != env.get_variable_name(state_var)) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Variable name disagreement in virtual defstate: began with {}, but did method " "set using {}", env.get_variable_name(state_var_from_let_def), env.get_variable_name(state_var)); @@ -307,7 +307,7 @@ FormElement* rewrite_virtual_defstate( // let's warn here instead of trying to go on. auto parent_state_cast = parent_state->try_as_element(); if (parent_state_cast) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "virtual defstate attempted on something that isn't a state: {}\nDid you " "forget to put :state in the method definition?", parent_state_cast->to_string(env)); @@ -318,7 +318,7 @@ FormElement* rewrite_virtual_defstate( {Matcher::any_symbol(0), Matcher::any_constant_token(1)}); auto mot_mr = match(mot_matcher, parent_state); if (!mot_mr.matched) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Failed to recognize virtual defstate. Got a {} as the parent to inherit from.", parent_state->to_string(env)); } @@ -338,7 +338,7 @@ FormElement* rewrite_virtual_defstate( {Matcher::any_symbol(0), Matcher::any_integer(1), Matcher::any(2)}); auto mset_mr = match(mset_matcher, &temp); if (!mset_mr.matched) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Failed to recognize virtual defstate. Got a {} as the second thing, but was " "expecting method-set! call", temp.to_string(env)); @@ -351,7 +351,7 @@ FormElement* rewrite_virtual_defstate( // should be the state again. auto val = strip_cast(mset_mr.maps.forms.at(2)->try_as_single_element()); if (val->to_string(env) != env.get_variable_name(state_var_from_let_def)) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Variable name disagreement in virtual defstate: began with {}, but did method " "set using {}", val->to_string(env), env.get_variable_name(state_var_from_let_def)); @@ -361,7 +361,7 @@ FormElement* rewrite_virtual_defstate( auto method_info = env.dts->ts.lookup_method(type_name, method_id); if (method_info.type.base_type() != "state" || method_info.type.last_arg().base_type() != "_type_") { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Virtual defstate is defining a virtual state in method {} of {}, but the type " "of this method is {}, which is not a valid virtual state type (must be " "\"(state ... _type_)\")", @@ -383,7 +383,7 @@ FormElement* rewrite_virtual_defstate( } } else { if (inherit_info) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Virtual defstate for state {} in type {}: the state wasn't defined in the " "parent but was inherited.", expected_state_name, type_name); @@ -395,7 +395,7 @@ FormElement* rewrite_virtual_defstate( if (inherit_info) { auto child_type_info = env.dts->ts.lookup_type(type_name); if (child_type_info->get_parent() != inherit_info->parent_type_name) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Parent type disagreement in virtual defstate. The state is inherited from {}, but the " "parent is {}", inherit_info->parent_type_name, child_type_info->get_parent()); @@ -403,7 +403,7 @@ FormElement* rewrite_virtual_defstate( auto parent_method_info = env.dts->ts.lookup_method(inherit_info->parent_type_name, method_id); if (parent_method_info.name != inherit_info->method_name) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Disagreement between inherit and define. We inherited from method {}, but redefine {}", inherit_info->method_name, parent_method_info.name); } @@ -412,7 +412,7 @@ FormElement* rewrite_virtual_defstate( // name matches if (expected_state_name != method_info.name) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Disagreement between state name and type system name. The state is named {}, " "but the slot is named {}, defined in type {}", expected_state_name, method_info.name, method_info.defined_in_type); diff --git a/decompiler/analysis/find_skelgroups.cpp b/decompiler/analysis/find_skelgroups.cpp index 0447781643..324adaaf51 100644 --- a/decompiler/analysis/find_skelgroups.cpp +++ b/decompiler/analysis/find_skelgroups.cpp @@ -14,12 +14,12 @@ namespace { std::string get_skelgroup_name(FormElement* skel_set, const Env& env) { auto sff = dynamic_cast(skel_set); if (!sff || !skel_set) { - env.func->warnings.warn_and_throw("Failed to identify defskelgroup."); + env.func->warnings.error_and_throw("Failed to identify defskelgroup."); } auto atom = form_as_atom(sff->dst()); if (!atom || atom->get_kind() != SimpleAtom::Kind::SYMBOL_VAL) { - env.func->warnings.warn_and_throw( + env.func->warnings.error_and_throw( "Failed to identify defskelgroup. The skeleton-group symbol set was: {}, which doesn't set " "a symbol", skel_set->to_string(env)); @@ -62,34 +62,34 @@ DefskelgroupElement::StaticInfo inspect_skel_group_data(DecompiledDataElement* s auto& type_word = words.at(start_word_idx - 1); if (type_word.kind() != LinkedWord::TYPE_PTR || type_word.symbol_name() != "skeleton-group") { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid type pointer"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid type pointer"); } auto& string_word = words.at(start_word_idx); if (string_word.kind() != LinkedWord::PTR) { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid name label"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid name label"); } result.art_name = env.file->get_goal_string_by_label( env.file->get_label_by_name(env.file->get_label_name(string_word.label_id()))); for (int i = 0; i < 4; i++) { auto& word = words.at(start_word_idx + 3 + i); if (word.kind() != LinkedWord::PLAIN_DATA) { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid bounds"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid bounds"); } result.bounds[i] = *reinterpret_cast(&word.data); } auto& lod_word = words.at(start_word_idx + 9); if (lod_word.kind() != LinkedWord::PLAIN_DATA) { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid max-lod"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid max-lod"); } result.max_lod = lod_word.data; auto& edge_word = words.at(start_word_idx + 14); if (edge_word.kind() != LinkedWord::PLAIN_DATA) { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid longest-edge"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid longest-edge"); } result.longest_edge = *reinterpret_cast(&edge_word.data); auto& other_word = words.at(start_word_idx + 15); if (other_word.kind() != LinkedWord::PLAIN_DATA) { - env.func->warnings.warn_and_throw("Reference to skelgroup bad: invalid other data"); + env.func->warnings.error_and_throw("Reference to skelgroup bad: invalid other data"); } result.tex_level = other_word.get_byte(0); result.version = other_word.get_byte(1); @@ -99,7 +99,7 @@ DefskelgroupElement::StaticInfo inspect_skel_group_data(DecompiledDataElement* s for (auto i : empty_words) { auto& word = words.at(start_word_idx + i); if (word.data != LinkedWord::PLAIN_DATA || word.data != 0) { - env.func->warnings.warn_and_throw(fmt::format("Reference to skelgroup bad: set word {}", i)); + env.func->warnings.error_and_throw(fmt::format("Reference to skelgroup bad: set word {}", i)); } } @@ -125,7 +125,7 @@ DefskelgroupElement::Info get_defskelgroup_entries(Form* body, auto mr = match(matcher, &temp); if (!mr.matched) { - env.func->warnings.warn_and_throw("defskelgroup set no match"); + env.func->warnings.error_and_throw("defskelgroup set no match"); } auto& var = mr.maps.regs.at(0); @@ -138,9 +138,9 @@ DefskelgroupElement::Info get_defskelgroup_entries(Form* body, if (!var || env.get_variable_name(*var) != env.get_variable_name(let_dest_var)) { if (var) { - env.func->warnings.warn_and_throw("Messed up defskelgroup. It is in {}, but we set {}", - env.get_variable_name(let_dest_var), - env.get_variable_name(*var)); + env.func->warnings.error_and_throw("Messed up defskelgroup. It is in {}, but we set {}", + env.get_variable_name(let_dest_var), + env.get_variable_name(*var)); } else { ASSERT(false); } @@ -171,8 +171,8 @@ FormElement* rewrite_defskelgroup(LetElement* elt, int last_lod = (elt->body()->size() - 3) / 2 - 1; if (last_lod > skelgroup_info.max_lod) { - env.func->warnings.warn_and_throw("defskelgroup exceeds max-lod of {} ({})", - skelgroup_info.max_lod, last_lod); + env.func->warnings.error_and_throw("defskelgroup exceeds max-lod of {} ({})", + skelgroup_info.max_lod, last_lod); } auto rest_info = get_defskelgroup_entries(elt->body(), env, elt->entries().at(0).dest); diff --git a/decompiler/analysis/inline_asm_rewrite.cpp b/decompiler/analysis/inline_asm_rewrite.cpp index 22e10c7373..039001368b 100644 --- a/decompiler/analysis/inline_asm_rewrite.cpp +++ b/decompiler/analysis/inline_asm_rewrite.cpp @@ -41,8 +41,8 @@ bool rewrite_inline_asm_instructions(Form* top_level_form, // If its an invalid or unsupported exception, skip it /*lg::warn("[ASM Re-Write] - Unsupported inline assembly instruction kind - [{}]", asmOp.instr.kind);*/ - f.warnings.general_warning("Unsupported inline assembly instruction kind - [{}]", - asmOp.m_instr.to_string(f.ir2.env.file->labels)); + f.warnings.error("Unsupported inline assembly instruction kind - [{}]", + asmOp.m_instr.to_string(f.ir2.env.file->labels)); new_entries.push_back(entry); continue; } else if (asmOp.skip) { @@ -51,8 +51,8 @@ bool rewrite_inline_asm_instructions(Form* top_level_form, // If its an invalid or unsupported exception, skip it /*lg::warn("[ASM Re-Write] - Inline assembly instruction marked with TODO - [{}]", asmOp.full_function_name());*/ - f.warnings.general_warning("Inline assembly instruction marked with TODO - [{}]", - asmOp.full_function_name()); + f.warnings.error("Inline assembly instruction marked with TODO - [{}]", + asmOp.full_function_name()); } // If we've made it this far, it's an AsmOperation that is also a supported vector @@ -87,7 +87,7 @@ bool rewrite_inline_asm_instructions(Form* top_level_form, std::string warning = fmt::format("ASM instruction re-writing failed in {}: {}", f.name(), e.what()); lg::warn(warning); - f.warnings.general_warning(";; {}", warning); + f.warnings.error(";; {}", warning); return false; } diff --git a/decompiler/analysis/label_types.cpp b/decompiler/analysis/label_types.cpp index e75a67a9c7..f8ad6937b4 100644 --- a/decompiler/analysis/label_types.cpp +++ b/decompiler/analysis/label_types.cpp @@ -55,8 +55,7 @@ void find_functions(LabelDB* db, LinkedObjectFile* file) { int offset_of_function = func.start_word * 4 + 4; auto idx_of_label = db->try_get_index_by_offset(seg, offset_of_function); if (!idx_of_label) { - func.warnings.general_warning("Could not find any references to this function: {}", - func.name()); + func.warnings.error("Could not find any references to this function: {}", func.name()); } else { auto old = db->set_and_get_previous(*idx_of_label, func.type, false, {}); if (old.known) { diff --git a/decompiler/analysis/type_analysis.cpp b/decompiler/analysis/type_analysis.cpp index 89d64c3821..f9c486e39c 100644 --- a/decompiler/analysis/type_analysis.cpp +++ b/decompiler/analysis/type_analysis.cpp @@ -128,8 +128,8 @@ bool run_type_analysis_ir2(const TypeSpec& my_type, DecompilerTypeSystem& dts, F op_types.at(op_id) = op->propagate_types(*init_types, func.ir2.env, dts); } catch (std::runtime_error& e) { lg::warn("Function {} failed type prop at op {}: {}", func.name(), op_id, e.what()); - func.warnings.type_prop_warning("Failed type prop at op {} ({}): {}", op_id, - op->to_string(func.ir2.env), e.what()); + func.warnings.error("Type Propagation failed: Failed type prop at op {} ({}): {}", op_id, + op->to_string(func.ir2.env), e.what()); func.ir2.env.set_types(block_init_types, op_types, *func.ir2.atomic_ops, my_type); return false; } diff --git a/lsp/state/workspace.cpp b/lsp/state/workspace.cpp index 26be5d9ea5..18d20d176c 100644 --- a/lsp/state/workspace.cpp +++ b/lsp/state/workspace.cpp @@ -193,8 +193,10 @@ void WorkspaceIRFile::identify_diagnostics(const uint32_t line_num_zero_based, const std::string& line) { std::regex info_regex(";; INFO: (.*)"); std::regex warn_regex(";; WARN: (.*)"); + std::regex error_regex(";; ERROR: (.*)"); std::smatch info_matches; std::smatch warn_matches; + std::smatch error_matches; LSPSpec::Range diag_range; diag_range.m_start = {line_num_zero_based, 0}; @@ -222,6 +224,21 @@ void WorkspaceIRFile::identify_diagnostics(const uint32_t line_num_zero_based, auto match = warn_matches[1]; lg::debug("Found warn-level diagnostic - {}", match.str()); LSPSpec::Diagnostic new_diag; + new_diag.m_severity = LSPSpec::DiagnosticSeverity::Warning; + new_diag.m_message = match.str(); + new_diag.m_range = diag_range; + new_diag.m_source = "OpenGOAL LSP"; + m_diagnostics.push_back(new_diag); + return; + } + } + // Check for a error level warnings + if (std::regex_search(line, error_matches, error_regex)) { + // NOTE - assumes we can only find 1 function per line + if (error_matches.size() == 2) { + auto match = error_matches[1]; + lg::debug("Found error-level diagnostic - {}", match.str()); + LSPSpec::Diagnostic new_diag; new_diag.m_severity = LSPSpec::DiagnosticSeverity::Error; new_diag.m_message = match.str(); new_diag.m_range = diag_range; diff --git a/test/decompiler/reference/jak1/engine/ambient/ambient_REF.gc b/test/decompiler/reference/jak1/engine/ambient/ambient_REF.gc index 34773099f0..b38df9d332 100644 --- a/test/decompiler/reference/jak1/engine/ambient/ambient_REF.gc +++ b/test/decompiler/reference/jak1/engine/ambient/ambient_REF.gc @@ -167,7 +167,7 @@ ) ;; definition for function level-hint-task-process -;; Used lq/sq +;; INFO: Used lq/sq (defun level-hint-task-process ((arg0 entity) (arg1 uint128) (arg2 string)) (local-vars (sv-16 res-tag)) (let ((gp-0 (res-lump-value arg0 'text-id int :default arg1)) @@ -720,8 +720,8 @@ ) ;; definition for function ambient-type-sound +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ambient-type-sound ((arg0 drawable-ambient) (arg1 vector)) (local-vars (sv-16 string) (sv-112 res-tag)) (let* ((s5-0 (-> arg0 ambient)) @@ -788,8 +788,8 @@ ) ;; definition for function ambient-type-sound-loop +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ambient-type-sound-loop ((arg0 drawable-ambient) (arg1 vector)) (let* ((s5-0 (-> arg0 ambient)) (s2-0 (symbol->string (the-as symbol (-> s5-0 ambient-data user-float 2)))) @@ -819,8 +819,8 @@ ) ;; definition for function ambient-type-light +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ambient-type-light ((arg0 drawable-ambient) (arg1 vector)) (when *target* (let ((s4-0 (-> arg0 ambient)) @@ -865,8 +865,8 @@ ) ;; definition for function ambient-type-dark +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ambient-type-dark ((arg0 drawable-ambient) (arg1 vector)) (when *target* (let ((s4-0 (-> arg0 ambient)) @@ -912,8 +912,8 @@ ) ;; definition for function ambient-type-weather-off +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ambient-type-weather-off ((arg0 drawable-ambient) (arg1 vector)) (when *target* (let ((s4-0 (-> arg0 ambient)) @@ -1025,8 +1025,8 @@ ) ;; definition for method 28 of type entity-ambient +;; INFO: Used lq/sq ;; INFO: Return type mismatch entity-ambient vs none. -;; Used lq/sq (defmethod birth-ambient! entity-ambient ((obj entity-ambient)) (set! (-> obj ambient-data quad) (the-as uint128 0)) (set! (-> obj ambient-data function) ambient-type-error) @@ -1134,8 +1134,8 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for method 27 of type entity-ambient +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod draw-debug entity-ambient ((obj entity-ambient)) (local-vars (sv-16 uint128)) (let ((gp-0 (-> obj trans)) diff --git a/test/decompiler/reference/jak1/engine/ambient/mood-tables_REF.gc b/test/decompiler/reference/jak1/engine/ambient/mood-tables_REF.gc index 7b9e3f4ade..a6943ea3fd 100644 --- a/test/decompiler/reference/jak1/engine/ambient/mood-tables_REF.gc +++ b/test/decompiler/reference/jak1/engine/ambient/mood-tables_REF.gc @@ -291,8 +291,8 @@ ) ;; definition for function update-mood-erase-color2 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-erase-color2 ((arg0 mood-fog) (arg1 mood-lights) (arg2 mood-lights)) (let ((s5-0 (-> arg0 erase-color))) (let ((s4-0 (new 'stack-no-clear 'mood-fog))) diff --git a/test/decompiler/reference/jak1/engine/ambient/mood_REF.gc b/test/decompiler/reference/jak1/engine/ambient/mood_REF.gc index 9dd745ef8a..80b9cb9469 100644 --- a/test/decompiler/reference/jak1/engine/ambient/mood_REF.gc +++ b/test/decompiler/reference/jak1/engine/ambient/mood_REF.gc @@ -10,8 +10,8 @@ ) ;; definition for function update-light-kit +;; INFO: Used lq/sq ;; INFO: Return type mismatch float vs none. -;; Used lq/sq (defun update-light-kit ((arg0 light-group) (arg1 light) (arg2 float)) (set! (-> arg0 ambi color quad) (-> arg1 color quad)) (set! (-> arg0 ambi levels x) (* (-> arg1 levels x) arg2)) @@ -30,9 +30,9 @@ ) ;; definition for function update-mood-itimes +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun update-mood-itimes ((arg0 mood-context)) (local-vars (r0-0 int) @@ -142,7 +142,7 @@ ) ;; definition for function update-mood-prt-color -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-prt-color ((arg0 mood-context)) (let* ((v1-0 (-> arg0 light-group)) (s4-0 (-> v1-0 0 ambi color)) @@ -161,7 +161,7 @@ ) ;; definition for function update-mood-palette -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-palette ((arg0 mood-context) (arg1 float) (arg2 int)) (let ((v1-0 (-> arg0 light-group))) (set! (-> v1-0 0 dir0 levels x) 0.0) @@ -243,7 +243,7 @@ ) ;; definition for function update-mood-sky-texture -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-sky-texture ((arg0 mood-context) (arg1 float)) (dotimes (v1-0 8) (set! (-> arg0 sky-times v1-0) 0.0) @@ -315,7 +315,7 @@ ) ;; definition for function update-mood-quick -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-quick ((arg0 mood-context) (arg1 int) (arg2 int) (arg3 int) (arg4 int)) (let ((v1-0 (-> arg0 light-group))) (set! (-> arg0 current-fog fog-color quad) (-> arg0 mood-fog-table data arg1 fog-color quad)) @@ -360,7 +360,7 @@ ) ;; definition for function update-mood-interp -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-interp ((arg0 mood-context) (arg1 mood-context) (arg2 mood-context) (arg3 float)) (local-vars (sv-16 light)) (cond @@ -621,8 +621,8 @@ ) ;; definition for function update-mood-lightning +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun update-mood-lightning ((arg0 mood-context) (arg1 int) (arg2 int) (arg3 int) (arg4 int) (arg5 float) (arg6 symbol)) (local-vars (a3-2 (array float))) (with-pp @@ -1061,8 +1061,8 @@ ) ;; definition for function update-mood-village2 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-village2 ((arg0 mood-context) (arg1 float) (arg2 int)) (update-mood-fog arg0 arg1) (update-mood-sky-texture arg0 arg1) @@ -1433,8 +1433,8 @@ ) ;; definition for function update-mood-jungleb +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-jungleb ((arg0 mood-context) (arg1 float) (arg2 int)) (update-mood-sky-texture arg0 arg1) (clear-mood-times arg0) @@ -1617,8 +1617,8 @@ (set! (-> *sunken-mood* state 0) (the-as uint 255)) ;; definition for function update-mood-sunken +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-sunken ((arg0 mood-context) (arg1 float) (arg2 int)) (local-vars (sv-80 vector)) (when (not (paused?)) @@ -2008,8 +2008,8 @@ ) ;; definition for function update-mood-darkcave +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-darkcave ((arg0 mood-context) (arg1 float) (arg2 int)) (when (not (paused?)) (clear-mood-times arg0) @@ -2487,8 +2487,8 @@ ) ;; definition for function update-mood-ogre +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-mood-ogre ((arg0 mood-context) (arg1 float) (arg2 int)) (update-mood-fog arg0 arg1) (update-mood-sky-texture arg0 arg1) @@ -2888,7 +2888,7 @@ (set! (-> *citadel-mood* state 4) (the-as uint 255)) ;; definition for function update-mood-citadel -;; Used lq/sq +;; INFO: Used lq/sq (defun update-mood-citadel ((arg0 mood-context) (arg1 float) (arg2 int)) (clear-mood-times arg0) (set! (-> arg0 times 0 w) 1.0) diff --git a/test/decompiler/reference/jak1/engine/anim/aligner_REF.gc b/test/decompiler/reference/jak1/engine/anim/aligner_REF.gc index 6f52598139..529c8b5465 100644 --- a/test/decompiler/reference/jak1/engine/anim/aligner_REF.gc +++ b/test/decompiler/reference/jak1/engine/anim/aligner_REF.gc @@ -2,9 +2,9 @@ (in-package goal) ;; definition for method 9 of type align-control -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr ra] -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr ra] (defmethod compute-alignment! align-control ((obj align-control)) (local-vars (a0-9 symbol) (s7-0 none) (ra-0 int)) (with-pp diff --git a/test/decompiler/reference/jak1/engine/anim/bones-h_REF.gc b/test/decompiler/reference/jak1/engine/anim/bones-h_REF.gc index dd3f38a574..7044beac49 100644 --- a/test/decompiler/reference/jak1/engine/anim/bones-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/anim/bones-h_REF.gc @@ -146,11 +146,11 @@ ) ;; definition for function invalidate-cache-line -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin a0, 0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin a0, 1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin a0, 0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin a0, 1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun invalidate-cache-line ((arg0 pointer)) (.sync.l) (.cache dxwbin arg0 0) diff --git a/test/decompiler/reference/jak1/engine/anim/joint_REF.gc b/test/decompiler/reference/jak1/engine/anim/joint_REF.gc index adbd4af362..fbc1a8b3c7 100644 --- a/test/decompiler/reference/jak1/engine/anim/joint_REF.gc +++ b/test/decompiler/reference/jak1/engine/anim/joint_REF.gc @@ -540,8 +540,8 @@ ) ;; definition for method 9 of type art-mesh-geo -;; WARN: Type Propagation failed: Failed type prop at op 20 ((set! v1 (l.h (+ s4 6)))): Could not get type of load: (set! v1 (l.h (+ s4 6))). -;; WARN: Type Propagation failed: Type analysis failed +;; ERROR: Type Propagation failed: Failed type prop at op 20 ((set! v1 (l.h (+ s4 6)))): Could not get type of load: (set! v1 (l.h (+ s4 6))). +;; ERROR: Type Propagation failed: Type analysis failed (defmethod login art-mesh-geo ((a0-0 art-mesh-geo)) (local-vars (v0-0 none) @@ -739,8 +739,8 @@ ) ;; definition for function joint-control-remap! +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs object. -;; Used lq/sq (defun joint-control-remap! ((arg0 joint-control) (arg1 art-group) (arg2 art-group) (arg3 pair) (arg4 int) (arg5 string)) (local-vars (sv-16 int) @@ -799,7 +799,7 @@ ) ;; definition for function flatten-joint-control-to-spr -;; Used lq/sq +;; INFO: Used lq/sq (defun flatten-joint-control-to-spr ((arg0 joint-control)) (rlet ((vf1 :class vf) (vf10 :class vf) @@ -1003,7 +1003,7 @@ ) ;; definition for function matrix-from-control-channel! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-from-control-channel! ((arg0 matrix) (arg1 joint) (arg2 joint-control-channel)) (let ((s4-0 (-> arg2 frame-group)) (s5-0 (-> arg1 number)) @@ -1069,8 +1069,8 @@ ) ;; definition for function matrix-from-control! +;; INFO: Used lq/sq ;; INFO: Return type mismatch (inline-array matrix) vs matrix. -;; Used lq/sq (defun matrix-from-control! ((arg0 matrix-stack) (arg1 joint) (arg2 joint-control) (arg3 symbol)) (set! (-> arg0 top) (the-as matrix (-> arg0 data))) (dotimes (s2-0 (-> arg2 active-channels)) @@ -1149,7 +1149,7 @@ ) ;; definition for function cspace<-cspace! -;; Used lq/sq +;; INFO: Used lq/sq (defun cspace<-cspace! ((arg0 cspace) (arg1 cspace)) (let ((v0-0 (-> arg0 bone transform))) (let* ((a2-0 (-> arg1 bone transform)) @@ -1210,7 +1210,7 @@ ) ;; definition for function cspace<-matrix-no-push-joint! -;; Used lq/sq +;; INFO: Used lq/sq (defun cspace<-matrix-no-push-joint! ((arg0 cspace) (arg1 joint-control)) (let ((v1-2 (matrix-from-control! (the-as matrix-stack (+ 80 (the-as int (the-as terrain-context #x70000000)))) @@ -1236,7 +1236,7 @@ ) ;; definition for function cspace<-matrix-joint! -;; Used lq/sq +;; INFO: Used lq/sq (defun cspace<-matrix-joint! ((arg0 cspace) (arg1 matrix)) (let ((v0-0 (-> arg0 bone transform))) (let* ((a2-0 arg1) diff --git a/test/decompiler/reference/jak1/engine/camera/cam-interface_REF.gc b/test/decompiler/reference/jak1/engine/camera/cam-interface_REF.gc index db0db638cb..b5a076fc39 100644 --- a/test/decompiler/reference/jak1/engine/camera/cam-interface_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/cam-interface_REF.gc @@ -55,8 +55,8 @@ ) ;; definition for function camera-teleport-to-entity +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior camera-teleport-to-entity process ((arg0 entity-actor)) (let ((gp-0 (new 'stack 'transformq))) (set! (-> gp-0 trans quad) (-> (the-as transform (-> arg0 extra)) scale quad)) diff --git a/test/decompiler/reference/jak1/engine/camera/cam-layout_REF.gc b/test/decompiler/reference/jak1/engine/camera/cam-layout_REF.gc index 81820ba657..802270c1c8 100644 --- a/test/decompiler/reference/jak1/engine/camera/cam-layout_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/cam-layout_REF.gc @@ -286,6 +286,7 @@ ) ;; definition for function cam-layout-entity-volume-info-create +;; INFO: Used lq/sq ;; WARN: Stack slot offset 164 signed mismatch ;; WARN: Stack slot offset 164 signed mismatch ;; WARN: Stack slot offset 164 signed mismatch @@ -297,7 +298,6 @@ ;; WARN: Stack slot offset 164 signed mismatch ;; WARN: Stack slot offset 164 signed mismatch ;; WARN: Stack slot offset 164 signed mismatch -;; Used lq/sq (defbehavior cam-layout-entity-volume-info-create cam-layout ((arg0 entity-camera) (arg1 symbol)) (local-vars (sv-16 res-tag) @@ -524,7 +524,7 @@ ) ;; definition for function v-slrp! -;; Used lq/sq +;; INFO: Used lq/sq (defun v-slrp! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 float)) (let ((s2-0 (new-stack-vector0)) (s1-0 (new-stack-vector0)) @@ -581,7 +581,7 @@ ) ;; definition for function interp-test -;; Used lq/sq +;; INFO: Used lq/sq (defun interp-test ((arg0 (function vector vector vector float vector float none)) (arg1 interp-test-info)) (let ((s3-0 (new-stack-vector0)) (gp-0 (new-stack-vector0)) @@ -609,7 +609,7 @@ ) ;; definition for function interp-test-deg -;; Used lq/sq +;; INFO: Used lq/sq (defun interp-test-deg ((arg0 (function vector vector vector vector float none)) (arg1 interp-test-info)) (let ((s3-0 (new-stack-vector0)) (gp-0 (new-stack-vector0)) @@ -637,7 +637,7 @@ ) ;; definition for function cam-layout-entity-info -;; Used lq/sq +;; INFO: Used lq/sq (defun cam-layout-entity-info ((arg0 entity-actor)) (if (not arg0) (return #f) @@ -923,7 +923,7 @@ ) ;; definition for function clmf-input -;; Used lq/sq +;; INFO: Used lq/sq (defun clmf-input ((arg0 vector) (arg1 vector) (arg2 int)) (vector-reset! arg0) (vector-reset! arg1) @@ -1017,7 +1017,7 @@ ) ;; definition for function clmf-pos-rot -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior clmf-pos-rot cam-layout ((arg0 symbol) (arg1 symbol)) (local-vars (s2-0 structure) (s3-1 structure) (sv-192 matrix)) (cam-layout-print 16 *camera-layout-message-ypos* "x/z pos: left stick, down: l1, up: r1") @@ -1264,7 +1264,7 @@ ) ;; definition for function clmf-look-through -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior clmf-look-through cam-layout () (set! (-> *camera-other-fov* data) (cam-slave-get-fov (-> self cam-entity))) (cam-slave-get-vector-with-offset (the-as entity-actor (-> self cam-entity)) *camera-other-trans* 'trans) @@ -1312,8 +1312,8 @@ ) ;; definition for function cam-layout-save-cam-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs string. -;; Used lq/sq (defun cam-layout-save-cam-trans ((arg0 symbol) (arg1 string) (arg2 entity-actor)) (let ((s1-0 (-> arg2 trans)) (s5-0 (method-of-type res-lump get-property-struct)) @@ -1372,8 +1372,8 @@ ) ;; definition for function cam-layout-save-pivot +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs string. -;; Used lq/sq (defun cam-layout-save-pivot ((arg0 symbol) (arg1 string) (arg2 entity-actor)) (let ((s2-0 (res-lump-struct arg2 'pivot vector :time (the-as float -1000000000.0))) (s3-0 (method-of-type res-lump get-property-struct)) @@ -1420,8 +1420,8 @@ ) ;; definition for function cam-layout-save-align +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs string. -;; Used lq/sq (defun cam-layout-save-align ((arg0 symbol) (arg1 string) (arg2 entity-actor)) (let ((s2-0 (res-lump-struct arg2 'align vector :time (the-as float -1000000000.0))) (s3-0 (method-of-type res-lump get-property-struct)) @@ -1468,8 +1468,8 @@ ) ;; definition for function cam-layout-save-interesting +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs string. -;; Used lq/sq (defun cam-layout-save-interesting ((arg0 symbol) (arg1 string) (arg2 entity-actor)) (let ((s2-0 (res-lump-struct arg2 'interesting vector :time (the-as float -1000000000.0))) (s3-0 (method-of-type res-lump get-property-struct)) @@ -2731,7 +2731,7 @@ ) ;; definition for function clmf-cam-string -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior clmf-cam-string cam-layout ((arg0 string) (arg1 symbol)) (local-vars (sv-16 res-tag)) (format arg0 ":") diff --git a/test/decompiler/reference/jak1/engine/camera/cam-master_REF.gc b/test/decompiler/reference/jak1/engine/camera/cam-master_REF.gc index 15c02f8b16..d4ddfa7b89 100644 --- a/test/decompiler/reference/jak1/engine/camera/cam-master_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/cam-master_REF.gc @@ -45,7 +45,7 @@ ) ;; definition for function reset-follow -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior reset-follow camera-master () (set! (-> self tpos-old quad) (-> (target-cam-pos) quad)) (set! (-> self tpos-curr quad) (-> self tpos-old quad)) @@ -59,8 +59,8 @@ ) ;; definition for function reset-target-tracking +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs symbol. -;; Used lq/sq (defbehavior reset-target-tracking camera-master () (set! (-> self tpos-old quad) (-> (target-cam-pos) quad)) (set! (-> self tpos-curr quad) (-> self tpos-old quad)) @@ -126,7 +126,7 @@ ) ;; definition for function reset-drawable-follow -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior reset-drawable-follow camera-master () (let ((v1-2 (the-as target (-> self drawable-target process 0)))) (if (nonzero? (-> v1-2 node-list)) @@ -144,8 +144,8 @@ ) ;; definition for function reset-drawable-tracking +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs symbol. -;; Used lq/sq (defbehavior reset-drawable-tracking camera-master () (let ((gp-0 (the-as target (-> self drawable-target process 0)))) (cond @@ -218,8 +218,8 @@ ) ;; definition for function master-track-target +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs symbol. -;; Used lq/sq (defbehavior master-track-target camera-master () (cond ((and (logtest? (-> self master-options) 2) @@ -541,7 +541,7 @@ ) ;; definition for function in-cam-entity-volume? -;; Used lq/sq +;; INFO: Used lq/sq (defun in-cam-entity-volume? ((arg0 vector) (arg1 entity) (arg2 float) (arg3 symbol)) (local-vars (sv-16 res-tag)) (let ((s2-0 0)) @@ -659,11 +659,11 @@ ) ;; definition for function master-switch-to-entity +;; INFO: Used lq/sq ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 166] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 176] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 196] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 220] -;; Used lq/sq (defbehavior master-switch-to-entity camera-master ((arg0 entity)) (local-vars (v0-21 none) @@ -966,8 +966,8 @@ ) ;; definition for function cam-master-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior cam-master-init camera-master () (set! *camera* self) (stack-size-set! (-> self main-thread) 512) diff --git a/test/decompiler/reference/jak1/engine/camera/cam-states_REF.gc b/test/decompiler/reference/jak1/engine/camera/cam-states_REF.gc index 4741ca2a42..3be71105b0 100644 --- a/test/decompiler/reference/jak1/engine/camera/cam-states_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/cam-states_REF.gc @@ -928,7 +928,7 @@ ) ;; definition for function cam-circular-position-into-max-angle -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-circular-position-into-max-angle camera-slave ((arg0 vector) (arg1 vector) (arg2 float)) (let* ((f30-0 (vector-normalize-ret-len! arg0 (the-as float 1.0))) (f26-0 (vector-normalize-ret-len! arg1 (the-as float 1.0))) @@ -1070,7 +1070,7 @@ ) ;; definition for function cam-circular-code -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-circular-code camera-slave () (set! (-> self pivot-pt quad) (-> self saved-pt quad)) (cam-curve-pos (-> self pivot-pt) (the-as vector #f) (the-as curve #f) #f) @@ -1260,7 +1260,7 @@ (define *CAM_STRING-bank* (new 'static 'cam-string-bank :los-coll-rad (meters 1) :los-coll-rad2 (meters 0.5))) ;; definition for function cam-string-find-position-rel! -;; Used lq/sq +;; INFO: Used lq/sq (defun cam-string-find-position-rel! ((arg0 vector)) (let ((s5-0 (new 'stack-no-clear 'vector)) (s4-0 (new 'stack-no-clear 'vector)) @@ -1313,8 +1313,8 @@ ) ;; definition for function cam-string-set-position-rel! +;; INFO: Used lq/sq ;; INFO: Return type mismatch uint vs int. -;; Used lq/sq (defbehavior cam-string-set-position-rel! camera-slave ((arg0 vector)) (vector-flatten! (-> self view-flat) arg0 (-> *camera* local-down)) (set! (-> self min-z-override) (vector-length (-> self view-flat))) @@ -1538,9 +1538,9 @@ ) ;; definition for function los-cw-ccw +;; INFO: Used lq/sq ;; WARN: Stack slot offset 128 signed mismatch ;; WARN: Stack slot offset 128 signed mismatch -;; Used lq/sq (defun los-cw-ccw ((arg0 (inline-array collide-cache-tri)) (arg1 vector) (arg2 vector) @@ -1861,11 +1861,11 @@ ) ;; definition for function cam-los-collide +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs symbol. -;; WARN: Unsupported inline assembly instruction kind - [mula.s f2, f5] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f3, f6] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f2, f4, f7] -;; Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f2, f5] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f3, f6] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f2, f4, f7] (defbehavior cam-los-collide camera-slave ((arg0 vector) (arg1 vector) (arg2 clip-travel-vector-to-mesh-return-info) (arg3 pat-surface)) (local-vars (s1-3 int) (s2-2 int) (f2-1 float) (sv-224 vector) (sv-240 vector)) (dist-info-init (the-as collide-los-dist-info (-> arg2 intersection))) @@ -2239,7 +2239,7 @@ ) ;; definition for function cam-string-follow -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-string-follow camera-slave () (let ((f30-0 (vector-length (-> self view-flat)))) (cond @@ -2379,7 +2379,7 @@ ) ;; definition for function cam-string-joystick -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-string-joystick camera-slave () (set! (-> self options) (logand -257 (-> self options))) (let ((f28-0 (cam-dist-analog-input (the-as int (-> *cpad-list* cpads 0 righty)) (the-as float 0.05))) @@ -2582,13 +2582,13 @@ ) ;; definition for function cam-string-move -;; WARN: Stack slot load at 240 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 256 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 240 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 256 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 240 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 256 mismatch: defined as size 4, got size 16 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Stack slot load at 240 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 256 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 240 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 256 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 240 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 256 mismatch: defined as size 4, got size 16 (defbehavior cam-string-move camera-slave () (local-vars (sv-240 float) (sv-256 float)) (vector-! (-> self velocity) (-> self desired-pos) (-> self string-trans)) @@ -2744,7 +2744,7 @@ ) ;; definition for function cam-string-code -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-string-code camera-slave () (if *debug-segment* (cam-debug-reset-coll-tri) @@ -2815,7 +2815,7 @@ ) ;; definition for function set-string-parms -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior set-string-parms camera-slave () (when (not (-> self string-val-locked)) (set! (-> self string-min-val quad) (-> *camera* string-min value quad)) @@ -3068,7 +3068,7 @@ ) ;; definition for function cam-stick-code -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-stick-code camera-slave () (cam-calc-follow! (-> self tracking) (-> self trans) #t) (let ((gp-0 (new-stack-vector0))) @@ -3323,7 +3323,7 @@ ) ;; definition for function cam-bike-code -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-bike-code camera-slave () (let ((s4-0 (new-stack-matrix0))) (let ((gp-0 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/engine/camera/cam-update_REF.gc b/test/decompiler/reference/jak1/engine/camera/cam-update_REF.gc index 0a994a3250..33068b7b9f 100644 --- a/test/decompiler/reference/jak1/engine/camera/cam-update_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/cam-update_REF.gc @@ -27,7 +27,7 @@ ) ;; definition for function update-view-planes -;; Used lq/sq +;; INFO: Used lq/sq (defun update-view-planes ((arg0 math-camera) (arg1 (inline-array plane)) (arg2 float)) (local-vars (sv-240 vector)) (when (not *artist-fix-frustum*) @@ -196,7 +196,7 @@ (matrix-identity! *save-camera-inv-rot*) ;; definition for function move-camera-from-pad -;; Used lq/sq +;; INFO: Used lq/sq (defun move-camera-from-pad ((arg0 math-camera)) (let ((v1-0 *external-cam-mode*) (s5-0 0) @@ -252,7 +252,7 @@ (define *start-pos* (new 'global 'vector)) ;; definition for function update-camera -;; Used lq/sq +;; INFO: Used lq/sq (defun update-camera () (when *start-timer* (when (= *timer-value* 180) diff --git a/test/decompiler/reference/jak1/engine/camera/camera-h_REF.gc b/test/decompiler/reference/jak1/engine/camera/camera-h_REF.gc index 9e4ca5b985..91faeb4078 100644 --- a/test/decompiler/reference/jak1/engine/camera/camera-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/camera-h_REF.gc @@ -297,8 +297,8 @@ ) ;; definition for method 9 of type cam-vector-seeker +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod init! cam-vector-seeker ((obj cam-vector-seeker) (arg0 vector) (arg1 float) (arg2 float) (arg3 float)) (cond (arg0 diff --git a/test/decompiler/reference/jak1/engine/camera/camera_REF.gc b/test/decompiler/reference/jak1/engine/camera/camera_REF.gc index f1a7a6ef61..4840e95a58 100644 --- a/test/decompiler/reference/jak1/engine/camera/camera_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/camera_REF.gc @@ -5,7 +5,7 @@ (define *cam-res-string* (new 'global 'string 64 (the-as string #f))) ;; definition for function cam-slave-get-vector-with-offset -;; Used lq/sq +;; INFO: Used lq/sq (defun cam-slave-get-vector-with-offset ((arg0 entity-actor) (arg1 vector) (arg2 symbol)) (local-vars (s3-0 structure)) (cond @@ -356,7 +356,7 @@ ) ;; definition for method 9 of type cam-index -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-9 cam-index ((obj cam-index) (arg0 symbol) (arg1 entity) (arg2 vector) (arg3 curve)) (local-vars (sv-32 (function _varargs_ object))) (format (clear *cam-res-string*) "~S-flags" arg0) @@ -434,7 +434,7 @@ ) ;; definition for method 10 of type cam-index -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-10 cam-index ((obj cam-index) (arg0 vector)) (let ((s5-0 (new-stack-vector0))) 0.0 @@ -455,8 +455,8 @@ ) ;; definition for method 10 of type tracking-spline +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-10 tracking-spline ((obj tracking-spline) (arg0 vector)) (set! (-> obj point 0 position quad) (-> arg0 quad)) (set! (-> obj point 0 next) -134250495) @@ -644,7 +644,7 @@ ) ;; definition for method 17 of type tracking-spline -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-17 tracking-spline ((obj tracking-spline) (arg0 vector) (arg1 float) (arg2 float) (arg3 symbol)) (let ((s3-0 (-> obj free-point)) (s2-0 (-> obj end-point)) @@ -827,7 +827,7 @@ ) ;; definition for method 21 of type tracking-spline -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-21 tracking-spline ((obj tracking-spline) (arg0 vector) (arg1 float) (arg2 float)) (let ((v1-0 (-> obj used-point)) (f0-0 (-> obj partial-point)) @@ -938,7 +938,7 @@ ) ;; definition for function cam-slave-init-vars -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-slave-init-vars camera-slave () (cond (*camera* @@ -1076,12 +1076,12 @@ ) ;; definition for function cam-standard-event-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs object. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 7] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 31] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 45] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 50] -;; Used lq/sq (defbehavior cam-standard-event-handler camera-slave ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (let ((v1-0 arg2)) (the-as @@ -1142,7 +1142,7 @@ ) ;; definition for function cam-curve-pos -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-curve-pos camera-slave ((arg0 vector) (arg1 vector) (arg2 curve) (arg3 symbol)) (let ((s5-0 (new-stack-vector0))) 0.0 @@ -1244,7 +1244,7 @@ ) ;; definition for function cam-calc-follow! -;; Used lq/sq +;; INFO: Used lq/sq (defun cam-calc-follow! ((arg0 cam-rotation-tracker) (arg1 vector) (arg2 symbol)) (cond (arg2 @@ -1358,7 +1358,7 @@ ) ;; definition for function mat-remove-z-rot -;; Used lq/sq +;; INFO: Used lq/sq (defun mat-remove-z-rot ((arg0 matrix) (arg1 vector)) (let ((s4-0 (new-stack-vector0))) 0.0 @@ -1385,7 +1385,7 @@ ) ;; definition for function slave-matrix-blend-2 -;; Used lq/sq +;; INFO: Used lq/sq (defun slave-matrix-blend-2 ((arg0 matrix) (arg1 float) (arg2 vector) (arg3 matrix)) (let ((s1-0 (new-stack-vector0)) (s4-0 (new-stack-quaternion0)) @@ -1447,7 +1447,7 @@ ) ;; definition for function vector-into-frustum-nosmooth! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-into-frustum-nosmooth! ((arg0 matrix) (arg1 vector) (arg2 float)) (local-vars (sv-112 (inline-array vector)) (sv-128 vector) (sv-144 vector) (sv-160 vector) (sv-176 vector)) (rlet ((vf0 :class vf) @@ -1565,11 +1565,11 @@ ) ;; definition for function slave-set-rotation! +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mula.s f0, f3] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f1, f4] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] -;; Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f0, f3] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f1, f4] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] (defun slave-set-rotation! ((arg0 cam-rotation-tracker) (arg1 vector) (arg2 float) (arg3 float) (arg4 symbol)) (local-vars (f0-8 float) @@ -1697,12 +1697,12 @@ ) ;; definition for function v-slrp2! +;; INFO: Used lq/sq ;; WARN: Stack slot offset 144 signed mismatch ;; WARN: Stack slot offset 144 signed mismatch -;; WARN: Unsupported inline assembly instruction kind - [mula.s f0, f3] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f1, f4] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] -;; Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f0, f3] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f1, f4] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] (defun v-slrp2! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 float) (arg4 vector) (arg5 float)) (local-vars (f0-10 float) @@ -1805,12 +1805,12 @@ ) ;; definition for function v-slrp3! +;; INFO: Used lq/sq ;; WARN: Stack slot offset 144 signed mismatch ;; WARN: Stack slot offset 144 signed mismatch -;; WARN: Unsupported inline assembly instruction kind - [mula.s f0, f3] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f1, f4] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] -;; Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f0, f3] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f1, f4] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f0, f2, f5] (defun v-slrp3! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float)) (local-vars (f0-7 float) (f26-0 float) (f28-0 float) (sv-144 float) (sv-160 vector)) (set! sv-144 arg4) diff --git a/test/decompiler/reference/jak1/engine/camera/math-camera-h_REF.gc b/test/decompiler/reference/jak1/engine/camera/math-camera-h_REF.gc index 18d38f8023..db4c571fe9 100644 --- a/test/decompiler/reference/jak1/engine/camera/math-camera-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/math-camera-h_REF.gc @@ -130,7 +130,7 @@ ) ;; definition for method 3 of type math-camera -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect math-camera ((obj math-camera)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Td: (meters ~m)~%" (-> obj d)) diff --git a/test/decompiler/reference/jak1/engine/camera/math-camera_REF.gc b/test/decompiler/reference/jak1/engine/camera/math-camera_REF.gc index 85292b9d5b..717fb9d79a 100644 --- a/test/decompiler/reference/jak1/engine/camera/math-camera_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/math-camera_REF.gc @@ -31,7 +31,7 @@ (define *math-camera-fog-correction* (new 'global 'fog-corrector)) ;; definition for function update-math-camera -;; Used lq/sq +;; INFO: Used lq/sq (defun update-math-camera ((math-cam math-camera) (video-mode symbol) (aspect symbol)) (set! (-> math-cam x-ratio) (tan (* 0.5 (-> math-cam fov)))) (if (= aspect 'aspect4x3) @@ -247,7 +247,7 @@ ) ;; definition for function move-target-from-pad -;; Used lq/sq +;; INFO: Used lq/sq (defun move-target-from-pad ((trans transform) (pad-idx int)) (let ((local-trans (new-stack-vector0))) (set! (-> local-trans x) (cond @@ -308,8 +308,8 @@ ) ;; definition for function transform-point-vector! -;; WARN: Inline assembly instruction marked with TODO - [TODO.VCLIP] -;; WARN: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VCLIP] +;; ERROR: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] (defun transform-point-vector! ((arg0 vector) (arg1 vector)) (local-vars (v1-7 int)) (rlet ((acc :class vf) @@ -354,8 +354,8 @@ ) ;; definition for function transform-point-qword! -;; WARN: Inline assembly instruction marked with TODO - [TODO.VCLIP] -;; WARN: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VCLIP] +;; ERROR: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] (defun transform-point-qword! ((arg0 vector4w) (arg1 vector)) (local-vars (v1-7 int)) (rlet ((acc :class vf) @@ -401,8 +401,8 @@ ) ;; definition for function transform-point-vector-scale! -;; WARN: Inline assembly instruction marked with TODO - [TODO.VCLIP] -;; WARN: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VCLIP] +;; ERROR: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] (defun transform-point-vector-scale! ((arg0 vector) (arg1 vector)) (local-vars (v0-0 float) (v1-7 int)) (rlet ((acc :class vf) @@ -449,8 +449,8 @@ ) ;; definition for function init-for-transform +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun init-for-transform ((arg0 matrix)) (local-vars (v1-14 float)) (rlet ((vf1 :class vf) diff --git a/test/decompiler/reference/jak1/engine/camera/pov-camera_REF.gc b/test/decompiler/reference/jak1/engine/camera/pov-camera_REF.gc index f5182f5819..1562a99511 100644 --- a/test/decompiler/reference/jak1/engine/camera/pov-camera_REF.gc +++ b/test/decompiler/reference/jak1/engine/camera/pov-camera_REF.gc @@ -188,8 +188,8 @@ ) ;; definition for function pov-camera-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior pov-camera-init-by-other pov-camera ((arg0 vector) (arg1 skeleton-group) (arg2 string) (arg3 pov-camera-flag) (arg4 process-drawable) (arg5 pair)) (set-stack-size! self) (set! (-> *game-info* pov-camera-handle) (process->handle self)) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-edge-grab_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-edge-grab_REF.gc index 35773a7119..842a79d81d 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-edge-grab_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-edge-grab_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for method 20 of type target +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defmethod find-edge-grabs! target ((obj target) (arg0 collide-cache)) (rlet ((vf1 :class vf) (vf2 :class vf) @@ -127,7 +127,7 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for method 19 of type collide-edge-work -;; Used lq/sq +;; INFO: Used lq/sq (defmethod check-grab-for-collisions collide-edge-work ((obj collide-edge-work) (arg0 collide-edge-hold-item) (arg1 edge-grab-info)) (local-vars (sv-144 (function vector vector vector float vector)) (sv-160 vector) (sv-176 vector)) (let* ((s3-0 (-> arg0 edge)) @@ -222,7 +222,7 @@ ) ;; definition for method 9 of type edge-grab-info -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-9 edge-grab-info ((obj edge-grab-info)) (local-vars (v0-0 symbol) (v1-14 float)) (rlet ((acc :class vf) @@ -361,7 +361,7 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for method 14 of type collide-edge-work -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-14 collide-edge-work ((obj collide-edge-work) (arg0 vector) (arg1 vector) (arg2 int)) (let ((f30-0 -1.0)) (let ((s2-0 (new 'stack-no-clear 'vector))) @@ -385,7 +385,7 @@ ) ;; definition for method 17 of type collide-edge-work -;; Used lq/sq +;; INFO: Used lq/sq (defmethod should-add-to-list? collide-edge-work ((obj collide-edge-work) (arg0 collide-edge-hold-item) (arg1 collide-edge-edge)) (local-vars (v1-1 uint128) @@ -662,7 +662,7 @@ ) ;; definition for method 9 of type collide-edge-hold-list -;; Used lq/sq +;; INFO: Used lq/sq (defmethod debug-draw collide-edge-hold-list ((obj collide-edge-hold-list)) (let ((s4-0 (-> obj head)) (s5-0 0) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-frag-h_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-frag-h_REF.gc index 6b122a53c2..7948d32e3a 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-frag-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-frag-h_REF.gc @@ -10,7 +10,7 @@ ) ;; definition for method 3 of type collide-frag-vertex -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect collide-frag-vertex ((obj collide-frag-vertex)) (format #t "[~8x] ~A~%" obj 'collide-frag-vertex) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-func_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-func_REF.gc index 92a29484f5..eda011fa14 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-func_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-func_REF.gc @@ -3,8 +3,8 @@ ;; definition for function raw-ray-sphere-intersect ;; INFO: Return type mismatch number vs float. -;; WARN: Bad vector register dependency: vf1 -;; WARN: Bad vector register dependency: vf2 +;; ERROR: Bad vector register dependency: vf1 +;; ERROR: Bad vector register dependency: vf2 (defun raw-ray-sphere-intersect ((arg0 float)) (local-vars (v1-1 float) (v1-2 float) (v1-4 number) (a0-1 float) (a0-2 float) (a0-3 float) (a1-0 float)) (rlet ((Q :class vf) @@ -238,7 +238,7 @@ ;; WARN: Using logior on floats ;; WARN: Using logior on floats ;; INFO: Return type mismatch number vs float. -;; WARN: Unsupported inline assembly instruction kind - [sll v1, v1, 1] +;; ERROR: Unsupported inline assembly instruction kind - [sll v1, v1, 1] (defun ray-triangle-intersect ((arg0 vector) (arg1 vector) (arg2 float) (arg3 matrix) (arg4 vector) (arg5 vector)) (local-vars (v1-0 float) (v1-1 int) (v1-2 float) (a0-1 float) (a0-2 float) (a1-1 float)) (rlet ((acc :class vf) @@ -351,7 +351,7 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for function moving-sphere-sphere-intersect -;; Used lq/sq +;; INFO: Used lq/sq (defun moving-sphere-sphere-intersect ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector)) (let ((f30-0 (ray-sphere-intersect arg0 arg1 arg2 (+ (-> arg0 w) (-> arg2 w))))) (when (>= f30-0 0.0) @@ -365,7 +365,7 @@ ) ;; definition for function moving-sphere-moving-sphere-intersect -;; Used lq/sq +;; INFO: Used lq/sq (defun moving-sphere-moving-sphere-intersect ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 vector)) (let ((f30-0 (ray-sphere-intersect arg0 (vector-! (new-stack-vector0) arg1 arg3) arg2 (+ (-> arg0 w) (-> arg2 w)))) ) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-mesh_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-mesh_REF.gc index 6f3b1fdffa..49e014c904 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-mesh_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-mesh_REF.gc @@ -356,8 +356,8 @@ ) ;; definition for method 10 of type collide-mesh -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defmethod overlap-test collide-mesh ((obj collide-mesh) (arg0 collide-mesh-cache-tri) (arg1 vector)) (local-vars (r0-0 int) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-probe_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-probe_REF.gc index e149650f02..6c4df23bec 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-probe_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-probe_REF.gc @@ -215,7 +215,7 @@ ;; definition for function collide-upload-vu0 ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun collide-upload-vu0 () (let ((gp-0 *vu0-dma-list*)) (let ((v1-0 gp-0)) @@ -368,7 +368,3 @@ 0 (none) ) - - - - diff --git a/test/decompiler/reference/jak1/engine/collide/collide-reaction-target_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-reaction-target_REF.gc index 5184c34f5a..e8f444e362 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-reaction-target_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-reaction-target_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function collide-shape-moving-angle-set! +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun collide-shape-moving-angle-set! ((arg0 collide-shape-moving) (arg1 vector) (arg2 vector)) (set! (-> arg0 surface-normal quad) (-> arg1 quad)) (set! (-> arg0 surface-angle) (vector-dot arg1 (-> arg0 dynam gravity-normal))) @@ -19,13 +19,13 @@ ) ;; definition for function poly-find-nearest-edge +;; INFO: Used lq/sq ;; WARN: Stack slot offset 36 signed mismatch ;; WARN: Stack slot offset 36 signed mismatch ;; WARN: Stack slot offset 48 signed mismatch ;; WARN: Stack slot offset 36 signed mismatch ;; WARN: Stack slot offset 36 signed mismatch ;; WARN: Stack slot offset 48 signed mismatch -;; Used lq/sq (defun poly-find-nearest-edge ((arg0 vector) (arg1 (inline-array vector)) (arg2 vector) (arg3 vector)) (local-vars (sv-32 vector) (sv-36 float) (sv-40 int) (sv-48 float) (sv-80 vector)) (set! sv-32 (new 'stack-no-clear 'vector)) @@ -60,8 +60,8 @@ ) ;; definition for function target-collision-low-coverage +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs uint. -;; Used lq/sq (defun target-collision-low-coverage ((arg0 control-info) (arg1 collide-shape-intersect) (arg2 vector) @@ -239,8 +239,8 @@ ) ;; definition for function target-collision-reaction +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs cshape-moving-flags. -;; Used lq/sq (defun target-collision-reaction ((arg0 control-info) (arg1 collide-shape-intersect) (arg2 vector) (arg3 vector)) (local-vars (sv-80 vector) (sv-84 vector) (sv-88 matrix) (sv-96 int) (sv-104 int) (sv-160 symbol)) (set! sv-80 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-shape-rider_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-shape-rider_REF.gc index 809e41fde2..3ef9e56c22 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-shape-rider_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-shape-rider_REF.gc @@ -65,9 +65,9 @@ ) ;; definition for method 22 of type collide-shape-prim-mesh +;; INFO: Used lq/sq ;; INFO: Return type mismatch pat-surface vs none. -;; WARN: Expression building failed: Function (method 22 collide-shape-prim-mesh) has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function (method 22 collide-shape-prim-mesh) has a return type of none, but the expression builder found a return statement. (defmethod on-platform-test collide-shape-prim-mesh ((obj collide-shape-prim-mesh) (arg0 collide-shape-prim) (arg1 collide-overlap-result) (arg2 float)) (case (-> arg0 type) ((collide-shape-prim-group) @@ -401,8 +401,8 @@ ) ;; definition for method 43 of type collide-shape +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod pull-rider! collide-shape ((obj collide-shape) (arg0 pull-rider-info)) (local-vars (at-0 int) (sv-160 (function collide-shape-moving float collide-kind none))) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-target-h_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-target-h_REF.gc index 0b862838e5..8658446bd6 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-target-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-target-h_REF.gc @@ -207,7 +207,7 @@ ) ;; definition for method 9 of type collide-history -;; Used lq/sq +;; INFO: Used lq/sq (defmethod update! collide-history ((obj collide-history) (cshape collide-shape-moving) (xs vector) (transv vector) (transv-out vector)) (set! (-> obj intersect quad) (-> xs quad)) (set! (-> obj transv quad) (-> transv quad)) diff --git a/test/decompiler/reference/jak1/engine/collide/collide-touch_REF.gc b/test/decompiler/reference/jak1/engine/collide/collide-touch_REF.gc index 6dec9ed64c..3ef4510728 100644 --- a/test/decompiler/reference/jak1/engine/collide/collide-touch_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/collide-touch_REF.gc @@ -157,7 +157,7 @@ ;; definition for method 9 of type touching-list ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function (method 9 touching-list) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 9 touching-list) has a return type of none, but the expression builder found a return statement. (defmethod add-touching-prims touching-list ((obj touching-list) (arg0 collide-shape-prim) (arg1 collide-shape-prim) diff --git a/test/decompiler/reference/jak1/engine/collide/main-collide_REF.gc b/test/decompiler/reference/jak1/engine/collide/main-collide_REF.gc index d560e1dba7..4ac8d486f2 100644 --- a/test/decompiler/reference/jak1/engine/collide/main-collide_REF.gc +++ b/test/decompiler/reference/jak1/engine/collide/main-collide_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function drawable-sphere-box-intersect? -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun drawable-sphere-box-intersect? ((arg0 drawable) (arg1 bounding-box4w)) (local-vars (r0-0 int) @@ -56,8 +56,8 @@ ) ;; definition for function instance-sphere-box-intersect? -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun instance-sphere-box-intersect? ((arg0 drawable) (arg1 instance-tie) (arg2 bounding-box4w)) (local-vars (r0-0 int) @@ -181,7 +181,7 @@ ) ;; definition for function instance-tfragment-add-debug-sphere -;; Used lq/sq +;; INFO: Used lq/sq (defun instance-tfragment-add-debug-sphere ((arg0 drawable) (arg1 instance-tie)) (local-vars (v1-1 uint128) (v1-2 uint128) (a3-0 float)) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/engine/data/res_REF.gc b/test/decompiler/reference/jak1/engine/data/res_REF.gc index 0c14c19471..0e53fa09ec 100644 --- a/test/decompiler/reference/jak1/engine/data/res_REF.gc +++ b/test/decompiler/reference/jak1/engine/data/res_REF.gc @@ -35,7 +35,7 @@ ) ;; definition for method 13 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod get-tag-index-data res-lump ((obj res-lump) (arg0 int)) (&+ (-> obj data-base) (-> obj tag arg0 data-offset)) ) @@ -76,7 +76,7 @@ ;; definition for method 3 of type res-lump ;; INFO: this function exists in multiple non-identical object files -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect res-lump ((obj res-lump)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Textra: ~A~%" (-> obj extra)) @@ -117,8 +117,8 @@ ) ;; definition for method 19 of type res-lump +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs res-tag-pair. -;; Used lq/sq (defmethod lookup-tag-idx res-lump ((obj res-lump) (name-sym symbol) (mode symbol) (time float)) (local-vars (tag-idx int)) (when (or (= name-sym 'id) @@ -218,7 +218,7 @@ ) ;; definition for method 20 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod make-property-data res-lump ((obj res-lump) (time float) (result res-tag-pair) (buf pointer)) (rlet ((vf1 :class vf) (vf2 :class vf) @@ -400,7 +400,7 @@ ) ;; definition for method 9 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod get-property-data res-lump ((obj res-lump) (name symbol) (mode symbol) @@ -426,8 +426,8 @@ ) ;; definition for method 10 of type res-lump +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs structure. -;; Used lq/sq (defmethod get-property-struct res-lump ((obj res-lump) (name symbol) (mode symbol) @@ -459,8 +459,8 @@ ) ;; definition for method 11 of type res-lump +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs uint128. -;; Used lq/sq (defmethod get-property-value res-lump ((obj res-lump) (name symbol) (mode symbol) @@ -537,7 +537,7 @@ ) ;; definition for method 12 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod get-property-value-float res-lump ((obj res-lump) (name symbol) (mode symbol) @@ -617,7 +617,7 @@ ) ;; definition for method 16 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod sort! res-lump ((obj res-lump)) (let ((tags-sorted -1)) (while (nonzero? tags-sorted) @@ -646,7 +646,7 @@ ) ;; definition for method 15 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod allocate-data-memory-for-tag! res-lump ((obj res-lump) (arg0 res-tag)) (local-vars (resource-mem pointer)) (let* ((tag-pair (lookup-tag-idx obj (-> arg0 name) 'exact (-> arg0 key-frame))) @@ -743,7 +743,7 @@ ) ;; definition for method 21 of type res-lump -;; Used lq/sq +;; INFO: Used lq/sq (defmethod get-curve-data! res-lump ((obj res-lump) (arg0 curve) (arg1 symbol) (arg2 symbol) (arg3 float)) (local-vars (sv-16 res-tag) (sv-32 res-tag)) (let ((s5-0 #f)) @@ -782,8 +782,8 @@ ) ;; definition for method 8 of type res-lump +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs res-lump. -;; Used lq/sq (defmethod mem-usage res-lump ((obj res-lump) (block memory-usage-block) (flags int)) (local-vars (sv-16 int)) (let ((mem-use-id 48) diff --git a/test/decompiler/reference/jak1/engine/debug/anim-tester_REF.gc b/test/decompiler/reference/jak1/engine/debug/anim-tester_REF.gc index 5040de90be..883a174713 100644 --- a/test/decompiler/reference/jak1/engine/debug/anim-tester_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/anim-tester_REF.gc @@ -974,7 +974,7 @@ ) ;; definition for function anim-tester-reset -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior anim-tester-reset anim-tester () (let ((v1-0 (-> self obj-list))) "is the list empty, #t = empty" @@ -1039,7 +1039,7 @@ ) ;; definition for function anim-tester-disp-frame-num -;; Used lq/sq +;; INFO: Used lq/sq (defun anim-tester-disp-frame-num ((arg0 string) (arg1 float) (arg2 float) (arg3 font-context)) (local-vars (sv-16 (function _varargs_ object))) (let* ((s3-0 (-> *display* frames (-> *display* on-screen) frame debug-buf)) @@ -1726,10 +1726,10 @@ ) ;; definition for function anim-test-edit-sequence-list-handler +;; INFO: Used lq/sq ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 893] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 938] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 1045] -;; Used lq/sq (defun anim-test-edit-sequence-list-handler ((arg0 int) (arg1 list-control)) (local-vars (sv-192 (function string dma-buffer int int font-color font-flags float)) @@ -2817,7 +2817,7 @@ ) ;; definition for function anim-tester-add-newobj -;; Used lq/sq +;; INFO: Used lq/sq (defun anim-tester-add-newobj ((arg0 anim-tester) (arg1 string) (arg2 art-group)) (local-vars (sv-96 art-element) (sv-112 art-element) (sv-128 anim-test-obj)) (let ((s2-0 (the-as anim-test-obj #f)) diff --git a/test/decompiler/reference/jak1/engine/debug/debug-sphere_REF.gc b/test/decompiler/reference/jak1/engine/debug/debug-sphere_REF.gc index 0f5c9df6be..f3aea6a1f5 100644 --- a/test/decompiler/reference/jak1/engine/debug/debug-sphere_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/debug-sphere_REF.gc @@ -18,8 +18,8 @@ ) ;; definition for function make-debug-sphere-table +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun make-debug-sphere-table ((arg0 debug-sphere-table)) (local-vars (sv-80 int)) (let ((s5-0 (new-stack-vector0)) @@ -65,8 +65,8 @@ (make-debug-sphere-table *debug-sphere-table*) ;; definition for function add-debug-sphere-from-table +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun add-debug-sphere-from-table ((arg0 bucket-id) (arg1 vector) (arg2 float) (arg3 rgba)) (rlet ((vf1 :class vf) (vf2 :class vf) diff --git a/test/decompiler/reference/jak1/engine/debug/debug_REF.gc b/test/decompiler/reference/jak1/engine/debug/debug_REF.gc index 879a9863e7..15c6e33b33 100644 --- a/test/decompiler/reference/jak1/engine/debug/debug_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/debug_REF.gc @@ -2,13 +2,13 @@ (in-package goal) ;; definition for function transform-float-point -;; WARN: Bad vector register dependency: vf1 -;; WARN: Bad vector register dependency: vf2 -;; WARN: Bad vector register dependency: vf3 -;; WARN: Bad vector register dependency: vf4 -;; WARN: Bad vector register dependency: vf6 -;; WARN: Bad vector register dependency: vf8 -;; WARN: Bad vector register dependency: vf9 +;; ERROR: Bad vector register dependency: vf1 +;; ERROR: Bad vector register dependency: vf2 +;; ERROR: Bad vector register dependency: vf3 +;; ERROR: Bad vector register dependency: vf4 +;; ERROR: Bad vector register dependency: vf6 +;; ERROR: Bad vector register dependency: vf8 +;; ERROR: Bad vector register dependency: vf9 (defun transform-float-point ((arg0 vector) (arg1 vector4w)) (rlet ((acc :class vf) (Q :class vf) @@ -41,7 +41,7 @@ ) ;; definition (debug) for function add-debug-point -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-point ((enable-draw symbol) (bucket bucket-id) (pt vector)) (if (not enable-draw) (return #f) @@ -164,7 +164,7 @@ ) ;; definition (debug) for function internal-draw-debug-line -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug internal-draw-debug-line ((arg0 bucket-id) (arg1 vector) (arg2 vector) (arg3 rgba) (arg4 symbol) (arg5 rgba)) (local-vars (sv-80 vector)) (set! sv-80 arg2) @@ -305,7 +305,7 @@ ) ;; definition (debug) for function internal-draw-debug-text-3d -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug internal-draw-debug-text-3d ((arg0 bucket-id) (arg1 string) (arg2 vector) (arg3 font-color) (arg4 vector2h)) (let ((s2-0 (new 'stack-no-clear 'vector4w))) (set! (-> s2-0 quad) (the-as uint128 0)) @@ -360,7 +360,7 @@ ) ;; definition (debug) for function add-debug-triangle-normal -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-triangle-normal ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 vector) (arg5 rgba)) (local-vars (sv-48 (function vector vector float vector)) (sv-64 vector) (sv-80 vector)) (when arg0 @@ -384,7 +384,7 @@ ) ;; definition (debug) for function add-debug-flat-triangle -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-flat-triangle ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 vector) (arg5 rgba)) (if (not arg0) (return #f) @@ -640,7 +640,7 @@ ) ;; definition (debug) for function add-debug-line -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-line ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 rgba) (arg5 symbol) (arg6 rgba)) (when arg0 (cond @@ -665,7 +665,7 @@ ) ;; definition (debug) for function add-debug-line2d -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-line2d ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 vector)) (if (not arg0) (return #f) @@ -761,7 +761,7 @@ ) ;; definition (debug) for function add-debug-box -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-box ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 rgba)) (let ((s5-0 (new-stack-vector0))) (set! (-> s5-0 quad) (-> arg2 quad)) @@ -811,7 +811,7 @@ ) ;; definition (debug) for function add-debug-x -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-x ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 rgba)) (if (not arg0) (return #f) @@ -830,7 +830,7 @@ ) ;; definition (debug) for function add-debug-text-3d -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-text-3d ((arg0 symbol) (arg1 bucket-id) (arg2 string) (arg3 vector) (arg4 font-color) (arg5 vector2h)) (when arg0 (cond @@ -944,7 +944,7 @@ ) ;; definition (debug) for function add-debug-circle -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-circle ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 float) (arg4 rgba) (arg5 matrix)) (local-vars (sv-48 int) (sv-64 vector) (sv-80 vector)) "note: you may pass #f for orientation" @@ -982,7 +982,7 @@ ) ;; definition (debug) for function add-debug-vector -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-vector ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 vector) (arg4 meters) (arg5 rgba)) (if (not arg0) (return #f) @@ -1041,9 +1041,9 @@ ) ;; definition (debug) for function add-debug-yrot-vector +;; INFO: Used lq/sq ;; WARN: Stack slot offset 32 signed mismatch -;; WARN: Stack slot load at 32 mismatch: defined as size 4, got size 16 -;; Used lq/sq +;; ERROR: Stack slot load at 32 mismatch: defined as size 4, got size 16 (defun-debug add-debug-yrot-vector ((arg0 symbol) (arg1 bucket-id) (arg2 vector) (arg3 float) (arg4 float) (arg5 rgba)) (local-vars (sv-32 float)) (set! sv-32 arg3) @@ -1062,7 +1062,7 @@ ) ;; definition (debug) for function add-debug-arc -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-arc ((arg0 symbol) (arg1 bucket-id) (arg2 vector) @@ -1117,7 +1117,7 @@ ) ;; definition (debug) for function add-debug-curve -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-curve ((arg0 symbol) (arg1 bucket-id) (arg2 (inline-array vector)) @@ -1155,7 +1155,7 @@ ) ;; definition (debug) for function add-debug-points -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-points ((arg0 symbol) (arg1 bucket-id) (arg2 (inline-array vector)) (arg3 int) (arg4 rgba) (arg5 float) (arg6 int)) (local-vars (sv-32 (function symbol bucket-id string vector font-color vector2h symbol)) @@ -1234,7 +1234,7 @@ ) ;; definition (debug) for function debug-pad-display -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug debug-pad-display ((arg0 cpad-info)) (let ((gp-0 (new 'static 'inline-array vector 8 (new 'static 'vector) @@ -1288,7 +1288,7 @@ ) ;; definition (debug) for function add-debug-light -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-light ((arg0 symbol) (arg1 bucket-id) (arg2 light) (arg3 vector) (arg4 string)) (if (not arg0) (return #f) @@ -1392,7 +1392,7 @@ ) ;; definition (debug) for function history-draw-and-update -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug history-draw-and-update ((arg0 pos-history) (arg1 int) (arg2 vector)) (if (and arg1 (not (-> arg0 points))) (set! (-> arg0 points) (the-as (inline-array vector) (malloc 'debug (* (-> arg0 num-points) 16)))) @@ -1424,7 +1424,7 @@ ) ;; definition (debug) for function dma-timeout-cam -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug dma-timeout-cam () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/engine/debug/memory-usage_REF.gc b/test/decompiler/reference/jak1/engine/debug/memory-usage_REF.gc index 6095f5c159..fb983b7f71 100644 --- a/test/decompiler/reference/jak1/engine/debug/memory-usage_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/memory-usage_REF.gc @@ -303,8 +303,8 @@ (define *max-dma* 0) ;; definition for method 11 of type memory-usage-block +;; INFO: Used lq/sq ;; INFO: Return type mismatch memory-usage-block vs none. -;; Used lq/sq (defmethod print-mem-usage memory-usage-block ((obj memory-usage-block) (arg0 level) (arg1 object)) (local-vars (sv-16 object) (sv-32 string) (sv-48 symbol) (sv-64 int) (sv-80 int)) (let ((s3-0 (&- (-> arg0 heap current) (the-as uint (-> arg0 heap base))))) diff --git a/test/decompiler/reference/jak1/engine/debug/menu_REF.gc b/test/decompiler/reference/jak1/engine/debug/menu_REF.gc index 59c1e1f9e5..a305c91530 100644 --- a/test/decompiler/reference/jak1/engine/debug/menu_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/menu_REF.gc @@ -639,15 +639,15 @@ ) ;; definition for function debug-menu-make-from-template -;; WARN: Stack slot load at 48 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 64 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 80 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 96 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 48 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 64 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 80 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 96 mismatch: defined as size 4, got size 16 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Stack slot load at 48 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 64 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 80 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 96 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 48 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 64 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 80 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 96 mismatch: defined as size 4, got size 16 (defun debug-menu-make-from-template ((arg0 debug-menu-context) (arg1 pair)) (local-vars (s5-0 basic) (sv-16 object) (sv-32 int) (sv-48 float) (sv-64 float) (sv-80 float) (sv-96 float)) (when (or (not arg1) (null? arg1)) @@ -1088,7 +1088,7 @@ ) ;; definition for function debug-menu-render -;; Used lq/sq +;; INFO: Used lq/sq (defun debug-menu-render ((arg0 debug-menu) (arg1 int) (arg2 int) (arg3 debug-menu-node) (arg4 int)) (local-vars (sv-16 dma-buffer) (sv-32 pointer)) (let ((v1-0 0)) diff --git a/test/decompiler/reference/jak1/engine/debug/part-tester_REF.gc b/test/decompiler/reference/jak1/engine/debug/part-tester_REF.gc index 9a8d8a46de..e3aad807c2 100644 --- a/test/decompiler/reference/jak1/engine/debug/part-tester_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/part-tester_REF.gc @@ -93,8 +93,8 @@ ) ;; definition for function part-tester-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior part-tester-init-by-other process-drawable ((arg0 vector)) (set! (-> self root) (new 'process 'trsqv)) (set! (-> self root trans quad) (-> arg0 quad)) diff --git a/test/decompiler/reference/jak1/engine/debug/stats-h_REF.gc b/test/decompiler/reference/jak1/engine/debug/stats-h_REF.gc index fcfaace3a9..257518755a 100644 --- a/test/decompiler/reference/jak1/engine/debug/stats-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/stats-h_REF.gc @@ -116,16 +116,16 @@ ;; definition for method 11 of type perf-stat ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, v1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, v1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defmethod reset! perf-stat ((obj perf-stat)) (let ((v1-0 (-> obj ctrl))) (+! (-> obj count) 1) @@ -148,11 +148,11 @@ ;; definition for method 12 of type perf-stat ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc v1, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc v1, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc v1, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc v1, pcr1] (defmethod read! perf-stat ((obj perf-stat)) (local-vars (v1-1 int) (v1-3 int)) (b! (zero? (-> obj ctrl)) cfg-2 :delay (nop!)) diff --git a/test/decompiler/reference/jak1/engine/debug/viewer_REF.gc b/test/decompiler/reference/jak1/engine/debug/viewer_REF.gc index c5807c2d58..1ad0647499 100644 --- a/test/decompiler/reference/jak1/engine/debug/viewer_REF.gc +++ b/test/decompiler/reference/jak1/engine/debug/viewer_REF.gc @@ -201,8 +201,8 @@ ) ;; definition for function init-viewer-for-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior init-viewer-for-other viewer ((arg0 string) (arg1 vector)) (set! *viewer* self) (set! (-> self root) (new 'process 'trsqv)) @@ -216,7 +216,7 @@ ) ;; definition for function add-a-bunch -;; Used lq/sq +;; INFO: Used lq/sq (defun add-a-bunch ((arg0 string) (arg1 int) (arg2 int) (arg3 float)) (local-vars (sv-32 process)) (dotimes (s2-0 arg1) diff --git a/test/decompiler/reference/jak1/engine/dma/dma-buffer_REF.gc b/test/decompiler/reference/jak1/engine/dma/dma-buffer_REF.gc index e15b413634..156a1cf93c 100644 --- a/test/decompiler/reference/jak1/engine/dma/dma-buffer_REF.gc +++ b/test/decompiler/reference/jak1/engine/dma/dma-buffer_REF.gc @@ -14,7 +14,7 @@ ) ;; definition for method 3 of type dma-packet -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect dma-packet ((obj dma-packet)) (format #t "[~8x] ~A~%" obj 'dma-packet) (format #t "~Tdma: #x~X~%" (-> obj dma)) diff --git a/test/decompiler/reference/jak1/engine/dma/dma-disasm_REF.gc b/test/decompiler/reference/jak1/engine/dma/dma-disasm_REF.gc index 0428b298be..c1cfb0aaf2 100644 --- a/test/decompiler/reference/jak1/engine/dma/dma-disasm_REF.gc +++ b/test/decompiler/reference/jak1/engine/dma/dma-disasm_REF.gc @@ -306,7 +306,7 @@ ) ;; definition for function disasm-vif-tag -;; Used lq/sq +;; INFO: Used lq/sq (defun disasm-vif-tag ((data (pointer vif-tag)) (words int) (stream symbol) (details symbol)) (local-vars (cmd vif-cmd) (data-ptr (pointer vif-tag)) (data-idx int) (unpack-imm vif-unpack-imm)) (let ((byte-idx 0)) @@ -515,7 +515,7 @@ ;; definition for function disasm-dma-list ;; WARN: Check prologue - tricky store of a0 -;; Used lq/sq +;; INFO: Used lq/sq (defun disasm-dma-list ((data dma-packet) (mode symbol) (verbose symbol) (stream symbol) (expected-size int)) (local-vars (addr object) diff --git a/test/decompiler/reference/jak1/engine/dma/dma_REF.gc b/test/decompiler/reference/jak1/engine/dma/dma_REF.gc index 755adeba23..fe79ad1697 100644 --- a/test/decompiler/reference/jak1/engine/dma/dma_REF.gc +++ b/test/decompiler/reference/jak1/engine/dma/dma_REF.gc @@ -26,9 +26,9 @@ ;; definition for function dma-send ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send ((arg0 dma-bank) (arg1 uint) (arg2 uint)) (dma-sync (the-as pointer arg0) 0 0) (flush-cache 0) @@ -49,9 +49,9 @@ ;; definition for function dma-send-chain ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-chain ((arg0 dma-bank-source) (arg1 uint)) (dma-sync (the-as pointer arg0) 0 0) (flush-cache 0) @@ -72,9 +72,9 @@ ;; definition for function dma-send-chain-no-tte ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-chain-no-tte ((arg0 dma-bank-source) (arg1 uint)) (dma-sync (the-as pointer arg0) 0 0) (flush-cache 0) @@ -95,9 +95,9 @@ ;; definition for function dma-send-chain-no-flush ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-chain-no-flush ((arg0 dma-bank-source) (arg1 uint)) (dma-sync (the-as pointer arg0) 0 0) (.sync.l) @@ -117,9 +117,9 @@ ;; definition for function dma-send-to-spr ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-to-spr ((sadr uint) (madr uint) (qwc uint) (sync symbol)) (let ((s5-0 (the-as dma-bank-spr #x1000d400))) (dma-sync (the-as pointer s5-0) 0 0) @@ -141,9 +141,9 @@ ;; definition for function dma-send-to-spr-no-flush ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-to-spr-no-flush ((sadr uint) (madr uint) (qwc uint) (sync symbol)) (let ((s5-0 (the-as dma-bank-spr #x1000d400))) (dma-sync (the-as pointer s5-0) 0 0) @@ -164,9 +164,9 @@ ;; definition for function dma-send-from-spr ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-from-spr ((madr uint) (sadr uint) (qwc uint) (sync symbol)) (let ((s5-0 (the-as dma-bank-spr #x1000d000))) (dma-sync (the-as pointer s5-0) 0 0) @@ -188,9 +188,9 @@ ;; definition for function dma-send-from-spr-no-flush ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun dma-send-from-spr-no-flush ((madr uint) (sadr uint) (qwc uint) (sync symbol)) (let ((s5-0 (the-as dma-bank-spr #x1000d000))) (dma-sync (the-as pointer s5-0) 0 0) @@ -314,11 +314,11 @@ ;; definition for function ultimate-memcpy ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun ultimate-memcpy ((dst pointer) (src pointer) (size-bytes uint)) (let ((spr-to-bank (the-as dma-bank-spr #x1000d400)) (spr-from-bank (the-as dma-bank-spr #x1000d000)) diff --git a/test/decompiler/reference/jak1/engine/draw/drawable_REF.gc b/test/decompiler/reference/jak1/engine/draw/drawable_REF.gc index 3851955afb..e932b74403 100644 --- a/test/decompiler/reference/jak1/engine/draw/drawable_REF.gc +++ b/test/decompiler/reference/jak1/engine/draw/drawable_REF.gc @@ -2,10 +2,10 @@ (in-package goal) ;; definition for function sphere-cull -;; WARN: Bad vector register dependency: vf16 -;; WARN: Bad vector register dependency: vf17 -;; WARN: Bad vector register dependency: vf18 -;; WARN: Bad vector register dependency: vf19 +;; ERROR: Bad vector register dependency: vf16 +;; ERROR: Bad vector register dependency: vf17 +;; ERROR: Bad vector register dependency: vf18 +;; ERROR: Bad vector register dependency: vf19 (defun sphere-cull ((arg0 vector)) (local-vars (v1-0 uint128) (v1-1 uint128) (v1-2 uint128)) (rlet ((acc :class vf) @@ -32,10 +32,10 @@ ) ;; definition for function guard-band-cull -;; WARN: Bad vector register dependency: vf20 -;; WARN: Bad vector register dependency: vf21 -;; WARN: Bad vector register dependency: vf22 -;; WARN: Bad vector register dependency: vf23 +;; ERROR: Bad vector register dependency: vf20 +;; ERROR: Bad vector register dependency: vf21 +;; ERROR: Bad vector register dependency: vf22 +;; ERROR: Bad vector register dependency: vf23 (defun guard-band-cull ((arg0 vector)) (local-vars (v1-0 uint128) (v1-1 uint128) (v1-2 uint128)) (rlet ((acc :class vf) @@ -133,9 +133,9 @@ ) ;; definition for function vis-cull -;; WARN: Type Propagation failed: Failed type prop at op 3 ((set! v1 (l.b (+ v1 #x38b0)))): Could not get type of load: (set! v1 (l.b (+ v1 #x38b0))). -;; WARN: Type Propagation failed: Type analysis failed -;; WARN: Unsupported inline assembly instruction kind - [addiu a0, a0, 56] +;; ERROR: Type Propagation failed: Failed type prop at op 3 ((set! v1 (l.b (+ v1 #x38b0)))): Could not get type of load: (set! v1 (l.b (+ v1 #x38b0))). +;; ERROR: Type Propagation failed: Type analysis failed +;; ERROR: Unsupported inline assembly instruction kind - [addiu a0, a0, 56] (defun vis-cull ((a0-0 int)) (local-vars (v0-0 none) (v1-0 int) (v1-1 int) (v1-2 none) (v1-3 none) (a0-1 none) (a0-2 none) (a1-0 int)) (set! v1-0 #x70000000) @@ -356,8 +356,8 @@ ) ;; definition (debug) for function draw-instance-info +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defun-debug draw-instance-info ((arg0 string)) (local-vars (sv-16 uint) @@ -548,7 +548,7 @@ ;; definition for function dma-add-process-drawable ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function dma-add-process-drawable has a return type of none, but the expression builder found a return statement. +;; WARN: Function dma-add-process-drawable has a return type of none, but the expression builder found a return statement. (defun dma-add-process-drawable ((arg0 process-drawable) (arg1 draw-control) (arg2 symbol) (arg3 dma-buffer)) (local-vars (v1-37 float) (sv-16 process-drawable)) (rlet ((acc :class vf) @@ -846,8 +846,8 @@ (set-vector! (-> *hud-lights* ambient) 0.5 0.5 0.5 1.0) ;; definition for function dma-add-process-drawable-hud +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun dma-add-process-drawable-hud ((arg0 process-drawable) (arg1 draw-control) (arg2 symbol) (arg3 dma-buffer)) (logclear! (-> arg1 status) (draw-status was-drawn)) (when (zero? (logand (-> arg1 status) (draw-status hidden no-anim no-skeleton-update))) @@ -879,11 +879,11 @@ ;; definition for function foreground-engine-execute ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin v1, 0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin v1, 1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin v1, 0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin v1, 1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun foreground-engine-execute ((arg0 engine) (arg1 display-frame) (arg2 int) (arg3 int)) (let ((s4-0 (-> *display* frames (-> *display* on-screen) frame global-buf base))) (if *debug-segment* @@ -976,21 +976,21 @@ ;; definition for function real-main-draw-hook ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun real-main-draw-hook () (local-vars (a0-74 int) (a0-76 int)) (when *slow-frame-rate* @@ -1712,8 +1712,8 @@ ) ;; definition (debug) for function marks-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun-debug marks-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1754,8 +1754,8 @@ ) ;; definition (debug) for function eddie-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun-debug eddie-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1786,8 +1786,8 @@ ) ;; definition (debug) for function gregs-jungle-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch string vs none. -;; Used lq/sq (defun-debug gregs-jungle-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1827,8 +1827,8 @@ ) ;; definition (debug) for function gregs-village1-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch string vs none. -;; Used lq/sq (defun-debug gregs-village1-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1868,8 +1868,8 @@ ) ;; definition (debug) for function gregs-texture-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch string vs none. -;; Used lq/sq (defun-debug gregs-texture-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1909,8 +1909,8 @@ ) ;; definition (debug) for function gregs-texture2-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch string vs none. -;; Used lq/sq (defun-debug gregs-texture2-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1950,8 +1950,8 @@ ) ;; definition (debug) for function cave-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun-debug cave-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) @@ -1982,8 +1982,8 @@ ) ;; definition (debug) for function paals-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun-debug paals-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/engine/draw/process-drawable_REF.gc b/test/decompiler/reference/jak1/engine/draw/process-drawable_REF.gc index 28e765e0f2..2550d09e7f 100644 --- a/test/decompiler/reference/jak1/engine/draw/process-drawable_REF.gc +++ b/test/decompiler/reference/jak1/engine/draw/process-drawable_REF.gc @@ -112,7 +112,7 @@ ) ;; definition for method 9 of type lod-set -;; Used lq/sq +;; INFO: Used lq/sq (defmethod setup-lods! lod-set ((obj lod-set) (arg0 skeleton-group) (arg1 art-group) (arg2 entity)) (local-vars (sv-16 res-tag)) (let ((s4-0 arg0) @@ -233,11 +233,11 @@ ) ;; definition for function fill-skeleton-cache -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin a2, 0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin a2, 1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin a2, 0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin a2, 1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun fill-skeleton-cache ((arg0 process-drawable)) (let ((v1-0 (-> arg0 node-list)) (a0-2 (-> arg0 draw skeleton)) @@ -283,8 +283,8 @@ ) ;; definition for method 17 of type process-drawable +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod do-joint-math! process-drawable ((obj process-drawable)) (cond ((logtest? (-> obj draw status) (draw-status hidden no-anim)) @@ -377,7 +377,7 @@ ) ;; definition for function draw-joint-spheres -;; Used lq/sq +;; INFO: Used lq/sq (defun draw-joint-spheres ((arg0 process-drawable)) (dotimes (s5-0 (-> arg0 node-list length)) (let ((a2-0 (vector<-cspace! (new-stack-vector0) (-> arg0 node-list data s5-0)))) @@ -433,11 +433,11 @@ ) ;; definition for method 14 of type process-drawable +;; INFO: Used lq/sq ;; WARN: Stack slot offset 20 signed mismatch ;; WARN: Stack slot offset 20 signed mismatch ;; WARN: Stack slot offset 20 signed mismatch ;; INFO: Return type mismatch draw-control vs none. -;; Used lq/sq (defmethod initialize-skeleton process-drawable ((obj process-drawable) (arg0 skeleton-group) (arg1 pair)) (local-vars (s3-0 draw-control) (sv-16 art-element) (sv-20 int)) (let ((s1-0 (cond @@ -913,8 +913,8 @@ ;; definition for method 19 of type process-drawable ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr ra] +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr ra] (defmethod evaluate-joint-control process-drawable ((obj process-drawable)) (local-vars (s7-0 none) (ra-0 int)) (let ((gp-0 (-> obj skel))) @@ -982,7 +982,7 @@ ;; definition for function ja-post ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function ja-post has a return type of none, but the expression builder found a return statement. +;; WARN: Function ja-post has a return type of none, but the expression builder found a return statement. (defbehavior ja-post process-drawable () (when (nonzero? (-> self draw)) (let ((gp-1 (logtest? (-> self draw status) (draw-status no-skeleton-update)))) @@ -1128,8 +1128,8 @@ ;; definition for function process-drawable-birth-fuel-cell ;; WARN: Found some very strange gotos. Check result carefully, this is not well tested. +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior process-drawable-birth-fuel-cell process-drawable ((arg0 entity) (arg1 vector) (arg2 symbol)) (let ((v1-0 arg0) (gp-0 (new 'stack-no-clear 'vector)) diff --git a/test/decompiler/reference/jak1/engine/entity/actor-link-h_REF.gc b/test/decompiler/reference/jak1/engine/entity/actor-link-h_REF.gc index 943217d975..c6e4aa504f 100644 --- a/test/decompiler/reference/jak1/engine/entity/actor-link-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/entity/actor-link-h_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function entity-actor-lookup +;; INFO: Used lq/sq ;; INFO: Return type mismatch entity vs entity-actor. -;; Used lq/sq (defun entity-actor-lookup ((lump res-lump) (name symbol) (idx int)) (local-vars (sv-16 res-tag)) (set! sv-16 (new 'static 'res-tag)) @@ -22,7 +22,7 @@ ;; definition for function entity-actor-count ;; WARN: Check prologue - tricky store of r0 -;; Used lq/sq +;; INFO: Used lq/sq (defun entity-actor-count ((res res-lump) (name symbol)) (local-vars (tag res-tag)) (set! tag (new 'static 'res-tag)) diff --git a/test/decompiler/reference/jak1/engine/entity/entity-h_REF.gc b/test/decompiler/reference/jak1/engine/entity/entity-h_REF.gc index 241de803d6..306a5c0832 100644 --- a/test/decompiler/reference/jak1/engine/entity/entity-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/entity/entity-h_REF.gc @@ -37,7 +37,7 @@ ) ;; definition for method 3 of type entity-perm -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect entity-perm ((obj entity-perm)) (format #t "[~8x] ~A~%" obj 'entity-perm) (format #t "~Tuser-object[2] @ #x~X~%" (-> obj user-object)) @@ -184,7 +184,7 @@ ) ;; definition for method 3 of type entity-ambient-data -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect entity-ambient-data ((obj entity-ambient-data)) (format #t "[~8x] ~A~%" obj 'entity-ambient-data) (format #t "~Tuser-object[3] @ #x~X~%" (&-> obj quad)) diff --git a/test/decompiler/reference/jak1/engine/entity/entity_REF.gc b/test/decompiler/reference/jak1/engine/entity/entity_REF.gc index 13280c4f04..7a8e25f2d0 100644 --- a/test/decompiler/reference/jak1/engine/entity/entity_REF.gc +++ b/test/decompiler/reference/jak1/engine/entity/entity_REF.gc @@ -521,8 +521,8 @@ ) ;; definition for method 24 of type entity +;; INFO: Used lq/sq ;; INFO: Return type mismatch entity vs none. -;; Used lq/sq (defmethod add-to-level! entity ((obj entity) (lev-group level-group) (lev level) (aid actor-id)) (let ((level-link (-> lev entity data (-> lev entity length)))) (+! (-> lev entity length) 1) @@ -603,8 +603,8 @@ ) ;; definition for method 22 of type level-group +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod update-vis-volumes level-group ((obj level-group)) (local-vars (v1-10 symbol) @@ -660,8 +660,8 @@ ) ;; definition for method 23 of type level-group +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod update-vis-volumes-from-nav-mesh level-group ((obj level-group)) (local-vars (sv-16 entity) (sv-32 entity)) (dotimes (s5-0 (-> obj length)) @@ -717,8 +717,8 @@ ) ;; definition for method 24 of type level-group +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod print-volume-sizes level-group ((obj level-group)) (local-vars (sv-16 type) (sv-32 (function _varargs_ object)) (sv-48 symbol) (sv-64 string) (sv-80 entity)) (dotimes (s5-0 (-> obj length)) @@ -805,8 +805,8 @@ ) ;; definition for method 14 of type level-group +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw-actors level-group ((obj level-group) (arg0 symbol)) (local-vars (sv-48 (function symbol bucket-id string vector font-color vector2h symbol)) @@ -1293,8 +1293,8 @@ ;; definition for method 18 of type bsp-header ;; INFO: Return type mismatch bsp-header vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 s5, Count] -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 s5, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defmethod birth bsp-header ((obj bsp-header)) (local-vars (v1-71 int) (s5-0 int)) (.mfc0 s5-0 Count) @@ -1469,8 +1469,8 @@ ) ;; definition for function process-drawable-from-entity! +;; INFO: Used lq/sq ;; INFO: Return type mismatch process-drawable vs none. -;; Used lq/sq (defun process-drawable-from-entity! ((arg0 process-drawable) (arg1 entity-actor)) (logior! (-> arg0 mask) (process-mask actor-pause)) (set! (-> arg0 root trans quad) (-> arg1 extra trans quad)) @@ -1612,8 +1612,8 @@ ) ;; definition for method 15 of type level-group +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defmethod actors-update level-group ((obj level-group)) (local-vars (sv-16 vector) (sv-24 int) (sv-32 entity-links) (sv-48 int) (sv-64 string) (sv-80 int)) (when *compact-actors* @@ -1875,9 +1875,9 @@ ;; definition (debug) for function entity-speed-test ;; INFO: Return type mismatch entity vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Count, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfc0 s4, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Count, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 s4, Count] (defun-debug entity-speed-test ((arg0 string)) (local-vars (s4-0 int)) (let ((gp-0 (entity-by-name arg0))) diff --git a/test/decompiler/reference/jak1/engine/game/collectables-part_REF.gc b/test/decompiler/reference/jak1/engine/game/collectables-part_REF.gc index 7cf7011dc7..c898fe25ad 100644 --- a/test/decompiler/reference/jak1/engine/game/collectables-part_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/collectables-part_REF.gc @@ -60,7 +60,7 @@ ) ;; definition for function part-tracker-track-target -;; Used lq/sq +;; INFO: Used lq/sq (defun part-tracker-track-target ((arg0 part-tracker)) (set! (-> arg0 linger-callback) (-> arg0 callback)) (let* ((v1-1 *target*) diff --git a/test/decompiler/reference/jak1/engine/game/collectables_REF.gc b/test/decompiler/reference/jak1/engine/game/collectables_REF.gc index 50bc1ebdf9..e9487c12cd 100644 --- a/test/decompiler/reference/jak1/engine/game/collectables_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/collectables_REF.gc @@ -62,8 +62,8 @@ ) ;; definition for method 21 of type collectable +;; INFO: Used lq/sq ;; INFO: Return type mismatch collectable vs none. -;; Used lq/sq (defmethod initialize-params collectable ((obj collectable) (arg0 time-frame) (arg1 float)) (logclear! (-> obj mask) (process-mask crate enemy platform ambient)) (set! (-> obj mask) (logior (process-mask collectable) (-> obj mask))) @@ -239,8 +239,8 @@ ) ;; definition for function initialize-eco-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior initialize-eco-by-other eco ((arg0 vector) (arg1 vector) (arg2 fact-info)) (let ((s3-0 (-> arg2 pickup-type)) (f30-0 (-> arg2 pickup-spawn-amount)) @@ -282,7 +282,7 @@ ) ;; definition for method 28 of type eco-collectable -;; Used lq/sq +;; INFO: Used lq/sq (defmethod initialize-eco eco-collectable ((obj eco-collectable) (arg0 entity-actor) (arg1 pickup-type) (arg2 float)) (set! (-> obj pickup-amount) arg2) (set! (-> obj pickup-type) arg1) @@ -1374,8 +1374,8 @@ ) ;; definition for function money-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior money-init-by-other money ((arg0 vector) (arg1 vector) (arg2 fact-info) (arg3 entity-actor)) (let ((s3-0 (-> arg2 pickup-type)) (f30-0 (-> arg2 pickup-spawn-amount)) @@ -1401,8 +1401,8 @@ ) ;; definition for function money-init-by-other-no-bob +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior money-init-by-other-no-bob money ((arg0 vector) (arg1 vector) (arg2 fact-info) (arg3 float) (arg4 entity-actor)) (set! (-> self entity) arg4) (set! (-> self pickup-type) (the-as pickup-type arg2)) @@ -2105,7 +2105,7 @@ ) ;; definition for method 20 of type fuel-cell -;; Used lq/sq +;; INFO: Used lq/sq (defmethod initialize fuel-cell ((obj fuel-cell)) (stack-size-set! (-> obj main-thread) 512) (let ((s5-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) @@ -2153,8 +2153,8 @@ ) ;; definition for function fuel-cell-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior fuel-cell-init-by-other fuel-cell ((arg0 vector) (arg1 vector) (arg2 fact-info) (arg3 entity-actor)) (let ((s3-0 (-> arg2 pickup-type)) (f30-0 (-> arg2 pickup-spawn-amount)) @@ -2502,8 +2502,8 @@ ) ;; definition for function buzzer-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior buzzer-init-by-other buzzer ((arg0 vector) (arg1 vector) (arg2 fact-info) (arg3 entity-actor)) (let ((s3-0 (-> arg2 pickup-type)) (f30-0 (-> arg2 pickup-spawn-amount)) @@ -2565,6 +2565,7 @@ ) ;; definition for function birth-pickup-at-point +;; INFO: Used lq/sq ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 190] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 221] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 252] @@ -2573,7 +2574,6 @@ ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 356] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 363] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 122] -;; Used lq/sq (defbehavior birth-pickup-at-point process ((arg0 vector) (arg1 pickup-type) (arg2 float) (arg3 symbol) (arg4 process-tree) (arg5 fact-info)) (local-vars (v1-2 basic) @@ -2783,7 +2783,7 @@ ) ;; definition for method 9 of type fact-info -;; Used lq/sq +;; INFO: Used lq/sq (defmethod drop-pickup fact-info ((obj fact-info) (arg0 symbol) (arg1 process-tree) (arg2 fact-info) (arg3 int)) (let ((s3-0 (-> obj pickup-type)) (f30-0 (-> obj pickup-amount)) @@ -2913,8 +2913,8 @@ ) ;; definition for function ecovalve-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior ecovalve-init-by-other ecovalve ((arg0 (function vent symbol))) (stack-size-set! (-> self main-thread) 128) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -2998,8 +2998,8 @@ ) ;; definition for method 20 of type vent +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod initialize vent ((obj vent) (arg0 entity-actor) (arg1 pickup-type)) (stack-size-set! (-> obj main-thread) 128) (logior! (-> obj mask) (process-mask actor-pause)) diff --git a/test/decompiler/reference/jak1/engine/game/crates_REF.gc b/test/decompiler/reference/jak1/engine/game/crates_REF.gc index 903b9d289e..896556ff00 100644 --- a/test/decompiler/reference/jak1/engine/game/crates_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/crates_REF.gc @@ -1052,7 +1052,7 @@ ) ;; definition for function crate-init-by-other -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior crate-init-by-other crate ((arg0 entity) (arg1 vector) (arg2 symbol)) (params-init self arg0) (set! (-> self root-override trans quad) (-> arg1 quad)) @@ -1145,7 +1145,7 @@ ) ;; definition for method 26 of type crate -;; Used lq/sq +;; INFO: Used lq/sq (defmethod art-init crate ((obj crate)) (case (-> obj look) (('iron) diff --git a/test/decompiler/reference/jak1/engine/game/effect-control_REF.gc b/test/decompiler/reference/jak1/engine/game/effect-control_REF.gc index 1edd56fa3e..20df498596 100644 --- a/test/decompiler/reference/jak1/engine/game/effect-control_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/effect-control_REF.gc @@ -128,8 +128,8 @@ ) ;; definition for method 9 of type effect-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-9 effect-control ((obj effect-control)) (let* ((a0-1 (-> obj process skel)) (v1-3 (if (< (-> obj channel-offset) (-> a0-1 active-channels)) @@ -232,8 +232,8 @@ ) ;; definition for method 14 of type effect-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-14 effect-control ((obj effect-control) (arg0 float) (arg1 float) (arg2 float)) (let ((s2-0 (-> obj name))) (while (= (-> s2-0 0 name) 'effect-name) @@ -261,6 +261,7 @@ ) ;; definition for method 10 of type effect-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 205] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 217] @@ -269,7 +270,6 @@ ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 364] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 450] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 469] -;; Used lq/sq (defmethod dummy-10 effect-control ((obj effect-control) (arg0 symbol) (arg1 float) (arg2 int)) (local-vars (sv-160 int) @@ -545,8 +545,8 @@ ) ;; definition for method 11 of type effect-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-11 effect-control ((obj effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 pat-surface)) (local-vars (sv-48 @@ -1067,7 +1067,7 @@ ) ;; definition for method 12 of type effect-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-12 effect-control ((obj effect-control) (arg0 symbol) (arg1 float) (arg2 int) (arg3 basic) (arg4 sound-name)) (local-vars (sv-112 res-tag) (sv-128 sound-name) (sv-144 basic) (sv-160 (function vector vector float))) (set! sv-144 arg3) diff --git a/test/decompiler/reference/jak1/engine/game/fact-h_REF.gc b/test/decompiler/reference/jak1/engine/game/fact-h_REF.gc index 635c3ba0ce..3b37e8a114 100644 --- a/test/decompiler/reference/jak1/engine/game/fact-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/fact-h_REF.gc @@ -230,7 +230,7 @@ ) ;; definition for method 0 of type fact-info -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new fact-info ((allocation symbol) (type-to-make type) (proc process-drawable) (pkup-type pickup-type) (pkup-amount float)) (local-vars (tag res-tag)) (let ((obj (object-new allocation type-to-make (the-as int (-> type-to-make size))))) diff --git a/test/decompiler/reference/jak1/engine/game/game-info_REF.gc b/test/decompiler/reference/jak1/engine/game/game-info_REF.gc index 88a4c2e239..c191ee709d 100644 --- a/test/decompiler/reference/jak1/engine/game/game-info_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/game-info_REF.gc @@ -130,8 +130,8 @@ ) ;; definition for method 9 of type game-info +;; INFO: Used lq/sq ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 191] -;; Used lq/sq (defmethod initialize! game-info ((obj game-info) (cause symbol) (save-to-load game-save) (continue-point-override string)) (local-vars (v0-0 int) (sv-96 symbol)) (case cause @@ -669,8 +669,8 @@ ) ;; definition for method 14 of type game-info +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod copy-perms-from-level! game-info ((obj game-info) (lev level)) (let ((perms (-> obj perm-list)) (lev-entities (-> lev bsp level entity)) @@ -698,8 +698,8 @@ ) ;; definition for method 15 of type game-info +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod copy-perms-to-level! game-info ((obj game-info) (lev level)) (let ((lev-entities (-> lev bsp level entity))) (dotimes (lev-entity-idx (-> lev-entities length)) @@ -728,8 +728,8 @@ ) ;; definition for method 9 of type continue-point +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw! continue-point ((obj continue-point)) (add-debug-x #t (bucket-id debug-no-zbuf) (-> obj trans) (new 'static 'rgba :r #xff :a #x80)) (add-debug-text-3d diff --git a/test/decompiler/reference/jak1/engine/game/game-save_REF.gc b/test/decompiler/reference/jak1/engine/game/game-save_REF.gc index 90f460ae8a..824528d90f 100644 --- a/test/decompiler/reference/jak1/engine/game/game-save_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/game-save_REF.gc @@ -264,7 +264,7 @@ ) ;; definition for method 11 of type game-save -;; Used lq/sq +;; INFO: Used lq/sq (defmethod debug-print game-save ((obj game-save) (detail symbol)) (local-vars (sv-16 int)) (format #t "[~8x] ~A~%" obj (-> obj type)) @@ -1340,7 +1340,7 @@ auto-save-post ;; definition for function auto-save-init-by-other ;; INFO: Return type mismatch object vs none. -;; WARN: Expression building failed: Function auto-save-init-by-other has a return type of none, but the expression builder found a return statement. +;; WARN: Function auto-save-init-by-other has a return type of none, but the expression builder found a return statement. (defbehavior auto-save-init-by-other auto-save ((desired-mode symbol) (notify-proc process-tree) (card-idx int) (file-idx int)) (when (handle->process (-> *game-info* auto-save-proc)) (send-event notify-proc 'notify 'error 16) diff --git a/test/decompiler/reference/jak1/engine/game/generic-obs_REF.gc b/test/decompiler/reference/jak1/engine/game/generic-obs_REF.gc index 7f7aed2189..953f66b5d0 100644 --- a/test/decompiler/reference/jak1/engine/game/generic-obs_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/generic-obs_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function clone-anim-once +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior clone-anim-once process-drawable ((arg0 handle) (arg1 int) (arg2 symbol) (arg3 string)) (logclear! (-> self skel status) (janim-status spool)) (let ((s5-0 (handle->process arg0))) @@ -127,8 +127,8 @@ ) ;; definition for method 11 of type swingpole +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! swingpole ((obj swingpole) (arg0 entity-actor)) "Copy defaults from the entity." (stack-size-set! (-> obj main-thread) 128) @@ -542,8 +542,8 @@ ) ;; definition for function manipy-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior manipy-init manipy ((arg0 vector) (arg1 entity-actor) (arg2 skeleton-group) (arg3 vector)) (stack-size-set! (-> self main-thread) 128) (logior! (-> self mask) (process-mask heap-shrunk)) @@ -679,8 +679,8 @@ ) ;; definition for function part-tracker-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior part-tracker-init part-tracker ((arg0 sparticle-launch-group) (arg1 time-frame) (arg2 (function part-tracker none)) @@ -1348,8 +1348,8 @@ (define *lev-string* (new 'global 'string 64 (the-as string #f))) ;; definition for method 11 of type med-res-level +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! med-res-level ((obj med-res-level) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (stack-size-set! (-> obj main-thread) 128) @@ -1457,8 +1457,8 @@ ) ;; definition for method 11 of type part-spawner +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! part-spawner ((obj part-spawner) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (stack-size-set! (-> obj main-thread) 128) @@ -1807,7 +1807,7 @@ ) ;; definition for function cam-launcher-joystick -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-launcher-joystick camera-slave () (when *camera-read-analog* (let ((s5-0 (new-stack-matrix0)) @@ -1883,7 +1883,7 @@ ) ;; definition for function cam-launcher-long-joystick -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior cam-launcher-long-joystick camera-slave () (when *camera-read-analog* (let ((gp-0 (new-stack-matrix0))) @@ -2168,8 +2168,8 @@ ) ;; definition for function launcher-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior launcher-init-by-other launcher ((arg0 vector) (arg1 float) (arg2 int) (arg3 float)) (stack-size-set! (-> self main-thread) 128) (let ((s2-0 (new 'process 'collide-shape self (collide-list-enum hit-by-player)))) @@ -2370,8 +2370,8 @@ ) ;; definition for function touch-tracker-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior touch-tracker-init touch-tracker ((arg0 vector) (arg1 float) (arg2 time-frame)) (let ((s4-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) @@ -2434,7 +2434,7 @@ ) ;; definition for function process-drawable-pair-random-point! -;; Used lq/sq +;; INFO: Used lq/sq (defun process-drawable-pair-random-point! ((arg0 process-drawable) (arg1 process-drawable) (arg2 vector) (arg3 float)) (let ((s4-0 (new-stack-vector0)) (s3-0 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/engine/game/main_REF.gc b/test/decompiler/reference/jak1/engine/game/main_REF.gc index 8508036b19..cef7adaaa0 100644 --- a/test/decompiler/reference/jak1/engine/game/main_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/main_REF.gc @@ -934,36 +934,36 @@ ) ;; definition for function display-loop -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defbehavior display-loop process () (local-vars (a0-54 int) (a0-56 int) (a0-73 int) (a0-75 int)) (stack-size-set! (-> self main-thread) 512) diff --git a/test/decompiler/reference/jak1/engine/game/powerups_REF.gc b/test/decompiler/reference/jak1/engine/game/powerups_REF.gc index 2e61adb28e..1ac340569c 100644 --- a/test/decompiler/reference/jak1/engine/game/powerups_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/powerups_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function cloud-track +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defbehavior cloud-track process ((arg0 process-tree) (arg1 process-tree) (arg2 (function vector none)) diff --git a/test/decompiler/reference/jak1/engine/game/projectiles_REF.gc b/test/decompiler/reference/jak1/engine/game/projectiles_REF.gc index bd62e03e13..4d8b355b79 100644 --- a/test/decompiler/reference/jak1/engine/game/projectiles_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/projectiles_REF.gc @@ -41,7 +41,7 @@ (define *search-info* (new 'global 'search-info)) ;; definition for function find-nearest-attackable -;; Used lq/sq +;; INFO: Used lq/sq (defun find-nearest-attackable ((arg0 vector) (arg1 float) (arg2 uint) (arg3 uint) (arg4 vector) (arg5 float)) (let ((gp-0 *search-info*)) (set! (-> gp-0 match) #f) @@ -117,8 +117,8 @@ ) ;; definition for function projectile-collision-reaction +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs cshape-moving-flags. -;; Used lq/sq (defun projectile-collision-reaction ((arg0 collide-shape-moving) (arg1 collide-shape-intersect) (arg2 vector) (arg3 vector)) (local-vars (sv-64 vector) (sv-68 vector) (sv-72 matrix) (sv-80 int) (sv-224 symbol)) (set! sv-64 (new-stack-vector0)) @@ -751,8 +751,8 @@ ) ;; definition for function projectile-update-velocity-space-wars +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun projectile-update-velocity-space-wars ((arg0 projectile)) (let ((s5-1 (vector-! (new 'stack-no-clear 'vector) (-> arg0 target) (-> arg0 root-override trans)))) (let ((s4-0 (new 'stack-no-clear 'vector)) @@ -905,7 +905,7 @@ ) ;; definition for function projectile-init-by-other -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior projectile-init-by-other projectile ((arg0 entity-actor) (arg1 vector) (arg2 vector) (arg3 uint) (arg4 handle)) (stack-size-set! (-> self main-thread) 512) (set! (-> self entity) arg0) @@ -953,8 +953,8 @@ ) ;; definition for method 27 of type projectile-yellow +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-27 projectile-yellow ((obj projectile-yellow)) (cpad-set-buzz! (-> *cpad-list* cpads 0) 1 204 (seconds 0.1)) (set! (-> obj attack-mode) 'eco-yellow) @@ -1089,8 +1089,8 @@ ) ;; definition for method 28 of type projectile-yellow +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-28 projectile-yellow ((obj projectile-yellow)) (cond ((or (not (handle->process (-> obj last-target))) @@ -1171,8 +1171,8 @@ ) ;; definition for method 27 of type projectile-blue +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-27 projectile-blue ((obj projectile-blue)) (cpad-set-buzz! (-> *cpad-list* cpads 0) 1 204 (seconds 0.1)) (sound-play "blue-eco-on") @@ -1227,8 +1227,8 @@ ) ;; definition for function spawn-projectile-blue +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun spawn-projectile-blue ((arg0 target)) (local-vars (sv-48 entity-actor)) (with-pp diff --git a/test/decompiler/reference/jak1/engine/game/voicebox_REF.gc b/test/decompiler/reference/jak1/engine/game/voicebox_REF.gc index 88bcc07796..16c0298056 100644 --- a/test/decompiler/reference/jak1/engine/game/voicebox_REF.gc +++ b/test/decompiler/reference/jak1/engine/game/voicebox_REF.gc @@ -68,8 +68,8 @@ ) ;; definition for function voicebox-track +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior voicebox-track voicebox () (let ((gp-0 (new 'stack-no-clear 'vector)) (s5-0 (new 'stack-no-clear 'vector)) @@ -222,8 +222,8 @@ ) ;; definition for function voicebox-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior voicebox-init-by-other voicebox ((arg0 vector) (arg1 handle)) (set! (-> self root) (new 'process 'trsqv)) (set! (-> self hint) arg1) diff --git a/test/decompiler/reference/jak1/engine/geometry/cylinder_REF.gc b/test/decompiler/reference/jak1/engine/geometry/cylinder_REF.gc index 6693914951..a5b9942dbf 100644 --- a/test/decompiler/reference/jak1/engine/geometry/cylinder_REF.gc +++ b/test/decompiler/reference/jak1/engine/geometry/cylinder_REF.gc @@ -52,8 +52,8 @@ ) ;; definition for method 9 of type cylinder +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw cylinder ((obj cylinder) (arg0 vector4w)) (local-vars (sv-896 matrix) @@ -184,7 +184,7 @@ ) ;; definition for method 10 of type cylinder-flat -;; Used lq/sq +;; INFO: Used lq/sq (defmethod ray-flat-cyl-intersect cylinder-flat ((obj cylinder-flat) (probe-origin vector) (probe-dir vector)) (let ((gp-0 (new 'stack-no-clear 'vector)) (end-pt (new 'stack-no-clear 'vector)) @@ -240,8 +240,8 @@ ) ;; definition for method 9 of type cylinder-flat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw cylinder-flat ((obj cylinder-flat) (arg0 vector4w)) (local-vars (sv-448 vector) (sv-464 int)) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/engine/geometry/geometry_REF.gc b/test/decompiler/reference/jak1/engine/geometry/geometry_REF.gc index 2df792f94d..70ddb230a6 100644 --- a/test/decompiler/reference/jak1/engine/geometry/geometry_REF.gc +++ b/test/decompiler/reference/jak1/engine/geometry/geometry_REF.gc @@ -185,7 +185,7 @@ ) ;; definition for function vector-line-distance -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-line-distance ((arg0 vector) (arg1 vector) (arg2 vector)) (let* ((a1-3 (vector-normalize! (vector-! (new-stack-vector0) arg2 arg1) 1.0)) (gp-1 (vector-! (new-stack-vector0) arg0 arg1)) @@ -197,7 +197,7 @@ ) ;; definition for function vector-line-distance-point! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-line-distance-point! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector)) (let* ((a1-3 (vector-normalize! (vector-! (new-stack-vector0) arg2 arg1) 1.0)) (s4-1 (vector-! (new-stack-vector0) arg0 arg1)) @@ -257,7 +257,7 @@ ) ;; definition for function forward-down->inv-matrix -;; Used lq/sq +;; INFO: Used lq/sq (defun forward-down->inv-matrix ((arg0 matrix) (arg1 vector) (arg2 vector)) (vector-normalize-copy! (-> arg0 vector 2) arg1 1.0) (vector-cross! (the-as vector (-> arg0 vector)) (-> arg0 vector 2) arg2) @@ -273,7 +273,7 @@ ) ;; definition for function forward-down-nopitch->inv-matrix -;; Used lq/sq +;; INFO: Used lq/sq (defun forward-down-nopitch->inv-matrix ((arg0 matrix) (arg1 vector) (arg2 vector)) (vector-normalize-copy! (-> arg0 vector 1) arg2 1.0) (vector-negate! (-> arg0 vector 1) (-> arg0 vector 1)) @@ -290,19 +290,19 @@ ) ;; definition for function forward-up-nopitch->inv-matrix -;; Used lq/sq +;; INFO: Used lq/sq (defun forward-up-nopitch->inv-matrix ((arg0 matrix) (arg1 vector) (arg2 vector)) (forward-down-nopitch->inv-matrix arg0 arg1 (vector-negate! (new-stack-vector0) arg2)) ) ;; definition for function forward-up-nopitch->quaternion -;; Used lq/sq +;; INFO: Used lq/sq (defun forward-up-nopitch->quaternion ((arg0 quaternion) (arg1 vector) (arg2 vector)) (matrix->quaternion arg0 (forward-up-nopitch->inv-matrix (new-stack-matrix0) arg1 arg2)) ) ;; definition for function forward-up->quaternion -;; Used lq/sq +;; INFO: Used lq/sq (defun forward-up->quaternion ((arg0 quaternion) (arg1 vector) (arg2 vector)) (matrix->quaternion arg0 @@ -311,7 +311,7 @@ ) ;; definition for function quaternion-from-two-vectors! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-from-two-vectors! ((arg0 quaternion) (arg1 vector) (arg2 vector)) (let* ((s5-0 (vector-cross! (new-stack-vector0) arg1 arg2)) (f0-0 (vector-length s5-0)) @@ -328,7 +328,7 @@ ) ;; definition for function quaternion-from-two-vectors-max-angle! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-from-two-vectors-max-angle! ((arg0 quaternion) (arg1 vector) (arg2 vector) (arg3 float)) (let* ((s5-0 (vector-cross! (new-stack-vector0) arg1 arg2)) (f30-0 (vector-length s5-0)) @@ -356,7 +356,7 @@ ) ;; definition for function matrix-from-two-vectors! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-from-two-vectors! ((arg0 matrix) (arg1 vector) (arg2 vector)) (let* ((a1-3 (vector-normalize! (vector-cross! (new-stack-vector0) arg2 arg1) 1.0)) (f0-1 (vector-dot arg1 arg2)) @@ -369,7 +369,7 @@ ) ;; definition for function matrix-from-two-vectors-max-angle! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-from-two-vectors-max-angle! ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 float)) (let ((s4-1 (vector-normalize! (vector-cross! (new-stack-vector0) arg2 arg1) 1.0)) (f30-0 (vector-dot arg1 arg2)) @@ -394,7 +394,7 @@ ) ;; definition for function matrix-from-two-vectors-max-angle-partial! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-from-two-vectors-max-angle-partial! ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 float) (arg4 float)) (let* ((s4-1 (vector-normalize! (vector-cross! (new-stack-vector0) arg2 arg1) 1.0)) (f28-0 (vector-dot arg1 arg2)) @@ -420,7 +420,7 @@ ) ;; definition for function matrix-from-two-vectors-partial-linear! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-from-two-vectors-partial-linear! ((arg0 matrix) (arg1 vector) (arg2 vector) (arg3 float)) (let ((gp-1 (vector-normalize! (vector-cross! (new-stack-vector0) arg2 arg1) 1.0)) (f0-1 (vector-dot arg1 arg2)) @@ -444,7 +444,7 @@ ) ;; definition for function matrix-remove-z-rot -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-remove-z-rot ((arg0 matrix) (arg1 matrix)) (let ((s4-0 (new-stack-vector0))) 0.0 @@ -471,7 +471,7 @@ ) ;; definition for function matrix-rot-diff! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rot-diff! ((arg0 vector) (arg1 matrix) (arg2 matrix)) (let ((s3-0 (new-stack-quaternion0)) (s2-0 (new-stack-quaternion0)) @@ -498,7 +498,7 @@ ) ;; definition for function quaternion-seek -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-seek ((arg0 quaternion) (arg1 quaternion) (arg2 quaternion) (arg3 float) (arg4 float)) (let ((s5-0 (new-stack-matrix0)) (s4-0 (new-stack-matrix0)) @@ -513,7 +513,7 @@ ) ;; definition for function vector-deg-seek -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-deg-seek ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 float)) (let ((s4-0 (new-stack-matrix0))) (matrix-from-two-vectors-max-angle! s4-0 arg1 arg2 arg3) @@ -522,7 +522,7 @@ ) ;; definition for function vector-deg-slerp -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-deg-slerp ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 float)) (cond ((>= 0.0 arg3) @@ -547,7 +547,7 @@ ) ;; definition for function vector-vector-deg-slerp! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-vector-deg-slerp! ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 float) (arg4 vector)) (local-vars (sv-112 (function float float float float))) (cond @@ -636,8 +636,8 @@ ) ;; definition for function closest-pt-in-triangle +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun closest-pt-in-triangle ((arg0 vector) (arg1 vector) (arg2 matrix) (arg3 vector)) (local-vars (v1-0 float) (v1-4 int) (v1-5 int) (v1-6 int) (v1-7 int) (v1-10 int) (a0-1 float) (a1-1 float)) (rlet ((acc :class vf) @@ -844,8 +844,8 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for function circle-test +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defun circle-test () (let ((s4-0 (new 'stack 'sphere)) (a1-2 (new 'stack 'sphere)) @@ -864,8 +864,8 @@ ) ;; definition for function vector-circle-tangent-new +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun vector-circle-tangent-new ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector)) (rlet ((Q :class vf) (vf0 :class vf) @@ -983,8 +983,8 @@ ) ;; definition for function calculate-basis-functions-vector! -;; WARN: Unsupported inline assembly instruction kind - [sll v1, a1, 2] -;; WARN: Unsupported inline assembly instruction kind - [addu v1, a3, v1] +;; ERROR: Unsupported inline assembly instruction kind - [sll v1, a1, 2] +;; ERROR: Unsupported inline assembly instruction kind - [addu v1, a3, v1] (defun calculate-basis-functions-vector! ((arg0 vector) (arg1 int) (arg2 float) (arg3 (pointer float))) (local-vars (v1-0 int) (v1-1 object)) (.sll v1-0 arg1 2) @@ -1043,8 +1043,8 @@ ) ;; definition for function curve-evaluate! -;; WARN: Unsupported inline assembly instruction kind - [addiu v1, s3, -3] -;; WARN: Unsupported inline assembly instruction kind - [sll v1, v1, 4] +;; ERROR: Unsupported inline assembly instruction kind - [addiu v1, s3, -3] +;; ERROR: Unsupported inline assembly instruction kind - [sll v1, v1, 4] (defun curve-evaluate! ((arg0 vector) (arg1 float) (arg2 (inline-array vector)) (arg3 int) (arg4 (pointer float)) (arg5 int)) (local-vars (v1-7 int) (v1-8 int) (v1-10 float) (s3-0 int)) (rlet ((acc :class vf) @@ -1151,7 +1151,7 @@ ) ;; definition for function curve-length -;; Used lq/sq +;; INFO: Used lq/sq (defun curve-length ((arg0 curve)) (let ((s5-0 (new-stack-vector0)) (s4-0 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/engine/geometry/vol-h_REF.gc b/test/decompiler/reference/jak1/engine/geometry/vol-h_REF.gc index 7b3b22079a..d055534a70 100644 --- a/test/decompiler/reference/jak1/engine/geometry/vol-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/geometry/vol-h_REF.gc @@ -72,8 +72,8 @@ ) ;; definition for method 0 of type vol-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs vol-control. -;; Used lq/sq (defmethod new vol-control ((allocation symbol) (type-to-make type) (arg0 process-drawable)) (let ((gp-0 (the-as object (object-new allocation type-to-make (the-as int (-> type-to-make size)))))) (when (zero? (the-as vol-control gp-0)) diff --git a/test/decompiler/reference/jak1/engine/geometry/vol_REF.gc b/test/decompiler/reference/jak1/engine/geometry/vol_REF.gc index b51228f5e8..447dac1fe9 100644 --- a/test/decompiler/reference/jak1/engine/geometry/vol_REF.gc +++ b/test/decompiler/reference/jak1/engine/geometry/vol_REF.gc @@ -14,6 +14,7 @@ ) ;; definition for method 9 of type plane-volume +;; INFO: Used lq/sq ;; WARN: Stack slot offset 148 signed mismatch ;; WARN: Stack slot offset 148 signed mismatch ;; WARN: Stack slot offset 148 signed mismatch @@ -25,7 +26,6 @@ ;; WARN: Stack slot offset 148 signed mismatch ;; WARN: Stack slot offset 148 signed mismatch ;; WARN: Stack slot offset 148 signed mismatch -;; Used lq/sq (defmethod dummy-9 plane-volume ((obj plane-volume) (arg0 symbol) (arg1 vector-array) (arg2 vector-array)) (local-vars (sv-144 vector) diff --git a/test/decompiler/reference/jak1/engine/gfx/background_REF.gc b/test/decompiler/reference/jak1/engine/gfx/background_REF.gc index 96b6e291d2..f7fdbca8cd 100644 --- a/test/decompiler/reference/jak1/engine/gfx/background_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/background_REF.gc @@ -35,8 +35,8 @@ ) ;; definition for function upload-vis-bits +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun upload-vis-bits ((arg0 level) (arg1 level) (arg2 bsp-header)) (let ((qwc (/ (+ (-> arg2 visible-list-length) 15) 16))) (let ((lev-vis-bits (the-as (pointer uint128) (-> arg0 vis-bits))) diff --git a/test/decompiler/reference/jak1/engine/gfx/capture_REF.gc b/test/decompiler/reference/jak1/engine/gfx/capture_REF.gc index f61672e019..c895465d78 100644 --- a/test/decompiler/reference/jak1/engine/gfx/capture_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/capture_REF.gc @@ -25,7 +25,7 @@ ) ;; definition for method 3 of type gs-store-image-packet -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect gs-store-image-packet ((obj gs-store-image-packet)) (format #t "[~8x] ~A~%" obj 'gs-store-image-packet) (format #t "~Tvifcode[4] @ #x~X~%" (-> obj vifcode)) @@ -44,8 +44,8 @@ ) ;; definition for function gs-set-default-store-image -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun gs-set-default-store-image ((packet gs-store-image-packet) (src-fbp int) (src-w int) @@ -80,7 +80,7 @@ ) ;; definition for function store-image -;; Used lq/sq +;; INFO: Used lq/sq (defun store-image ((oddeven int)) (local-vars (ptr-1 (pointer uint8)) (y-idx int) (y-idx-2 int)) (let ((width 512) diff --git a/test/decompiler/reference/jak1/engine/gfx/depth-cue_REF.gc b/test/decompiler/reference/jak1/engine/gfx/depth-cue_REF.gc index 3cb028d030..c789060541 100644 --- a/test/decompiler/reference/jak1/engine/gfx/depth-cue_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/depth-cue_REF.gc @@ -33,7 +33,7 @@ ) ;; definition for function depth-cue-set-stencil -;; Used lq/sq +;; INFO: Used lq/sq (defun depth-cue-set-stencil ((arg0 dma-buffer) (arg1 int) (arg2 int) (arg3 int) (arg4 dma-gif-packet)) (let* ((v1-0 arg0) (t1-0 (the-as object (-> v1-0 base))) @@ -111,7 +111,7 @@ ) ;; definition for function depth-cue-draw-depth -;; Used lq/sq +;; INFO: Used lq/sq (defun depth-cue-draw-depth ((arg0 dma-buffer) (arg1 int) (arg2 float) (arg3 float) (arg4 int) (arg5 int)) (set! (-> *depth-cue-work* draw-color w) (the int (* 128.0 arg3))) (let ((v1-1 (the int (* 512.0 arg2))) @@ -255,7 +255,7 @@ ) ;; definition for function depth-cue-draw-front -;; Used lq/sq +;; INFO: Used lq/sq (defun depth-cue-draw-front ((arg0 dma-buffer) (arg1 int) (arg2 float) (arg3 float) (arg4 uint) (arg5 int)) (set! (-> *depth-cue-work* draw-color w) (the int (* 128.0 arg3))) (let ((v1-1 (the int (* 512.0 arg2))) diff --git a/test/decompiler/reference/jak1/engine/gfx/eye_REF.gc b/test/decompiler/reference/jak1/engine/gfx/eye_REF.gc index e49fee348a..cdf70dc65d 100644 --- a/test/decompiler/reference/jak1/engine/gfx/eye_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/eye_REF.gc @@ -29,12 +29,12 @@ ) ;; definition for function render-eyes +;; INFO: Used lq/sq ;; WARN: Stack slot offset 16 signed mismatch ;; WARN: Stack slot offset 16 signed mismatch ;; WARN: Stack slot offset 16 signed mismatch ;; WARN: Stack slot offset 16 signed mismatch ;; INFO: Return type mismatch vector4w vs pointer. -;; Used lq/sq (defun render-eyes ((arg0 dma-buffer) (arg1 eye-control) (arg2 int)) (local-vars (sv-16 float)) (let ((s4-0 32) diff --git a/test/decompiler/reference/jak1/engine/gfx/generic/generic-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/generic/generic-h_REF.gc index b3ce6e59fc..71e7adb611 100644 --- a/test/decompiler/reference/jak1/engine/gfx/generic/generic-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/generic/generic-h_REF.gc @@ -367,7 +367,7 @@ ) ;; definition for method 3 of type ad-cmd -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect ad-cmd ((obj ad-cmd)) (format #t "[~8x] ~A~%" obj 'ad-cmd) (format #t "~Tword[4] @ #x~X~%" (&-> obj data)) diff --git a/test/decompiler/reference/jak1/engine/gfx/generic/generic-merc_REF.gc b/test/decompiler/reference/jak1/engine/gfx/generic/generic-merc_REF.gc index 0b862b4477..04ded3ef5b 100644 --- a/test/decompiler/reference/jak1/engine/gfx/generic/generic-merc_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/generic/generic-merc_REF.gc @@ -70,26 +70,26 @@ ;; definition for function generic-merc-execute-all ;; INFO: Return type mismatch profile-frame vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin v1, 0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [cache dxwbin v1, 1] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin v1, 0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [cache dxwbin v1, 1] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun generic-merc-execute-all ((arg0 dma-buffer)) (local-vars (a0-26 int) (a0-28 int)) (when (nonzero? (-> *merc-global-array* count)) diff --git a/test/decompiler/reference/jak1/engine/gfx/generic/generic-vu1_REF.gc b/test/decompiler/reference/jak1/engine/gfx/generic/generic-vu1_REF.gc index 9b94f4361e..13af3dcaf6 100644 --- a/test/decompiler/reference/jak1/engine/gfx/generic/generic-vu1_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/generic/generic-vu1_REF.gc @@ -5,8 +5,8 @@ (define generic-vu1-block (new 'static 'vu-function :length #x446 :qlength #x223)) ;; definition for function generic-setup-constants +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun generic-setup-constants ((arg0 generic-constants) (arg1 int)) (let ((a2-0 *math-camera*)) (set-vector! (-> arg0 fog) (-> a2-0 pfog0) (-> a2-0 fog-min) (-> a2-0 fog-max) 3071.0) diff --git a/test/decompiler/reference/jak1/engine/gfx/hw/display-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/hw/display-h_REF.gc index d64741fd9c..894e0f5cc0 100644 --- a/test/decompiler/reference/jak1/engine/gfx/hw/display-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/hw/display-h_REF.gc @@ -73,7 +73,7 @@ ) ;; definition for function put-draw-env -;; Used lq/sq +;; INFO: Used lq/sq (defun put-draw-env ((arg0 (pointer gif-tag))) (dma-send (the-as dma-bank #x1000a000) (the-as uint arg0) (+ (-> arg0 0 nloop) 1)) (none) @@ -198,7 +198,7 @@ ) ;; definition for method 3 of type display -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect display ((obj display)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tdisplay-env0: #~%" (-> obj display-env0)) diff --git a/test/decompiler/reference/jak1/engine/gfx/hw/display_REF.gc b/test/decompiler/reference/jak1/engine/gfx/hw/display_REF.gc index 2d46b9f275..79a02c13e3 100644 --- a/test/decompiler/reference/jak1/engine/gfx/hw/display_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/hw/display_REF.gc @@ -109,7 +109,7 @@ ) ;; definition for function set-display -;; Used lq/sq +;; INFO: Used lq/sq (defun set-display ((disp display) (psm int) (w int) (h int) (ztest int) (zpsm int)) (let ((v1-0 (-> disp gif-tag0))) (set! (-> v1-0 tag) (new 'static 'gif-tag64 :nloop #x8 :eop #x1 :nreg #x1)) diff --git a/test/decompiler/reference/jak1/engine/gfx/hw/gs_REF.gc b/test/decompiler/reference/jak1/engine/gfx/hw/gs_REF.gc index faf0fd8af1..c0b8a86a8d 100644 --- a/test/decompiler/reference/jak1/engine/gfx/hw/gs_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/hw/gs_REF.gc @@ -884,7 +884,7 @@ ) ;; definition for method 3 of type gif-packet -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect gif-packet ((obj gif-packet)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Treg-count: ~D~%" (-> obj reg-count)) diff --git a/test/decompiler/reference/jak1/engine/gfx/merc/generic-merc-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/merc/generic-merc-h_REF.gc index a1a7b9cf62..90527b0291 100644 --- a/test/decompiler/reference/jak1/engine/gfx/merc/generic-merc-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/merc/generic-merc-h_REF.gc @@ -32,7 +32,7 @@ ) ;; definition for method 3 of type generic-merc-tag -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect generic-merc-tag ((obj generic-merc-tag)) (format #t "[~8x] ~A~%" obj 'generic-merc-tag) (format #t "~Tdma: #x~X~%" (-> obj dma)) diff --git a/test/decompiler/reference/jak1/engine/gfx/merc/merc_REF.gc b/test/decompiler/reference/jak1/engine/gfx/merc/merc_REF.gc index 0585ac09c9..37a7a7b837 100644 --- a/test/decompiler/reference/jak1/engine/gfx/merc/merc_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/merc/merc_REF.gc @@ -385,7 +385,7 @@ ) ;; definition for function merc-vu1-initialize-chain -;; Used lq/sq +;; INFO: Used lq/sq (defun merc-vu1-initialize-chain ((arg0 dma-gif-packet)) (let ((gp-0 (the-as object (merc-vu1-add-vu-function (the-as dma-packet arg0) merc-vu1-block 1)))) (set! (-> (the-as dma-gif-packet gp-0) dma-vif dma) (new 'static 'dma-tag :qwc #xa :id (dma-tag-id cnt))) diff --git a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-mid_REF.gc b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-mid_REF.gc index 5562ba7f8a..a243b0ac0f 100644 --- a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-mid_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-mid_REF.gc @@ -5,8 +5,8 @@ (define ocean-mid-block (new 'static 'vu-function :length #x497 :qlength #x24c)) ;; definition for function ocean-mid-setup-constants +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun ocean-mid-setup-constants ((arg0 ocean-mid-constants)) (let ((v1-0 *math-camera*)) (set! (-> arg0 hmge-scale quad) (-> v1-0 hmge-scale quad)) @@ -357,8 +357,8 @@ ) ;; definition for function ocean-mid-add-matrices +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; Used lq/sq (defun ocean-mid-add-matrices ((arg0 dma-buffer) (arg1 vector)) (let ((s5-0 (new-stack-vector0))) (-> *math-camera* camera-rot) @@ -402,7 +402,7 @@ ) ;; definition for function ocean-mid-check -;; Used lq/sq +;; INFO: Used lq/sq (defun ocean-mid-check ((arg0 pointer) (arg1 int) (arg2 int) (arg3 vector)) (local-vars (v0-0 symbol) (v1-10 float) (a3-2 float) (a3-6 float) (a3-10 float)) (rlet ((vf1 :class vf) @@ -509,7 +509,7 @@ ) ;; definition for function ocean-mid-add-upload -;; Used lq/sq +;; INFO: Used lq/sq (defun ocean-mid-add-upload ((arg0 dma-buffer) (arg1 int) (arg2 int) (arg3 int) (arg4 int) (arg5 float)) (let ((gp-0 (new-stack-vector0))) (let ((v1-1 (-> *ocean-map* start-corner))) @@ -660,8 +660,8 @@ ) ;; definition for function ocean-mid-add-upload-table -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun ocean-mid-add-upload-table ((arg0 dma-buffer) (arg1 uint) (arg2 uint) (arg3 (pointer float)) (arg4 int) (arg5 symbol)) (local-vars (r0-0 int) @@ -1031,8 +1031,8 @@ ) ;; definition for function draw-ocean-mid +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun draw-ocean-mid ((arg0 dma-buffer)) (rlet ((vf16 :class vf) (vf17 :class vf) diff --git a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-near_REF.gc b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-near_REF.gc index 5d5ce5a876..18c81effcd 100644 --- a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-near_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-near_REF.gc @@ -33,8 +33,8 @@ ) ;; definition for function ocean-near-setup-constants +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector4w vs none. -;; Used lq/sq (defun ocean-near-setup-constants ((arg0 ocean-near-constants)) (let ((v1-0 *math-camera*)) (set! (-> arg0 hmge-scale quad) (-> v1-0 hmge-scale quad)) @@ -388,8 +388,8 @@ ) ;; definition for function ocean-near-add-matrices +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; Used lq/sq (defun ocean-near-add-matrices ((arg0 dma-buffer) (arg1 vector)) (let ((s5-0 (new-stack-vector0))) (-> *math-camera* camera-rot) @@ -433,9 +433,9 @@ ) ;; definition for function ocean-near-add-upload +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun ocean-near-add-upload ((arg0 dma-buffer) (arg1 uint) (arg2 uint)) (local-vars (r0-0 int) diff --git a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-texture_REF.gc b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-texture_REF.gc index 3e7adfc0ea..a289cc6611 100644 --- a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-texture_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-texture_REF.gc @@ -79,7 +79,7 @@ ) ;; definition for function ocean-texture-add-envmap -;; Used lq/sq +;; INFO: Used lq/sq (defun ocean-texture-add-envmap ((arg0 dma-buffer)) (let ((v1-0 (-> arg0 base))) (set! (-> (the-as (pointer uint128) v1-0) 0) (-> *ocean-texture-work* adgif-tmpl dma-vif quad)) @@ -190,8 +190,8 @@ ) ;; definition for function draw-ocean-texture +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun draw-ocean-texture ((arg0 dma-buffer) (arg1 (inline-array vector)) (arg2 symbol)) (local-vars (sv-16 (inline-array vector)) (sv-32 int) (sv-48 vector) (sv-64 (inline-array vector))) (set! sv-64 arg1) diff --git a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-transition_REF.gc b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-transition_REF.gc index b97c050672..93f2e69f9f 100644 --- a/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-transition_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/ocean/ocean-transition_REF.gc @@ -99,8 +99,8 @@ ) ;; definition for function ocean-trans-add-upload-table -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun ocean-trans-add-upload-table ((arg0 dma-buffer) (arg1 int) (arg2 int) (arg3 (pointer float)) (arg4 int) (arg5 symbol)) (local-vars (r0-0 int) @@ -301,8 +301,8 @@ ) ;; definition for function ocean-trans-add-upload-strip -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun ocean-trans-add-upload-strip ((arg0 dma-buffer) (arg1 uint) (arg2 uint) (arg3 uint) (arg4 uint) (arg5 uint)) (local-vars (r0-0 int) @@ -425,7 +425,7 @@ ) ;; definition for function ocean-transition-check -;; Used lq/sq +;; INFO: Used lq/sq (defun ocean-transition-check ((arg0 ocean-trans-mask) (arg1 int) (arg2 int) (arg3 vector)) (local-vars (v0-0 symbol) (v1-10 float) (a3-2 float) (a3-6 float) (a3-10 float)) (rlet ((vf1 :class vf) @@ -504,7 +504,7 @@ ) ;; definition for function ocean-make-trans-camera-masks -;; Used lq/sq +;; INFO: Used lq/sq (defun ocean-make-trans-camera-masks ((arg0 uint) (arg1 uint) (arg2 uint) (arg3 uint)) (local-vars (sv-48 ocean-trans-mask) (sv-52 vector) (sv-56 vector) (sv-60 vector)) (set! sv-48 (-> *ocean-work* trans-camera-masks (+ (* arg2 4) arg3))) diff --git a/test/decompiler/reference/jak1/engine/gfx/ripple_REF.gc b/test/decompiler/reference/jak1/engine/gfx/ripple_REF.gc index 66da0a07ca..6a6d50fa22 100644 --- a/test/decompiler/reference/jak1/engine/gfx/ripple_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/ripple_REF.gc @@ -129,8 +129,8 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition (debug) for function ripple-add-debug-sphere +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun-debug ripple-add-debug-sphere ((arg0 process-drawable) (arg1 vector) (arg2 float) (arg3 float)) (let ((f30-0 (- (quaternion-y-angle (-> arg0 root quat)))) (s5-0 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/engine/gfx/shadow/shadow-vu1_REF.gc b/test/decompiler/reference/jak1/engine/gfx/shadow/shadow-vu1_REF.gc index 8a1d16eca2..01641dfdbf 100644 --- a/test/decompiler/reference/jak1/engine/gfx/shadow/shadow-vu1_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/shadow/shadow-vu1_REF.gc @@ -116,8 +116,8 @@ (define shadow-vu1-block (new 'static 'vu-function :length #x2e4 :qlength #x172)) ;; definition for function shadow-vu1-add-constants +;; INFO: Used lq/sq ;; INFO: Return type mismatch dma-buffer vs none. -;; Used lq/sq (defun shadow-vu1-add-constants ((arg0 dma-buffer)) (let* ((a2-0 13) (v1-0 arg0) @@ -189,8 +189,8 @@ ) ;; definition for function shadow-vu1-add-matrix +;; INFO: Used lq/sq ;; INFO: Return type mismatch dma-buffer vs none. -;; Used lq/sq (defun shadow-vu1-add-matrix ((arg0 dma-buffer) (arg1 math-camera)) (let ((v1-0 4)) (let* ((a2-4 arg0) diff --git a/test/decompiler/reference/jak1/engine/gfx/shadow/shadow_REF.gc b/test/decompiler/reference/jak1/engine/gfx/shadow/shadow_REF.gc index 79a9b79a12..bdf6d37792 100644 --- a/test/decompiler/reference/jak1/engine/gfx/shadow/shadow_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/shadow/shadow_REF.gc @@ -49,8 +49,8 @@ ) ;; definition for function compute-and-draw-shadow +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun compute-and-draw-shadow ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float) (arg5 float)) (local-vars (v1-10 float) @@ -113,8 +113,8 @@ ) ;; definition for function find-ground-and-draw-shadow +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun find-ground-and-draw-shadow ((arg0 vector) (arg1 vector) (arg2 float) @@ -160,8 +160,8 @@ ) ;; definition for function do-target-shadow +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior do-target-shadow target () (if (and (logtest? (-> self control status) (cshape-moving-flags onsurf)) (!= (-> self control unknown-surface00 mode) 'swim) diff --git a/test/decompiler/reference/jak1/engine/gfx/shrub/shrub-work_REF.gc b/test/decompiler/reference/jak1/engine/gfx/shrub/shrub-work_REF.gc index b680a4f300..a0440fb02e 100644 --- a/test/decompiler/reference/jak1/engine/gfx/shrub/shrub-work_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/shrub/shrub-work_REF.gc @@ -298,7 +298,7 @@ (set! (-> *instance-shrub-work* mscalf-ret-tmpl vif0 imm) 103) ;; definition for function upload-generic-shrub -;; Used lq/sq +;; INFO: Used lq/sq (defun upload-generic-shrub ((arg0 dma-buffer) (arg1 generic-shrub-fragment) (arg2 int) (arg3 int)) (let* ((v1-0 arg0) (t0-0 (the-as object (-> v1-0 base))) diff --git a/test/decompiler/reference/jak1/engine/gfx/shrub/shrubbery-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/shrub/shrubbery-h_REF.gc index 2bf1e22587..6fdb25bb63 100644 --- a/test/decompiler/reference/jak1/engine/gfx/shrub/shrubbery-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/shrub/shrubbery-h_REF.gc @@ -220,8 +220,8 @@ ) ;; definition for function shrubbery-login-post-texture +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun shrubbery-login-post-texture ((obj shrubbery)) (let* ((shader-count (-> obj header data 0)) (dst (the-as qword (+ (the-as uint (-> obj header)) (* (+ (-> obj header data 1) 1) 16)))) diff --git a/test/decompiler/reference/jak1/engine/gfx/sky/sky-tng_REF.gc b/test/decompiler/reference/jak1/engine/gfx/sky/sky-tng_REF.gc index 1b81498e64..992c390dda 100644 --- a/test/decompiler/reference/jak1/engine/gfx/sky/sky-tng_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/sky/sky-tng_REF.gc @@ -147,10 +147,10 @@ ;; ERROR: function has no type analysis. Cannot decompile. ;; definition for function close-sky-buffer +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; WARN: Function may read a register that is not set: ra -;; WARN: Unsupported inline assembly instruction kind - [jr ra] -;; Used lq/sq +;; ERROR: Function may read a register that is not set: ra +;; ERROR: Unsupported inline assembly instruction kind - [jr ra] (defun close-sky-buffer ((arg0 dma-buffer)) (local-vars (ra-0 none)) (nop!) @@ -417,8 +417,8 @@ ) ;; definition for function sky-tng-setup-cloud-layer +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun sky-tng-setup-cloud-layer ((arg0 float) (arg1 float) (arg2 vector) (arg3 (inline-array sky-vertex))) (let ((f28-0 (sqrtf (- 1.0 (* arg0 arg0)))) (f26-0 (sqrtf (- 1.0 (* arg1 arg1)))) @@ -824,8 +824,8 @@ ) ;; definition for function copy-sky-texture +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; Used lq/sq (defun copy-sky-texture ((arg0 dma-buffer) (arg1 adgif-shader) (arg2 float)) (let ((s5-0 (-> arg0 base))) (let ((v1-0 (the int (+ 0.5 (* 128.0 arg2)))) @@ -863,8 +863,8 @@ ) ;; definition for function copy-cloud-texture +;; INFO: Used lq/sq ;; INFO: Return type mismatch pointer vs none. -;; Used lq/sq (defun copy-cloud-texture ((arg0 dma-buffer) (arg1 adgif-shader) (arg2 float)) (let ((s5-0 (-> arg0 base))) (let ((v1-0 (the int (+ 0.5 (* 128.0 arg2)))) diff --git a/test/decompiler/reference/jak1/engine/gfx/sky/sky_REF.gc b/test/decompiler/reference/jak1/engine/gfx/sky/sky_REF.gc index 19775725ae..d9c5a079ee 100644 --- a/test/decompiler/reference/jak1/engine/gfx/sky/sky_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/sky/sky_REF.gc @@ -138,8 +138,8 @@ ;; ERROR: function has no type analysis. Cannot decompile. ;; definition for function sky-draw -;; WARN: Type Propagation failed: Failed type prop at op 12 ((set! a0 (+ a0 16))): Cannot get_type_int2: (+ a0 16), args float and -;; WARN: Type Propagation failed: Type analysis failed +;; ERROR: Type Propagation failed: Failed type prop at op 12 ((set! a0 (+ a0 16))): Cannot get_type_int2: (+ a0 16), args float and +;; ERROR: Type Propagation failed: Type analysis failed (defun sky-draw ((a0-0 sky-parms)) (local-vars (v0-0 none) @@ -196,7 +196,3 @@ ;; failed to figure out what this is: (sky-set-orbit *sky-parms* 2 0.0 0.0 -10.0 9950.0 0.0 0.0) - - - - diff --git a/test/decompiler/reference/jak1/engine/gfx/sprite/sprite-distort_REF.gc b/test/decompiler/reference/jak1/engine/gfx/sprite/sprite-distort_REF.gc index efb0aac273..15ad8e455f 100644 --- a/test/decompiler/reference/jak1/engine/gfx/sprite/sprite-distort_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/sprite/sprite-distort_REF.gc @@ -185,10 +185,10 @@ ) ;; definition for function sprite-draw-distorters +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Inline assembly instruction marked with TODO - [TODO.VCLIP] -;; WARN: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] -;; Used lq/sq +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VCLIP] +;; ERROR: Unsupported inline assembly instruction kind - [cfc2.i v1, Clipping] (defun sprite-draw-distorters ((arg0 dma-buffer)) (local-vars (v1-14 float) diff --git a/test/decompiler/reference/jak1/engine/gfx/sprite/sprite_REF.gc b/test/decompiler/reference/jak1/engine/gfx/sprite/sprite_REF.gc index 87ea57a1ee..66b5902320 100644 --- a/test/decompiler/reference/jak1/engine/gfx/sprite/sprite_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/sprite/sprite_REF.gc @@ -221,8 +221,8 @@ ) ;; definition for function sprite-setup-frame-data +;; INFO: Used lq/sq ;; INFO: Return type mismatch float vs none. -;; Used lq/sq (defun sprite-setup-frame-data ((data sprite-frame-data) (tbp-offset int)) (set! (-> data hmge-scale quad) (-> *math-camera* hmge-scale quad)) (set! (-> data inv-hmge-scale quad) (-> *math-camera* inv-hmge-scale quad)) @@ -495,8 +495,8 @@ ) ;; definition for function sprite-add-matrix-data +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun sprite-add-matrix-data ((dma-buff dma-buffer) (matrix-mode uint)) (let ((count 900)) (cond diff --git a/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide-h_REF.gc index dddd944826..c0be364adb 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide-h_REF.gc @@ -98,7 +98,7 @@ ) ;; definition for method 3 of type gs-packed-xyzw -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect gs-packed-xyzw ((obj gs-packed-xyzw)) (format #t "[~8x] ~A~%" obj 'gs-packed-xyzw) (format #t "~Tdata[4] @ #x~X~%" (-> obj data)) @@ -124,7 +124,7 @@ ) ;; definition for method 3 of type gs-packed-stq -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect gs-packed-stq ((obj gs-packed-stq)) (format #t "[~8x] ~A~%" obj 'gs-packed-stq) (format #t "~Tdata[4] @ #x~X~%" (-> obj data)) diff --git a/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide_REF.gc index 6bc5445c8f..a17d64b34f 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tfrag/subdivide_REF.gc @@ -279,16 +279,16 @@ ;; definition (debug) for function start-perf-stat-collection ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defun-debug start-perf-stat-collection () (let ((frame-idx (+ (-> *perf-stats* data 0 frame-number) 1))) (set! (-> *perf-stats* data 0 frame-number) frame-idx) @@ -387,11 +387,11 @@ ;; definition (debug) for function end-perf-stat-collection ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun-debug end-perf-stat-collection () (local-vars (a0-1 int) (a0-3 int)) (let ((v1-1 (-> *perf-stats* data))) diff --git a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-methods_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-methods_REF.gc index 760a484ebb..bfbcb26b56 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-methods_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-methods_REF.gc @@ -28,36 +28,36 @@ ;; definition for function draw-drawable-tree-tfrag ;; INFO: Return type mismatch drawable-tree-tfrag vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun draw-drawable-tree-tfrag ((arg0 drawable-tree-tfrag)) (local-vars (a0-20 int) (a0-22 int) (a0-38 int) (a0-40 int) (sv-16 (pointer uint8))) (when (logtest? *vu1-enable-user* (vu1-renderer-mask tfrag)) @@ -252,36 +252,36 @@ ;; definition for function draw-drawable-tree-trans-tfrag ;; INFO: Return type mismatch drawable-tree-trans-tfrag vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun draw-drawable-tree-trans-tfrag ((arg0 drawable-tree-trans-tfrag)) (local-vars (a0-18 int) (a0-20 int) (a0-35 int) (a0-37 int) (sv-16 (pointer uint8))) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) @@ -465,36 +465,36 @@ ;; definition for function draw-drawable-tree-dirt-tfrag ;; INFO: Return type mismatch drawable-tree-dirt-tfrag vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun draw-drawable-tree-dirt-tfrag ((arg0 drawable-tree-dirt-tfrag)) (local-vars (a0-18 int) (a0-20 int) (a0-35 int) (a0-37 int) (sv-16 (pointer uint8))) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) @@ -660,36 +660,36 @@ ;; definition for function draw-drawable-tree-ice-tfrag ;; INFO: Return type mismatch drawable-tree-ice-tfrag vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun draw-drawable-tree-ice-tfrag ((arg0 drawable-tree-ice-tfrag)) (local-vars (a0-18 int) (a0-20 int) (a0-35 int) (a0-37 int) (sv-16 (pointer uint8))) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) @@ -948,8 +948,8 @@ ) ;; definition for method 14 of type drawable-tree-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-tfrag ((obj drawable-tree-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) (the-as int (logand *vu1-enable-user* (vu1-renderer-mask tfrag)))) @@ -969,8 +969,8 @@ ) ;; definition for method 14 of type drawable-tree-lowres-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-lowres-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-lowres-tfrag ((obj drawable-tree-lowres-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) (the-as int (logand *vu1-enable-user* (vu1-renderer-mask tfrag)))) @@ -990,8 +990,8 @@ ) ;; definition for method 14 of type drawable-tree-trans-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-trans-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-trans-tfrag ((obj drawable-tree-trans-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) @@ -1013,8 +1013,8 @@ ) ;; definition for method 14 of type drawable-tree-lowres-trans-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-lowres-trans-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-lowres-trans-tfrag ((obj drawable-tree-lowres-trans-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) @@ -1036,8 +1036,8 @@ ) ;; definition for method 14 of type drawable-tree-dirt-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-dirt-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-dirt-tfrag ((obj drawable-tree-dirt-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) @@ -1059,8 +1059,8 @@ ) ;; definition for method 14 of type drawable-tree-ice-tfrag +;; INFO: Used lq/sq ;; INFO: Return type mismatch drawable-tree-ice-tfrag vs none. -;; Used lq/sq (defmethod collect-stats drawable-tree-ice-tfrag ((obj drawable-tree-ice-tfrag)) (when (logtest? *vu1-enable-user* (vu1-renderer-mask trans-tfrag)) (set! (-> *tfrag-work* vu1-enable-tfrag) diff --git a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-near_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-near_REF.gc index 89f2a54c42..16d5d4442b 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-near_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag-near_REF.gc @@ -40,8 +40,8 @@ ) ;; definition (debug) for function clip-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun-debug clip-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag_REF.gc index 13b05191d8..c784a3ee64 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tfrag/tfrag_REF.gc @@ -159,8 +159,8 @@ (define tfrag-vu1-block (new 'static 'vu-function :length #x74b :qlength #x3a6)) ;; definition for function tfrag-data-setup +;; INFO: Used lq/sq ;; INFO: Return type mismatch tfrag-data vs none. -;; Used lq/sq (defun tfrag-data-setup ((arg0 tfrag-data) (arg1 int)) (let ((v1-0 *math-camera*)) (set-vector! (-> arg0 fog) (-> v1-0 pfog0) (-> v1-0 fog-min) (-> v1-0 fog-max) 3072.0) diff --git a/test/decompiler/reference/jak1/engine/gfx/tie/generic-tie-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tie/generic-tie-h_REF.gc index 978466fea1..410f65b449 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tie/generic-tie-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tie/generic-tie-h_REF.gc @@ -116,7 +116,7 @@ ) ;; definition for method 3 of type generic-tie-base-point -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect generic-tie-base-point ((obj generic-tie-base-point)) (format #t "[~8x] ~A~%" obj 'generic-tie-base-point) (format #t "~Tdata[8] @ #x~X~%" (&-> obj x)) @@ -176,7 +176,7 @@ ) ;; definition for method 3 of type generic-tie-interp-point -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect generic-tie-interp-point ((obj generic-tie-interp-point)) (format #t "[~8x] ~A~%" obj 'generic-tie-interp-point) (format #t "~Tdata[12] @ #x~X~%" (&-> obj x)) diff --git a/test/decompiler/reference/jak1/engine/gfx/tie/prototype-h_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tie/prototype-h_REF.gc index b47d99eb52..b5654816a5 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tie/prototype-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tie/prototype-h_REF.gc @@ -33,7 +33,7 @@ ) ;; definition for method 3 of type prototype-bucket -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect prototype-bucket ((obj prototype-bucket)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tname: ~A~%" (-> obj name)) @@ -71,7 +71,7 @@ ) ;; definition for method 3 of type prototype-bucket-shrub -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect prototype-bucket-shrub ((obj prototype-bucket-shrub)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tname: ~A~%" (-> obj name)) @@ -162,7 +162,7 @@ ) ;; definition for method 3 of type prototype-bucket-tie -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect prototype-bucket-tie ((obj prototype-bucket-tie)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tname: ~A~%" (-> obj name)) diff --git a/test/decompiler/reference/jak1/engine/gfx/tie/tie-methods_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tie/tie-methods_REF.gc index 4f20b69213..6c5997db7f 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tie/tie-methods_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tie/tie-methods_REF.gc @@ -245,68 +245,68 @@ ) ;; definition for function draw-drawable-tree-instance-tie +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] -;; Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun draw-drawable-tree-instance-tie ((arg0 drawable-tree-instance-tie) (arg1 level)) (local-vars (a0-31 int) @@ -859,8 +859,8 @@ ) ;; definition (debug) for function tie-test-cam-restore +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defun-debug tie-test-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/engine/gfx/tie/tie-near_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tie/tie-near_REF.gc index 94420e3ef8..ab378dad23 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tie/tie-near_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tie/tie-near_REF.gc @@ -43,8 +43,8 @@ (define tie-near-vu1-block (new 'static 'vu-function :length #x6f8 :qlength #x37c)) ;; definition for function tie-near-init-consts +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun tie-near-init-consts ((arg0 tie-near-consts) (arg1 int)) (set! (-> arg0 adgif tag) (new 'static 'gif-tag64 :nloop #x5 :nreg #x1)) (set! (-> arg0 adgif regs) (new 'static 'gif-tag-regs :regs0 (gif-reg-id a+d))) diff --git a/test/decompiler/reference/jak1/engine/gfx/tie/tie_REF.gc b/test/decompiler/reference/jak1/engine/gfx/tie/tie_REF.gc index e27647d6a7..87f58726e5 100644 --- a/test/decompiler/reference/jak1/engine/gfx/tie/tie_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/tie/tie_REF.gc @@ -686,8 +686,8 @@ ) ;; definition (debug) for function tie-ints +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun-debug tie-ints () (local-vars (sv-16 uint)) (let ((gp-0 (the-as (pointer uint32) (+ #x3fa0 #x1100c000)))) @@ -712,8 +712,8 @@ ) ;; definition (debug) for function tie-floats +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defun-debug tie-floats () (local-vars (sv-16 uint) (sv-32 uint)) (let ((gp-0 (the-as (pointer uint32) (+ #x3da0 #x1100c000)))) diff --git a/test/decompiler/reference/jak1/engine/gfx/time-of-day_REF.gc b/test/decompiler/reference/jak1/engine/gfx/time-of-day_REF.gc index 61e5439354..f411f2ccb2 100644 --- a/test/decompiler/reference/jak1/engine/gfx/time-of-day_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/time-of-day_REF.gc @@ -232,8 +232,8 @@ ) ;; definition for function update-time-of-day +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun update-time-of-day ((arg0 time-of-day-context)) (set! (-> arg0 sky) #f) (set! (-> arg0 target-interp) 0.0) @@ -561,7 +561,7 @@ ) ;; definition for method 10 of type palette-fade-controls -;; Used lq/sq +;; INFO: Used lq/sq (defmethod set-fade! palette-fade-controls ((obj palette-fade-controls) (arg0 int) (arg1 float) (arg2 float) (arg3 vector)) (cond ((and (>= arg0 0) (< arg0 8)) diff --git a/test/decompiler/reference/jak1/engine/gfx/vis/bsp_REF.gc b/test/decompiler/reference/jak1/engine/gfx/vis/bsp_REF.gc index 06ea7f4287..d268a64212 100644 --- a/test/decompiler/reference/jak1/engine/gfx/vis/bsp_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/vis/bsp_REF.gc @@ -152,7 +152,7 @@ (define *test-shrub* 0) ;; definition for method 10 of type bsp-header -;; Used lq/sq +;; INFO: Used lq/sq (defmethod draw bsp-header ((obj bsp-header) (other-draw bsp-header) (disp-frame display-frame)) (local-vars (a3-4 uint128) (a3-5 uint128)) (rlet ((vf16 :class vf) @@ -396,7 +396,7 @@ ;; definition for function bsp-camera-asm ;; INFO: Return type mismatch int vs none. -;; WARN: Function may read a register that is not set: a2 +;; ERROR: Function may read a register that is not set: a2 (defun bsp-camera-asm ((bsp-hdr bsp-header) (camera-pos vector)) (local-vars (v1-1 float) (real-node bsp-node)) (rlet ((vf1 :class vf) diff --git a/test/decompiler/reference/jak1/engine/gfx/water/water_REF.gc b/test/decompiler/reference/jak1/engine/gfx/water/water_REF.gc index 65420bf0a5..82997dadaa 100644 --- a/test/decompiler/reference/jak1/engine/gfx/water/water_REF.gc +++ b/test/decompiler/reference/jak1/engine/gfx/water/water_REF.gc @@ -680,8 +680,8 @@ ) ;; definition for method 10 of type water-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-10 water-control ((obj water-control)) (with-pp (let ((s5-0 (-> obj flags))) @@ -1401,8 +1401,8 @@ ) ;; definition for method 29 of type water-vol +;; INFO: Used lq/sq ;; INFO: Return type mismatch water-flags vs none. -;; Used lq/sq (defmethod TODO-RENAME-29 water-vol ((obj water-vol)) (local-vars (sv-16 res-tag)) (set! (-> obj attack-event) (the-as symbol ((method-of-type res-lump get-property-struct) diff --git a/test/decompiler/reference/jak1/engine/level/level_REF.gc b/test/decompiler/reference/jak1/engine/level/level_REF.gc index 2b41c115a8..dce77acd44 100644 --- a/test/decompiler/reference/jak1/engine/level/level_REF.gc +++ b/test/decompiler/reference/jak1/engine/level/level_REF.gc @@ -128,7 +128,7 @@ ) ;; definition for method 26 of type level -;; Used lq/sq +;; INFO: Used lq/sq (defmethod vis-clear level ((obj level)) (countdown (v1-0 8) (nop!) @@ -142,7 +142,7 @@ ) ;; definition for method 20 of type level -;; Used lq/sq +;; INFO: Used lq/sq (defmethod vis-load level ((obj level)) (when (zero? (-> obj vis-info (-> obj vis-self-index) ramdisk)) (let ((v1-10 (-> obj other vis-info (-> obj other vis-self-index)))) @@ -483,10 +483,10 @@ ;; definition for function level-update-after-load ;; WARN: Found some very strange gotos. Check result carefully, this is not well tested. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 s5, Count] -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 s5, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun level-update-after-load ((loaded-level level) (level-login-state login-state)) (local-vars (current-timer int) (v1-154 int) (initial-timer int) (sv-16 prototype-bucket-tie) (sv-32 int)) 0 @@ -694,7 +694,7 @@ ) ;; definition for method 9 of type level -;; Used lq/sq +;; INFO: Used lq/sq (defmethod deactivate level ((obj level)) (case (-> obj status) (('active 'alive) @@ -802,7 +802,7 @@ ) ;; definition for method 10 of type level -;; WARN: Unsupported inline assembly instruction kind - [addiu a0, a0, 56] +;; ERROR: Unsupported inline assembly instruction kind - [addiu a0, a0, 56] (defmethod is-object-visible? level ((obj level) (arg0 int)) (local-vars (a0-1 int) (a0-3 int)) (let ((v1-0 (-> obj vis-bits))) diff --git a/test/decompiler/reference/jak1/engine/level/load-boundary-h_REF.gc b/test/decompiler/reference/jak1/engine/level/load-boundary-h_REF.gc index 9f35413374..884e09b806 100644 --- a/test/decompiler/reference/jak1/engine/level/load-boundary-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/level/load-boundary-h_REF.gc @@ -19,7 +19,7 @@ ) ;; definition for method 3 of type lbvtx -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect lbvtx ((obj lbvtx)) (format #t "[~8x] ~A~%" obj 'lbvtx) (format #t "~Tx: ~f~%" (-> obj x)) @@ -116,7 +116,7 @@ (define *load-boundary-target* (the-as (inline-array lbvtx) (malloc 'global 64))) ;; definition for method 0 of type load-boundary -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new load-boundary ((allocation symbol) (type-to-make type) (arg0 int) (arg1 symbol) (arg2 symbol)) (let ((v0-0 (object-new allocation type-to-make (the-as int (+ (-> type-to-make size) (* (+ arg0 -1) 16)))))) (set! (-> v0-0 num-points) (the-as uint arg0)) diff --git a/test/decompiler/reference/jak1/engine/level/load-boundary_REF.gc b/test/decompiler/reference/jak1/engine/level/load-boundary_REF.gc index d7744ed144..a709627674 100644 --- a/test/decompiler/reference/jak1/engine/level/load-boundary_REF.gc +++ b/test/decompiler/reference/jak1/engine/level/load-boundary_REF.gc @@ -455,8 +455,8 @@ ) ;; definition (debug) for function edit-load-boundaries +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun-debug edit-load-boundaries () (let* ((gp-0 *lb-editor-parms*) (s5-0 (-> gp-0 boundary)) @@ -615,7 +615,7 @@ ;; definition (debug) for function replace-load-boundary ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function replace-load-boundary has a return type of none, but the expression builder found a return statement. +;; WARN: Function replace-load-boundary has a return type of none, but the expression builder found a return statement. (defun-debug replace-load-boundary ((arg0 load-boundary) (arg1 load-boundary)) (set! (-> arg1 next) (-> arg0 next)) (if (= (-> *lb-editor-parms* boundary) arg0) @@ -641,7 +641,7 @@ ;; definition (debug) for function lb-del ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-del has a return type of none, but the expression builder found a return statement. +;; WARN: Function lb-del has a return type of none, but the expression builder found a return statement. (defun-debug lb-del () (let ((v1-1 (-> *lb-editor-parms* boundary))) (set! (-> *lb-editor-parms* boundary) #f) @@ -669,9 +669,9 @@ ) ;; definition (debug) for function lb-add-vtx-before +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-add-vtx-before has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function lb-add-vtx-before has a return type of none, but the expression builder found a return statement. (defun-debug lb-add-vtx-before () (let* ((v1-0 *lb-editor-parms*) (gp-0 (-> v1-0 boundary)) @@ -717,9 +717,9 @@ ) ;; definition (debug) for function lb-add-vtx-after +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-add-vtx-after has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function lb-add-vtx-after has a return type of none, but the expression builder found a return statement. (defun-debug lb-add-vtx-after () (let ((gp-0 *lb-editor-parms*)) (let ((s5-0 (-> gp-0 boundary)) @@ -767,9 +767,9 @@ ) ;; definition (debug) for function lb-del-vtx +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-del-vtx has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function lb-del-vtx has a return type of none, but the expression builder found a return statement. (defun-debug lb-del-vtx () (let* ((gp-0 *lb-editor-parms*) (s5-0 (-> gp-0 boundary)) @@ -977,7 +977,7 @@ ) ;; definition for function lb-flip -;; WARN: Expression building failed: Function lb-flip has a return type of none, but the expression builder found a return statement. +;; WARN: Function lb-flip has a return type of none, but the expression builder found a return statement. (defun lb-flip () (let ((gp-0 (-> *lb-editor-parms* boundary))) (when (not gp-0) @@ -995,7 +995,7 @@ ;; definition for function lb-set-camera ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-set-camera has a return type of none, but the expression builder found a return statement. +;; WARN: Function lb-set-camera has a return type of none, but the expression builder found a return statement. (defun lb-set-camera () (let ((v1-1 (-> *lb-editor-parms* boundary))) (when (not v1-1) @@ -1010,7 +1010,7 @@ ;; definition for function lb-set-player ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-set-player has a return type of none, but the expression builder found a return statement. +;; WARN: Function lb-set-player has a return type of none, but the expression builder found a return statement. (defun lb-set-player () (let ((v1-1 (-> *lb-editor-parms* boundary))) (when (not v1-1) @@ -1024,9 +1024,9 @@ ) ;; definition (debug) for function lb-copy +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function lb-copy has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function lb-copy has a return type of none, but the expression builder found a return statement. (defun-debug lb-copy () (let ((s5-0 (-> *lb-editor-parms* boundary))) (when (not s5-0) @@ -1046,8 +1046,8 @@ ) ;; definition for function render-boundaries +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun render-boundaries () (when (-> *level* border?) (set! (-> *load-boundary-target* 2 quad) (-> *load-boundary-target* 0 quad)) @@ -1114,8 +1114,8 @@ (define *triangulation-buffer* (the-as (inline-array lbvtx) (malloc 'global 4096))) ;; definition for function triangulate-boundary +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defun triangulate-boundary ((arg0 load-boundary)) (when (zero? (logand (-> arg0 flags) (load-boundary-flags closed))) (set! (-> arg0 tri-cnt) 1) @@ -1252,7 +1252,7 @@ ;; definition for function split-monotone-polygon ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function split-monotone-polygon has a return type of none, but the expression builder found a return statement. +;; WARN: Function split-monotone-polygon has a return type of none, but the expression builder found a return statement. (defun split-monotone-polygon ((arg0 load-boundary) (arg1 int)) (let ((s5-0 *triangulation-buffer*)) (loop @@ -1640,7 +1640,7 @@ ;; definition for method 20 of type load-state ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function (method 20 load-state) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 20 load-state) has a return type of none, but the expression builder found a return statement. (defmethod set-force-inside! load-state ((obj load-state) (arg0 symbol) (arg1 symbol)) (dotimes (v1-0 2) (when (= (-> obj want v1-0 name) arg0) diff --git a/test/decompiler/reference/jak1/engine/load/decomp_REF.gc b/test/decompiler/reference/jak1/engine/load/decomp_REF.gc index b0e575c839..6bb668109f 100644 --- a/test/decompiler/reference/jak1/engine/load/decomp_REF.gc +++ b/test/decompiler/reference/jak1/engine/load/decomp_REF.gc @@ -107,7 +107,7 @@ ) ;; definition for method 16 of type level -;; Used lq/sq +;; INFO: Used lq/sq (defmethod update-vis! level ((obj level) (vis-info level-vis-info) (arg1 uint) (arg2 uint)) (local-vars (t0-3 uint128) (vis-buffer object)) (let* ((cam-leaf-idx (-> vis-info from-bsp current-leaf-idx)) diff --git a/test/decompiler/reference/jak1/engine/load/load-dgo_REF.gc b/test/decompiler/reference/jak1/engine/load/load-dgo_REF.gc index 115679c4fa..31bc2d43c6 100644 --- a/test/decompiler/reference/jak1/engine/load/load-dgo_REF.gc +++ b/test/decompiler/reference/jak1/engine/load/load-dgo_REF.gc @@ -18,7 +18,7 @@ ) ;; definition for method 3 of type load-dgo-msg -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect load-dgo-msg ((obj load-dgo-msg)) (format #t "[~8x] ~A~%" obj 'load-dgo-msg) (format #t "~Trsvd: ~D~%" (-> obj rsvd)) @@ -216,7 +216,7 @@ (define *dgo-time* (the-as time-frame 0)) ;; definition for function dgo-load-begin -;; Used lq/sq +;; INFO: Used lq/sq (defun dgo-load-begin ((name string) (buffer1 pointer) (buffer2 pointer) (current-heap pointer)) (set! *dgo-time* (-> *display* real-integral-frame-counter)) (format 0 "Starting level load clock~%") @@ -260,8 +260,8 @@ ) ;; definition for function dgo-load-continue +;; INFO: Used lq/sq ;; INFO: Return type mismatch load-dgo-msg vs int. -;; Used lq/sq (defun dgo-load-continue ((current-heap pointer)) (let ((cmd (the-as load-dgo-msg (add-element *load-dgo-rpc*)))) (set! (-> cmd result) (load-msg-result invalid)) diff --git a/test/decompiler/reference/jak1/engine/load/loader_REF.gc b/test/decompiler/reference/jak1/engine/load/loader_REF.gc index 45a74b83ed..bf7af0250b 100644 --- a/test/decompiler/reference/jak1/engine/load/loader_REF.gc +++ b/test/decompiler/reference/jak1/engine/load/loader_REF.gc @@ -2,7 +2,7 @@ (in-package goal) ;; definition for method 3 of type load-dir -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect load-dir ((obj load-dir)) (local-vars (sv-16 basic)) (format #t "[~8x] ~A~%" obj (-> obj type)) diff --git a/test/decompiler/reference/jak1/engine/load/ramdisk_REF.gc b/test/decompiler/reference/jak1/engine/load/ramdisk_REF.gc index e63d9eda49..3f64a087be 100644 --- a/test/decompiler/reference/jak1/engine/load/ramdisk_REF.gc +++ b/test/decompiler/reference/jak1/engine/load/ramdisk_REF.gc @@ -14,7 +14,7 @@ ) ;; definition for method 3 of type ramdisk-rpc-fill -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect ramdisk-rpc-fill ((obj ramdisk-rpc-fill)) (format #t "[~8x] ~A~%" obj 'ramdisk-rpc-fill) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -60,7 +60,7 @@ ) ;; definition for method 3 of type ramdisk-rpc-load-to-ee -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect ramdisk-rpc-load-to-ee ((obj ramdisk-rpc-load-to-ee)) (format #t "[~8x] ~A~%" obj 'ramdisk-rpc-load-to-ee) (format #t "~Trsvd: ~D~%" (-> obj rsvd)) diff --git a/test/decompiler/reference/jak1/engine/math/euler-h_REF.gc b/test/decompiler/reference/jak1/engine/math/euler-h_REF.gc index b1c8e96fc0..9fc6eafa31 100644 --- a/test/decompiler/reference/jak1/engine/math/euler-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/euler-h_REF.gc @@ -16,7 +16,7 @@ ) ;; definition for method 3 of type euler-angles -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect euler-angles ((obj euler-angles)) (format #t "[~8x] ~A~%" obj 'euler-angles) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) diff --git a/test/decompiler/reference/jak1/engine/math/euler_REF.gc b/test/decompiler/reference/jak1/engine/math/euler_REF.gc index a1114b5cce..874adbb17b 100644 --- a/test/decompiler/reference/jak1/engine/math/euler_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/euler_REF.gc @@ -11,7 +11,7 @@ ) ;; definition for function eul->matrix -;; Used lq/sq +;; INFO: Used lq/sq (defun eul->matrix ((arg0 matrix) (arg1 euler-angles)) (matrix-identity! arg0) (let ((s5-0 (new 'stack-no-clear 'vector))) diff --git a/test/decompiler/reference/jak1/engine/math/math_REF.gc b/test/decompiler/reference/jak1/engine/math/math_REF.gc index ee2793dd32..9f5b772c04 100644 --- a/test/decompiler/reference/jak1/engine/math/math_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/math_REF.gc @@ -111,8 +111,8 @@ ;; definition for function rand-vu-init ;; INFO: Return type mismatch int vs float. -;; WARN: Unsupported inline assembly instruction kind - [ctc2.i vi_R, a0] -;; WARN: Unsupported inline assembly instruction kind - [cfc2.i v0, vi_R] +;; ERROR: Unsupported inline assembly instruction kind - [ctc2.i vi_R, a0] +;; ERROR: Unsupported inline assembly instruction kind - [cfc2.i v0, vi_R] (defun rand-vu-init ((arg0 float)) (local-vars (v0-0 int)) (.ctc2.i vi_R arg0) @@ -124,9 +124,9 @@ (rand-vu-init 1.418091) ;; definition for function rand-vu -;; WARN: Inline assembly instruction marked with TODO - [TODO.VRGET] -;; WARN: Inline assembly instruction marked with TODO - [TODO.VRXOR] -;; WARN: Inline assembly instruction marked with TODO - [TODO.VRNEXT] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VRGET] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VRXOR] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VRNEXT] (defun rand-vu () (local-vars (v0-0 float)) (rlet ((Q :class vf) @@ -147,7 +147,7 @@ ) ;; definition for function rand-vu-nostep -;; WARN: Inline assembly instruction marked with TODO - [TODO.VRGET] +;; ERROR: Inline assembly instruction marked with TODO - [TODO.VRGET] (defun rand-vu-nostep () (local-vars (v0-0 float)) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/engine/math/matrix-h_REF.gc b/test/decompiler/reference/jak1/engine/math/matrix-h_REF.gc index acce3aaf0e..4582501270 100644 --- a/test/decompiler/reference/jak1/engine/math/matrix-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/matrix-h_REF.gc @@ -67,7 +67,7 @@ ) ;; definition for function matrix-copy! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-copy! ((arg0 matrix) (arg1 matrix)) (let ((v1-0 (-> arg1 vector 0 quad)) (a2-0 (-> arg1 vector 1 quad)) diff --git a/test/decompiler/reference/jak1/engine/math/matrix_REF.gc b/test/decompiler/reference/jak1/engine/math/matrix_REF.gc index 40b6b15d7c..a47de06b3f 100644 --- a/test/decompiler/reference/jak1/engine/math/matrix_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/matrix_REF.gc @@ -51,7 +51,7 @@ ) ;; definition for function matrix-identity! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-identity! ((arg0 matrix)) (set! (-> arg0 vector 0 quad) (the-as uint128 0)) (set! (-> arg0 vector 1 quad) (the-as uint128 0)) @@ -137,7 +137,7 @@ ) ;; definition for function matrixp*! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrixp*! ((dst matrix) (src1 matrix) (src2 matrix)) (let ((temp-mat (new-stack-matrix0))) (matrix*! temp-mat src1 src2) @@ -201,7 +201,7 @@ ) ;; definition for function vector3s-matrix*! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector3s-matrix*! ((dst vector3s) (vec vector3s) (mat matrix)) (let ((temp-vec3 (new-stack-vector0))) (set-vector! temp-vec3 (-> vec x) (-> vec y) (-> vec z) 1.0) @@ -214,7 +214,7 @@ ) ;; definition for function vector3s-rotate*! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector3s-rotate*! ((dst vector3s) (vec vector3s) (mat matrix)) (let ((temp-vec3 (new-stack-vector0))) (set-vector! temp-vec3 (-> vec x) (-> vec y) (-> vec z) 1.0) @@ -227,8 +227,8 @@ ) ;; definition for function matrix-transpose! -;; WARN: Function may read a register that is not set: f31 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Function may read a register that is not set: f31 (defun matrix-transpose! ((dst matrix) (src matrix)) (local-vars (r0-0 int) @@ -310,9 +310,9 @@ ) ;; definition for function matrix-4x4-inverse! -;; WARN: Bad vector register dependency: vf3 -;; WARN: Bad vector register dependency: vf4 -;; WARN: Bad vector register dependency: vf5 +;; ERROR: Bad vector register dependency: vf3 +;; ERROR: Bad vector register dependency: vf4 +;; ERROR: Bad vector register dependency: vf5 (defun matrix-4x4-inverse! ((dst matrix) (src matrix)) (rlet ((acc :class vf) (Q :class vf) @@ -473,7 +473,7 @@ ) ;; definition for function matrix-translate+! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-translate+! ((dst matrix) (src matrix) (trans vector)) (set! (-> dst vector 3 x) (+ (-> src vector 3 x) (-> trans x))) (set! (-> dst vector 3 y) (+ (-> src vector 3 y) (-> trans y))) @@ -487,7 +487,7 @@ ) ;; definition for function matrix-scale! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-scale! ((dst matrix) (scale vector)) (set! (-> dst vector 0 quad) (the-as uint128 0)) (set! (-> dst vector 1 quad) (the-as uint128 0)) @@ -526,7 +526,7 @@ ) ;; definition for function matrix-inv-scale! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-inv-scale! ((dst matrix) (scale vector)) (set! (-> dst vector 0 quad) (the-as uint128 0)) (set! (-> dst vector 1 quad) (the-as uint128 0)) @@ -565,7 +565,7 @@ ) ;; definition for function matrix-rotate-x! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-x! ((dst matrix) (rot-deg float)) (let ((rot-sin (sin rot-deg)) (rot-cos (cos rot-deg)) @@ -585,7 +585,7 @@ ) ;; definition for function matrix-rotate-y! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-y! ((dst matrix) (rot-deg float)) (let ((rot-sin (sin rot-deg)) (rot-cos (cos rot-deg)) @@ -605,7 +605,7 @@ ) ;; definition for function matrix-rotate-z! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-z! ((dst matrix) (rot-deg float)) (let ((rot-sin (sin rot-deg)) (rot-cos (cos rot-deg)) @@ -625,7 +625,7 @@ ) ;; definition for function matrix-rotate-zyx! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-zyx! ((dst matrix) (rot-xyz-deg vector)) (let ((temp-mat (new-stack-matrix0)) (rot-mat (new-stack-matrix0)) @@ -640,7 +640,7 @@ ) ;; definition for function matrix-rotate-xyz! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-xyz! ((dst matrix) (rot-xyz-deg vector)) (let ((temp-mat (new-stack-matrix0)) (rot-mat (new-stack-matrix0)) @@ -655,7 +655,7 @@ ) ;; definition for function matrix-rotate-zxy! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-zxy! ((dst matrix) (rot-xyz-deg vector)) (let ((temp-mat (new-stack-matrix0)) (rot-mat (new-stack-matrix0)) @@ -670,7 +670,7 @@ ) ;; definition for function matrix-rotate-yxz! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-yxz! ((dst matrix) (rot-xyz-deg vector)) (let ((temp-mat (new-stack-matrix0)) (rot-mat (new-stack-matrix0)) @@ -685,7 +685,7 @@ ) ;; definition for function matrix-rotate-yzx! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-yzx! ((dst matrix) (rot-xyz-deg vector)) (let ((temp-mat (new-stack-matrix0)) (rot-mat (new-stack-matrix0)) @@ -736,7 +736,7 @@ ) ;; definition for function matrix-rotate-yx! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-rotate-yx! ((dst matrix) (rot-y-deg float) (rot-x-deg float)) (matrix-rotate-y! dst rot-y-deg) (let ((a1-2 (matrix-rotate-x! (new-stack-matrix0) rot-x-deg))) diff --git a/test/decompiler/reference/jak1/engine/math/quaternion-h_REF.gc b/test/decompiler/reference/jak1/engine/math/quaternion-h_REF.gc index ff460d12b0..476c6b6662 100644 --- a/test/decompiler/reference/jak1/engine/math/quaternion-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/quaternion-h_REF.gc @@ -18,7 +18,7 @@ ;; definition for method 3 of type quaternion ;; INFO: this function exists in multiple non-identical object files -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect quaternion ((obj quaternion)) (format #t "[~8x] ~A~%" obj 'quaternion) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) diff --git a/test/decompiler/reference/jak1/engine/math/quaternion_REF.gc b/test/decompiler/reference/jak1/engine/math/quaternion_REF.gc index a8b9f93d21..ab79b9c186 100644 --- a/test/decompiler/reference/jak1/engine/math/quaternion_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/quaternion_REF.gc @@ -60,14 +60,14 @@ ) ;; definition for function quaternion-zero! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-zero! ((arg0 quaternion)) (set! (-> arg0 vec quad) (the-as uint128 0)) arg0 ) ;; definition for function quaternion-identity! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-identity! ((arg0 quaternion)) (set! (-> arg0 vec quad) (the-as uint128 0)) (set! (-> arg0 w) 1.0) @@ -75,7 +75,7 @@ ) ;; definition for function quaternion-i! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-i! ((arg0 quaternion)) (set! (-> arg0 vec quad) (the-as uint128 0)) (set! (-> arg0 x) 1.0) @@ -83,7 +83,7 @@ ) ;; definition for function quaternion-j! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-j! ((arg0 quaternion)) (set! (-> arg0 vec quad) (the-as uint128 0)) (set! (-> arg0 y) 1.0) @@ -91,7 +91,7 @@ ) ;; definition for function quaternion-k! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-k! ((arg0 quaternion)) (set! (-> arg0 vec quad) (the-as uint128 0)) (set! (-> arg0 z) 1.0) @@ -99,7 +99,7 @@ ) ;; definition for function quaternion-copy! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-copy! ((arg0 quaternion) (arg1 quaternion)) (set! (-> arg0 vec quad) (-> arg1 vec quad)) arg0 @@ -141,7 +141,7 @@ ) ;; definition for function quaternion-negate! -;; WARN: Bad vector register dependency: vf2 +;; ERROR: Bad vector register dependency: vf2 (defun quaternion-negate! ((arg0 quaternion) (arg1 quaternion)) (rlet ((vf1 :class vf) (vf2 :class vf) @@ -155,7 +155,7 @@ ) ;; definition for function quaternion-conjugate! -;; WARN: Bad vector register dependency: vf2 +;; ERROR: Bad vector register dependency: vf2 (defun quaternion-conjugate! ((arg0 quaternion) (arg1 quaternion)) (rlet ((vf1 :class vf) (vf2 :class vf) @@ -253,7 +253,7 @@ ) ;; definition for function quaternion-inverse! -;; WARN: Bad vector register dependency: vf3 +;; ERROR: Bad vector register dependency: vf3 (defun quaternion-inverse! ((arg0 quaternion) (arg1 quaternion)) (rlet ((acc :class vf) (Q :class vf) @@ -502,7 +502,7 @@ ) ;; definition for function matrix-with-scale->quaternion -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix-with-scale->quaternion ((arg0 quaternion) (arg1 matrix)) (local-vars (a1-4 float)) (rlet ((vf1 :class vf) @@ -741,7 +741,7 @@ ) ;; definition for function vector-x-quaternion! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-x-quaternion! ((arg0 vector) (arg1 quaternion)) (let ((s5-0 (new-stack-matrix0))) (quaternion->matrix s5-0 arg1) @@ -751,7 +751,7 @@ ) ;; definition for function vector-y-quaternion! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-y-quaternion! ((arg0 vector) (arg1 quaternion)) (let ((s5-0 (new-stack-matrix0))) (quaternion->matrix s5-0 arg1) @@ -761,7 +761,7 @@ ) ;; definition for function vector-z-quaternion! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-z-quaternion! ((arg0 vector) (arg1 quaternion)) (let ((s5-0 (new-stack-matrix0))) (quaternion->matrix s5-0 arg1) @@ -787,7 +787,7 @@ ) ;; definition for function quaternion-rotate-local-x! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-local-x! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a2-1 (quaternion-vector-angle! (new-stack-quaternion0) (new 'static 'vector :x 1.0 :w 1.0) arg2))) (quaternion-normalize! (quaternion*! arg0 arg1 a2-1)) @@ -795,7 +795,7 @@ ) ;; definition for function quaternion-rotate-local-y! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-local-y! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a2-1 (quaternion-vector-angle! (new-stack-quaternion0) (new 'static 'vector :y 1.0 :w 1.0) arg2))) (quaternion-normalize! (quaternion*! arg0 arg1 a2-1)) @@ -803,7 +803,7 @@ ) ;; definition for function quaternion-rotate-local-z! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-local-z! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a2-1 (quaternion-vector-angle! (new-stack-quaternion0) (new 'static 'vector :z 1.0 :w 1.0) arg2))) (quaternion-normalize! (quaternion*! arg0 arg1 a2-1)) @@ -811,7 +811,7 @@ ) ;; definition for function quaternion-rotate-y! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-y! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a1-2 (quaternion-vector-angle! (new-stack-quaternion0) (new 'static 'vector :y 1.0 :w 1.0) arg2))) (quaternion-normalize! (quaternion*! arg0 a1-2 arg1)) @@ -819,7 +819,7 @@ ) ;; definition for function quaternion-rotate-x! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-x! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a1-3 (quaternion-vector-angle! (new-stack-quaternion0) (vector-x-quaternion! (new-stack-vector0) arg1) arg2)) ) @@ -828,7 +828,7 @@ ) ;; definition for function quaternion-rotate-z! -;; Used lq/sq +;; INFO: Used lq/sq (defun quaternion-rotate-z! ((arg0 quaternion) (arg1 quaternion) (arg2 float)) (let ((a1-3 (quaternion-vector-angle! (new-stack-quaternion0) (vector-z-quaternion! (new-stack-vector0) arg1) arg2)) ) diff --git a/test/decompiler/reference/jak1/engine/math/transform_REF.gc b/test/decompiler/reference/jak1/engine/math/transform_REF.gc index 25a862ab24..d4542fff83 100644 --- a/test/decompiler/reference/jak1/engine/math/transform_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/transform_REF.gc @@ -21,7 +21,7 @@ ) ;; definition for function transform-matrix-calc! -;; Used lq/sq +;; INFO: Used lq/sq (defun transform-matrix-calc! ((tf transform) (dst-mat matrix)) (let ((s4-0 (new-stack-matrix0)) (s3-0 (new-stack-matrix0)) @@ -40,7 +40,7 @@ ) ;; definition for function transform-matrix-parent-calc! -;; Used lq/sq +;; INFO: Used lq/sq (defun transform-matrix-parent-calc! ((tf transform) (dst-mat matrix) (inv-scale vector)) (let ((s4-0 (new-stack-matrix0)) (s3-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/engine/math/transformq_REF.gc b/test/decompiler/reference/jak1/engine/math/transformq_REF.gc index c84685cb1d..79bf5b6223 100644 --- a/test/decompiler/reference/jak1/engine/math/transformq_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/transformq_REF.gc @@ -155,7 +155,7 @@ ) ;; definition for method 17 of type trsqv -;; Used lq/sq +;; INFO: Used lq/sq (defmethod rotate-toward-orientation! trsqv ((obj trsqv) (target quaternion) (y-rate float) (z-rate float)) (local-vars (sv-96 vector)) (let ((quat (get-quaternion obj))) @@ -206,7 +206,7 @@ ) ;; definition for function transformq-copy! -;; Used lq/sq +;; INFO: Used lq/sq (defun transformq-copy! ((arg0 transformq) (arg1 transformq)) (set! (-> arg0 trans quad) (-> arg1 trans quad)) (set! (-> arg0 quat vec quad) (-> arg1 quat vec quad)) @@ -215,7 +215,7 @@ ) ;; definition for function matrix<-transformq! -;; Used lq/sq +;; INFO: Used lq/sq (defun matrix<-transformq! ((arg0 matrix) (arg1 transformq)) (local-vars (v1-1 float)) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/engine/math/trigonometry_REF.gc b/test/decompiler/reference/jak1/engine/math/trigonometry_REF.gc index 3bbf79decb..4eb4eef5f1 100644 --- a/test/decompiler/reference/jak1/engine/math/trigonometry_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/trigonometry_REF.gc @@ -176,11 +176,11 @@ ) ;; definition for function sin-rad -;; WARN: Unsupported inline assembly instruction kind - [mula.s f0, f7] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f2, f8] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f4, f9] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f5, f10] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f12, f6, f11] +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f0, f7] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f2, f8] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f4, f9] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f5, f10] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f12, f6, f11] (defun sin-rad ((arg0 float)) (local-vars (f12-0 float)) (let* ((f1-0 (* arg0 arg0)) @@ -246,11 +246,11 @@ ) ;; definition for function cos-rad -;; WARN: Unsupported inline assembly instruction kind - [mula.s f7, f7] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f8, f1] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f9, f3] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f10, f4] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f12, f11, f5] +;; ERROR: Unsupported inline assembly instruction kind - [mula.s f7, f7] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f8, f1] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f9, f3] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f10, f4] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f12, f11, f5] (defun cos-rad ((arg0 float)) (local-vars (f12-0 float)) (let* ((f1-0 (* arg0 arg0)) @@ -276,7 +276,7 @@ (define *cos-poly-vec* (new 'static 'vector :x -0.49998003 :y 0.041620404 :z -0.0013636408 :w 0.000020170546)) ;; definition for function vector-cos-rad! -;; WARN: Bad vector register dependency: vf2 +;; ERROR: Bad vector register dependency: vf2 (defun vector-cos-rad! ((arg0 vector) (arg1 vector)) (rlet ((acc :class vf) (vf0 :class vf) @@ -307,7 +307,7 @@ ) ;; definition for function vector-sincos-rad! -;; WARN: Bad vector register dependency: vf14 +;; ERROR: Bad vector register dependency: vf14 (defun vector-sincos-rad! ((arg0 vector) (arg1 vector) (arg2 vector)) (rlet ((acc :class vf) (vf0 :class vf) @@ -441,14 +441,14 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for function atan-series-rad -;; WARN: Unsupported inline assembly instruction kind - [adda.s f0, f18] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f2, f11] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f4, f12] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f5, f13] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f6, f14] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f7, f15] -;; WARN: Unsupported inline assembly instruction kind - [madda.s f8, f16] -;; WARN: Unsupported inline assembly instruction kind - [madd.s f18, f9, f17] +;; ERROR: Unsupported inline assembly instruction kind - [adda.s f0, f18] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f2, f11] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f4, f12] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f5, f13] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f6, f14] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f7, f15] +;; ERROR: Unsupported inline assembly instruction kind - [madda.s f8, f16] +;; ERROR: Unsupported inline assembly instruction kind - [madd.s f18, f9, f17] (defun atan-series-rad ((arg0 float)) (local-vars (f18-1 float)) (let* ((f1-0 (* arg0 arg0)) diff --git a/test/decompiler/reference/jak1/engine/math/vector-h_REF.gc b/test/decompiler/reference/jak1/engine/math/vector-h_REF.gc index e416cf054a..91f6a57f02 100644 --- a/test/decompiler/reference/jak1/engine/math/vector-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/vector-h_REF.gc @@ -254,7 +254,7 @@ ) ;; definition for method 3 of type vector4w -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect vector4w ((obj vector4w)) (format #t "[~8x] ~A~%" obj 'vector4w) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -371,7 +371,7 @@ ) ;; definition for method 3 of type vector8h -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect vector8h ((obj vector8h)) (format #t "[~8x] ~A~%" obj 'vector8h) (format #t "~Tdata[8] @ #x~X~%" (-> obj data)) @@ -390,7 +390,7 @@ ) ;; definition for method 3 of type vector16b -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect vector16b ((obj vector16b)) (format #t "[~8x] ~A~%" obj 'vector16b) (format #t "~Tdata[8] @ #x~X~%" (-> obj data)) @@ -414,7 +414,7 @@ ;; definition for method 3 of type vector ;; INFO: this function exists in multiple non-identical object files -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect vector ((obj vector)) (format #t "[~8x] ~A~%" obj 'vector) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -512,7 +512,7 @@ ) ;; definition for method 3 of type rgbaf -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect rgbaf ((obj rgbaf)) (format #t "[~8x] ~A~%" obj 'rgbaf) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -541,7 +541,7 @@ ) ;; definition for method 3 of type plane -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect plane ((obj plane)) (format #t "[~8x] ~A~%" obj 'plane) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -567,7 +567,7 @@ ) ;; definition for method 3 of type sphere -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sphere ((obj sphere)) (format #t "[~8x] ~A~%" obj 'sphere) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -736,7 +736,7 @@ ) ;; definition for method 3 of type qword -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect qword ((obj qword)) (format #t "[~8x] ~A~%" obj 'qword) (format #t "~Tdata[4] @ #x~X~%" (-> obj data)) @@ -832,7 +832,7 @@ ) ;; definition for function vector-zero! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-zero! ((arg0 vector)) (set! (-> arg0 quad) (the-as uint128 0)) arg0 @@ -848,7 +848,7 @@ ) ;; definition for function vector-copy! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-copy! ((arg0 vector) (arg1 vector)) (set! (-> arg0 quad) (-> arg1 quad)) arg0 diff --git a/test/decompiler/reference/jak1/engine/math/vector_REF.gc b/test/decompiler/reference/jak1/engine/math/vector_REF.gc index 307fa92770..c6a0bb7fb2 100644 --- a/test/decompiler/reference/jak1/engine/math/vector_REF.gc +++ b/test/decompiler/reference/jak1/engine/math/vector_REF.gc @@ -720,7 +720,7 @@ ) ;; definition for function vector-normalize-copy! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-normalize-copy! ((arg0 vector) (arg1 vector) (arg2 float)) (let ((f0-0 (vector-length arg1))) (cond @@ -785,7 +785,7 @@ ) ;; definition for function vector-rotate-around-y! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-rotate-around-y! ((arg0 vector) (arg1 vector) (arg2 float)) (let ((f26-0 (-> arg1 z)) (f30-0 (-> arg1 x)) @@ -880,7 +880,7 @@ ) ;; definition for function vector-lerp-clamp! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-lerp-clamp! ((out vector) (a vector) (b vector) (alpha float)) (rlet ((vf0 :class vf) (vf1 :class vf) @@ -936,7 +936,7 @@ ) ;; definition for function vector4-lerp-clamp! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector4-lerp-clamp! ((out vector) (a vector) (b vector) (alpha float)) (rlet ((vf1 :class vf) (vf2 :class vf) @@ -971,7 +971,7 @@ ) ;; definition for function vector-degi -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-degi ((arg0 vector) (arg1 vector)) (local-vars (v1-0 uint128) (v1-1 uint128)) (rlet ((vf1 :class vf)) @@ -985,7 +985,7 @@ ) ;; definition for function vector-degf -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-degf ((arg0 vector) (arg1 vector)) (local-vars (v1-1 uint128)) (rlet ((vf1 :class vf)) @@ -1049,7 +1049,7 @@ ) ;; definition for function vector-deg-lerp-clamp! -;; Used lq/sq +;; INFO: Used lq/sq (defun vector-deg-lerp-clamp! ((out vector) (min-val vector) (max-val vector) (in float)) (cond ((>= 0.0 in) @@ -1130,7 +1130,7 @@ ) ;; definition for function sphere<-vector! -;; Used lq/sq +;; INFO: Used lq/sq (defun sphere<-vector! ((arg0 sphere) (arg1 vector)) (let ((f0-0 (-> arg0 w))) (set! (-> arg0 quad) (-> arg1 quad)) @@ -1140,7 +1140,7 @@ ) ;; definition for function sphere<-vector+r! -;; Used lq/sq +;; INFO: Used lq/sq (defun sphere<-vector+r! ((arg0 sphere) (arg1 vector) (arg2 float)) (set! (-> arg0 quad) (-> arg1 quad)) (set! (-> arg0 w) arg2) diff --git a/test/decompiler/reference/jak1/engine/nav/navigate-h_REF.gc b/test/decompiler/reference/jak1/engine/nav/navigate-h_REF.gc index c24b040ec6..e7f9aed1de 100644 --- a/test/decompiler/reference/jak1/engine/nav/navigate-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/nav/navigate-h_REF.gc @@ -33,7 +33,7 @@ ) ;; definition for method 3 of type nav-vertex -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect nav-vertex ((obj nav-vertex)) (format #t "[~8x] ~A~%" obj 'nav-vertex) (format #t "~Tdata[4] @ #x~X~%" (&-> obj x)) @@ -437,7 +437,7 @@ ) ;; definition for function nav-mesh-connect -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior nav-mesh-connect process ((proc process) (trans trsqv) (nav-cont nav-control)) (local-vars (sv-16 type) (sv-32 symbol)) (let ((ent (-> proc entity))) @@ -529,8 +529,8 @@ ) ;; definition for method 15 of type nav-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defmethod set-target-pos! nav-control ((obj nav-control) (arg0 vector)) (set! (-> obj target-pos quad) (-> arg0 quad)) (none) diff --git a/test/decompiler/reference/jak1/engine/nav/navigate_REF.gc b/test/decompiler/reference/jak1/engine/nav/navigate_REF.gc index d9048b3af3..ec3696c628 100644 --- a/test/decompiler/reference/jak1/engine/nav/navigate_REF.gc +++ b/test/decompiler/reference/jak1/engine/nav/navigate_REF.gc @@ -130,8 +130,8 @@ (define *color-orange* (new 'static 'rgba :r #xff :g #x80 :a #x80)) ;; definition for function entity-nav-login +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun entity-nav-login ((arg0 entity-actor)) (local-vars (sv-16 res-tag)) (let ((gp-0 (if (nonzero? (-> arg0 nav-mesh)) @@ -264,7 +264,7 @@ (set! (-> *nav-one-third* x) 0.33333334) ;; definition for method 10 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod tri-centroid-local nav-mesh ((obj nav-mesh) (arg0 nav-poly) (arg1 vector)) (set! (-> arg1 quad) (-> obj vertex (-> arg0 vertex 0) quad)) (vector+! arg1 arg1 (the-as vector (-> obj vertex (-> arg0 vertex 1)))) @@ -375,7 +375,7 @@ ) ;; definition for method 24 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod closest-point-on-boundary nav-mesh ((obj nav-mesh) (arg0 nav-poly) (arg1 vector) (arg2 vector)) (let ((s2-0 (-> obj vertex)) (s1-0 (new 'stack-no-clear 'vector)) @@ -399,7 +399,7 @@ ) ;; definition for method 26 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod project-point-into-tri-2d nav-mesh ((obj nav-mesh) (arg0 nav-poly) (arg1 vector) (arg2 vector)) (if (point-in-poly? obj arg0 arg2) (set! (-> arg1 quad) (-> arg2 quad)) @@ -543,7 +543,7 @@ ) ;; definition for method 27 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod find-poly-fast nav-mesh ((obj nav-mesh) (arg0 vector) (arg1 meters)) (local-vars (a0-6 symbol) (a2-3 uint128) (a2-4 uint128)) -1 @@ -883,8 +883,8 @@ ) ;; definition for method 14 of type nav-mesh +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod move-along-nav-ray! nav-mesh ((obj nav-mesh) (arg0 nav-ray)) (local-vars (a2-7 int) (a3-3 int)) (let ((v1-0 -1) @@ -972,7 +972,7 @@ ) ;; definition for function init-ray-local -;; Used lq/sq +;; INFO: Used lq/sq (defun init-ray-local ((arg0 nav-ray) (arg1 nav-poly) (arg2 vector) (arg3 vector)) (set! (-> arg0 current-pos quad) (-> arg2 quad)) (set! (-> arg0 dest-pos quad) (-> arg3 quad)) @@ -981,7 +981,7 @@ ) ;; definition for function init-ray-dir-local -;; Used lq/sq +;; INFO: Used lq/sq (defun init-ray-dir-local ((arg0 nav-ray) (arg1 nav-poly) (arg2 vector) (arg3 vector) (arg4 float)) (set! (-> arg0 current-poly) arg1) (set! (-> arg0 current-pos quad) (-> arg2 quad)) @@ -1063,8 +1063,8 @@ (define *nav-update-route-table-route-count* 0) ;; definition for method 18 of type nav-mesh +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-18 nav-mesh ((obj nav-mesh) (arg0 int) (arg1 vector) (arg2 int) (arg3 (pointer int8)) (arg4 int)) (local-vars (sv-32 int) (sv-48 uint)) (set! (-> arg3 arg2) 1) @@ -1247,7 +1247,7 @@ ) ;; definition for method 28 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod find-poly nav-mesh ((obj nav-mesh) (arg0 vector) (arg1 meters) (arg2 (pointer nav-control-flags))) (local-vars (s3-1 nav-poly)) (let ((v1-1 (find-poly-fast obj arg0 arg1))) @@ -1404,8 +1404,8 @@ ) ;; definition for method 13 of type nav-mesh +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod initialize-mesh! nav-mesh ((obj nav-mesh)) (local-vars (sv-32 vector) (sv-48 int)) (with-pp @@ -1565,7 +1565,7 @@ ) ;; definition for method 23 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-23 nav-mesh ((obj nav-mesh) (arg0 nav-poly) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 nav-route-portal)) (local-vars (v1-32 int) (a0-14 int) (a0-17 int) (a1-10 int) (sv-16 nav-vertex)) (let ((s1-0 (-> obj vertex)) @@ -1639,7 +1639,7 @@ ) ;; definition for method 25 of type nav-mesh -;; Used lq/sq +;; INFO: Used lq/sq (defmethod project-point-into-tri-3d nav-mesh ((obj nav-mesh) (arg0 nav-poly) (arg1 vector) (arg2 vector)) (let ((s3-0 (new 'stack-no-clear 'vector)) (s4-0 (new 'stack-no-clear 'matrix)) @@ -1657,7 +1657,7 @@ ) ;; definition for method 17 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod project-onto-nav-mesh nav-control ((obj nav-control) (arg0 vector) (arg1 vector)) (local-vars (sv-32 int)) (let ((s5-0 (-> obj mesh)) @@ -1711,8 +1711,8 @@ ) ;; definition for method 9 of type nav-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw nav-control ((obj nav-control)) (local-vars (sv-192 vector) @@ -2045,8 +2045,8 @@ ) ;; definition for function add-collide-shape-spheres +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun add-collide-shape-spheres ((arg0 nav-control) (arg1 collide-shape) (arg2 vector)) (when (logtest? (-> arg1 nav-flags) (nav-flags navf0)) (set! (-> arg2 quad) (-> arg1 root-prim prim-core world-sphere quad)) @@ -2092,8 +2092,8 @@ ) ;; definition for method 28 of type nav-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-28 nav-control ((obj nav-control) (arg0 collide-kind)) (local-vars (sv-32 nav-control) @@ -2363,7 +2363,7 @@ ) ;; definition for function circle-tangent-directions -;; Used lq/sq +;; INFO: Used lq/sq (defun circle-tangent-directions ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector)) (let ((s2-0 (new 'stack-no-clear 'vector)) (s3-0 (new 'stack-no-clear 'vector)) @@ -2443,7 +2443,7 @@ ) ;; definition for method 32 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-ASM-32 nav-control ((obj nav-control) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float)) (local-vars (v0-3 symbol) (v1-38 int) (a0-29 int) (a3-7 int) (sv-208 sphere)) (let ((gp-0 (new 'stack-no-clear 'nav-control-cfs-work))) @@ -2641,7 +2641,7 @@ ) ;; definition for method 33 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-33 nav-control ((obj nav-control) (arg0 vector) (arg1 vector) (arg2 vector) (arg3 vector) (arg4 float)) (let ((f30-0 (vector-xz-length (-> obj travel)))) (when (TODO-ASM-32 obj arg0 arg1 arg2 arg3 f30-0) @@ -2680,8 +2680,8 @@ (define *test-ray-dest-pos* (new 'static 'vector :x -722887.7 :y 9532.475 :z -958862.25 :w 1.0)) ;; definition for method 19 of type nav-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defmethod dummy-19 nav-control ((obj nav-control) (arg0 vector) (arg1 collide-shape-moving) (arg2 vector) (arg3 float)) (local-vars (sv-48 float)) (let ((f30-0 (* arg3 (-> *display* seconds-per-frame))) @@ -2770,8 +2770,8 @@ ) ;; definition for method 27 of type nav-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-27 nav-control ((obj nav-control)) (local-vars (v1-7 symbol)) (cond @@ -2819,8 +2819,8 @@ ) ;; definition for method 16 of type nav-mesh +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-16 nav-mesh ((obj nav-mesh) (arg0 vector) (arg1 nav-poly) @@ -3040,7 +3040,7 @@ ) ;; definition for method 13 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-13 nav-control ((obj nav-control) (arg0 vector) (arg1 vector)) (local-vars (sv-80 vector) @@ -3152,7 +3152,7 @@ ) ;; definition for method 12 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-12 nav-control ((obj nav-control) (arg0 nav-gap-info)) (when (and (-> obj next-poly) (logtest? (-> obj next-poly pat) 1)) (let ((s4-0 (-> obj next-poly)) @@ -3176,16 +3176,16 @@ ;; definition for function start-collect-nav ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] -;; WARN: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr0, r0] +;; ERROR: Unsupported inline assembly instruction kind - [mtpc pcr1, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, a0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defun start-collect-nav () (let* ((v1-1 (-> *perf-stats* data 14)) (a0-0 (-> v1-1 ctrl)) @@ -3211,11 +3211,11 @@ ;; definition for function end-collect-nav ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] -;; WARN: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Perf, r0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr0] +;; ERROR: Unsupported inline assembly instruction kind - [mfpc a0, pcr1] (defun end-collect-nav () (local-vars (a0-1 int) (a0-3 int)) (let ((v1-1 (-> *perf-stats* data 14))) @@ -3235,7 +3235,7 @@ ) ;; definition for method 11 of type nav-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-11 nav-control ((obj nav-control) (arg0 vector)) (set! (-> obj old-travel quad) (-> obj travel quad)) (-> obj block-count) diff --git a/test/decompiler/reference/jak1/engine/nav/path-h_REF.gc b/test/decompiler/reference/jak1/engine/nav/path-h_REF.gc index 7bb7658639..743579e3dd 100644 --- a/test/decompiler/reference/jak1/engine/nav/path-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/nav/path-h_REF.gc @@ -66,8 +66,8 @@ ) ;; definition for method 0 of type path-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs path-control. -;; Used lq/sq (defmethod new path-control ((allocation symbol) (type-to-make type) (proc process) (name symbol) (time float)) (local-vars (tag res-tag)) (let ((obj (object-new allocation type-to-make (the-as int (-> type-to-make size))))) diff --git a/test/decompiler/reference/jak1/engine/nav/path_REF.gc b/test/decompiler/reference/jak1/engine/nav/path_REF.gc index 502a980024..8a144995ec 100644 --- a/test/decompiler/reference/jak1/engine/nav/path_REF.gc +++ b/test/decompiler/reference/jak1/engine/nav/path_REF.gc @@ -81,7 +81,7 @@ ) ;; definition for method 10 of type path-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod eval-path-curve-div! path-control ((obj path-control) (arg0 vector) (arg1 float) (arg2 symbol)) (let ((a1-1 (-> obj curve num-cverts)) (f0-3 (the float (the int arg1))) @@ -105,7 +105,7 @@ ) ;; definition for method 11 of type path-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod get-random-point path-control ((obj path-control) (arg0 vector)) (with-pp (cond @@ -244,7 +244,7 @@ ) ;; definition for method 19 of type path-control -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-19 path-control ((obj path-control)) (let ((s5-0 (new 'stack-no-clear 'vector)) (s4-0 (new 'stack-no-clear 'vector)) diff --git a/test/decompiler/reference/jak1/engine/physics/trajectory_REF.gc b/test/decompiler/reference/jak1/engine/physics/trajectory_REF.gc index 9ec801bf4e..6de6f518ca 100644 --- a/test/decompiler/reference/jak1/engine/physics/trajectory_REF.gc +++ b/test/decompiler/reference/jak1/engine/physics/trajectory_REF.gc @@ -3,7 +3,7 @@ ;; definition for method 9 of type trajectory ;; INFO: this function exists in multiple non-identical object files -;; Used lq/sq +;; INFO: Used lq/sq (defmethod eval-position! trajectory ((obj trajectory) (time float) (result vector)) (set! (-> result quad) (-> obj initial-position quad)) (+! (-> result x) (* time (-> obj initial-velocity x))) @@ -14,7 +14,7 @@ ) ;; definition for method 10 of type trajectory -;; Used lq/sq +;; INFO: Used lq/sq (defmethod eval-velocity! trajectory ((obj trajectory) (time float) (result vector)) (set! (-> result quad) (-> obj initial-velocity quad)) (+! (-> result y) (* time (-> obj gravity))) @@ -22,8 +22,8 @@ ) ;; definition for method 11 of type trajectory +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod setup-from-to-duration! trajectory ((obj trajectory) (from vector) (to vector) (duration float) (grav float)) (set! (-> obj initial-position quad) (-> from quad)) (set! (-> obj gravity) grav) @@ -84,8 +84,8 @@ ) ;; definition for method 15 of type trajectory +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod debug-draw! trajectory ((obj trajectory)) (let ((prev-pos (new 'stack-no-clear 'vector)) (pos (new 'stack-no-clear 'vector)) diff --git a/test/decompiler/reference/jak1/engine/ps2/timer_REF.gc b/test/decompiler/reference/jak1/engine/ps2/timer_REF.gc index 1419d67790..48c7420a47 100644 --- a/test/decompiler/reference/jak1/engine/ps2/timer_REF.gc +++ b/test/decompiler/reference/jak1/engine/ps2/timer_REF.gc @@ -3,8 +3,8 @@ ;; definition for function timer-reset ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun timer-reset ((arg0 timer-bank)) (.sync.l) (set! (-> arg0 count) (the-as uint 0)) @@ -14,8 +14,8 @@ ) ;; definition for function timer-count -;; WARN: Unsupported inline assembly instruction kind - [sync.l] -;; WARN: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] +;; ERROR: Unsupported inline assembly instruction kind - [sync.l] (defun timer-count ((arg0 timer-bank)) (.sync.l) (let ((v0-0 (-> arg0 count))) @@ -26,9 +26,9 @@ ;; definition for function disable-irq ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v0, Status] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Status, v0] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v0, Status] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Status, v0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defun disable-irq () (local-vars (v0-0 int)) (let ((v1-0 (the-as uint #xfffffffe))) @@ -44,9 +44,9 @@ ;; definition for function enable-irq ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v0, Status] -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Status, v0] -;; WARN: Unsupported inline assembly instruction kind - [sync.p] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v0, Status] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Status, v0] +;; ERROR: Unsupported inline assembly instruction kind - [sync.p] (defun enable-irq () (local-vars (v0-0 int)) (.mfc0 v0-0 Status) @@ -66,7 +66,7 @@ ) ;; definition for function stopwatch-reset -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun stopwatch-reset ((arg0 stopwatch)) (local-vars (v1-3 int)) (set! (-> arg0 prev-time-elapsed) 0) @@ -79,7 +79,7 @@ ) ;; definition for function stopwatch-start -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun stopwatch-start ((arg0 stopwatch)) (local-vars (v1-4 int)) (when (zero? (-> arg0 begin-level)) @@ -93,7 +93,7 @@ ;; definition for function stopwatch-stop ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 a1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 a1, Count] (defun stopwatch-stop ((arg0 stopwatch)) (local-vars (a1-0 int)) (when (> (-> arg0 begin-level) 0) @@ -107,7 +107,7 @@ ) ;; definition for function stopwatch-begin -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun stopwatch-begin ((arg0 stopwatch)) (local-vars (v1-3 int)) (when (zero? (-> arg0 begin-level)) @@ -121,7 +121,7 @@ ;; definition for function stopwatch-end ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 a1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 a1, Count] (defun stopwatch-end ((arg0 stopwatch)) (local-vars (a1-0 int)) (+! (-> arg0 begin-level) -1) @@ -135,7 +135,7 @@ ) ;; definition for function stopwatch-elapsed-ticks -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun stopwatch-elapsed-ticks ((arg0 stopwatch)) (local-vars (v1-3 int)) (let ((v0-0 (-> arg0 prev-time-elapsed))) diff --git a/test/decompiler/reference/jak1/engine/sound/gsound-h_REF.gc b/test/decompiler/reference/jak1/engine/sound/gsound-h_REF.gc index 23a4788c30..c6e3fdec3d 100644 --- a/test/decompiler/reference/jak1/engine/sound/gsound-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/sound/gsound-h_REF.gc @@ -93,7 +93,7 @@ ) ;; definition for method 3 of type sound-rpc-bank-cmd -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-bank-cmd ((obj sound-rpc-bank-cmd)) (format #t "[~8x] ~A~%" obj 'sound-rpc-bank-cmd) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -147,7 +147,7 @@ ) ;; definition for method 3 of type sound-rpc-load-bank -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-load-bank ((obj sound-rpc-load-bank)) (format #t "[~8x] ~A~%" obj 'sound-rpc-load-bank) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -165,7 +165,7 @@ ) ;; definition for method 3 of type sound-rpc-load-music -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-load-music ((obj sound-rpc-load-music)) (format #t "[~8x] ~A~%" obj 'sound-rpc-load-music) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -183,7 +183,7 @@ ) ;; definition for method 3 of type sound-rpc-unload-bank -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-unload-bank ((obj sound-rpc-unload-bank)) (format #t "[~8x] ~A~%" obj 'sound-rpc-unload-bank) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -203,7 +203,7 @@ ) ;; definition for method 3 of type sound-rpc-play -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-play ((obj sound-rpc-play)) (format #t "[~8x] ~A~%" obj 'sound-rpc-play) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -433,7 +433,7 @@ ) ;; definition for method 3 of type sound-rpc-set-sound-falloff -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-rpc-set-sound-falloff ((obj sound-rpc-set-sound-falloff)) (format #t "[~8x] ~A~%" obj 'sound-rpc-set-sound-falloff) (format #t "~Trsvd1: ~D~%" (-> obj rsvd1)) @@ -658,7 +658,7 @@ ) ;; definition for method 3 of type sound-spec -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect sound-spec ((obj sound-spec)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tmask: ~D~%" (-> obj mask)) @@ -715,7 +715,7 @@ ) ;; definition for method 3 of type ambient-sound -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect ambient-sound ((obj ambient-sound)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tspec: ~A~%" (-> obj spec)) diff --git a/test/decompiler/reference/jak1/engine/sound/gsound_REF.gc b/test/decompiler/reference/jak1/engine/sound/gsound_REF.gc index c079d8deb4..8e5be9ce0e 100644 --- a/test/decompiler/reference/jak1/engine/sound/gsound_REF.gc +++ b/test/decompiler/reference/jak1/engine/sound/gsound_REF.gc @@ -114,7 +114,7 @@ (check-irx-version) ;; definition for function sound-bank-load -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-bank-load ((arg0 sound-name)) (let ((gp-0 (new-sound-id))) (let ((cmd (the-as sound-rpc-load-bank (add-element *sound-loader-rpc*)))) @@ -127,7 +127,7 @@ ) ;; definition for function sound-bank-unload -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-bank-unload ((arg0 sound-name)) (let ((cmd (the-as sound-rpc-unload-bank (add-element *sound-loader-rpc*)))) (set! (-> cmd command) (sound-command unload-bank)) @@ -138,7 +138,7 @@ ) ;; definition for function sound-music-load -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-music-load ((arg0 sound-name)) (let ((cmd (the-as sound-rpc-load-music (add-element *sound-loader-rpc*)))) (set! (-> cmd command) (sound-command load-music)) @@ -280,7 +280,7 @@ ) ;; definition for function sound-buffer-dump -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-buffer-dump () (let ((gp-0 (-> *sound-player-rpc* current elt-used)) (s5-0 (-> *sound-player-rpc* current elt-size)) @@ -387,8 +387,8 @@ ) ;; definition for function string->sound-name +;; INFO: Used lq/sq ;; INFO: Return type mismatch uint128 vs sound-name. -;; Used lq/sq (defun string->sound-name ((str string)) (let ((snd-name (new 'stack-no-clear 'qword))) (set! (-> snd-name quad) (the-as uint128 0)) @@ -439,7 +439,7 @@ ) ;; definition for function sound-play-by-name -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-play-by-name ((name sound-name) (id sound-id) (vol int) (pitch int) (bend int) (group sound-group) (trans symbol)) (local-vars (sv-16 sound-group)) (with-pp @@ -472,7 +472,7 @@ ) ;; definition for function sound-play-by-spec -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-play-by-spec ((spec sound-spec) (id sound-id) (trans vector)) (with-pp (when *sound-player-enable* @@ -570,7 +570,7 @@ ) ;; definition for function sound-set-sound-falloff -;; Used lq/sq +;; INFO: Used lq/sq (defun sound-set-sound-falloff ((arg0 sound-name) (arg1 int) (arg2 int) (arg3 int)) (let ((cmd (the-as sound-rpc-set-sound-falloff (get-sound-buffer-entry)))) (set! (-> cmd command) (sound-command set-sound-falloff)) @@ -603,8 +603,8 @@ (define *ambient-spec* (new 'static 'sound-spec)) ;; definition for method 0 of type ambient-sound +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs ambient-sound. -;; Used lq/sq (defmethod new ambient-sound ((allocation symbol) (type-to-make type) (arg0 basic) (arg1 vector)) (local-vars (sv-16 sound-spec) @@ -714,7 +714,7 @@ ) ;; definition for method 9 of type ambient-sound -;; Used lq/sq +;; INFO: Used lq/sq (defmethod update! ambient-sound ((obj ambient-sound)) (with-pp (if (not *ambient-sound-class*) @@ -805,7 +805,7 @@ ) ;; definition for method 11 of type ambient-sound -;; Used lq/sq +;; INFO: Used lq/sq (defmethod update-trans! ambient-sound ((obj ambient-sound) (arg0 vector)) (with-pp (set! (-> obj trans quad) (-> arg0 quad)) @@ -849,7 +849,7 @@ ) ;; definition for method 10 of type ambient-sound -;; Used lq/sq +;; INFO: Used lq/sq (defmethod change-sound! ambient-sound ((obj ambient-sound) (arg0 sound-name)) (when (not (and (= (the-as uint (-> obj name)) (the-as uint arg0)) (= (-> arg0 hi) (-> obj name hi)))) (stop! obj) diff --git a/test/decompiler/reference/jak1/engine/sparticle/sparticle-launcher_REF.gc b/test/decompiler/reference/jak1/engine/sparticle/sparticle-launcher_REF.gc index e9017ccedd..c65c8aceda 100644 --- a/test/decompiler/reference/jak1/engine/sparticle/sparticle-launcher_REF.gc +++ b/test/decompiler/reference/jak1/engine/sparticle/sparticle-launcher_REF.gc @@ -447,7 +447,7 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for function sp-queue-launch -;; Used lq/sq +;; INFO: Used lq/sq (defun sp-queue-launch ((arg0 sparticle-system) (arg1 sparticle-launcher) (arg2 vector)) (let ((v1-0 *sp-launch-queue*)) (when (= (-> v1-0 in-use) 32) @@ -595,9 +595,9 @@ (define *death-adgif* (the-as adgif-shader #f)) ;; definition for function sp-launch-particles-death +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function sp-launch-particles-death has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function sp-launch-particles-death has a return type of none, but the expression builder found a return statement. (defun sp-launch-particles-death ((arg0 sparticle-system) (arg1 sparticle-launcher) (arg2 vector)) (local-vars (v1-25 float) (v1-27 float)) (rlet ((vf0 :class vf) @@ -1033,8 +1033,8 @@ ) ;; definition for method 11 of type sparticle-launch-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defmethod spawn sparticle-launch-control ((obj sparticle-launch-control) (arg0 vector)) (set! (-> obj center quad) (-> arg0 quad)) (if (not (or (is-visible? obj arg0) (logtest? (-> obj group flags) (sp-group-flag always-draw screen-space)))) @@ -1258,8 +1258,8 @@ (define *global-toggle* 0) ;; definition for function birth-func-copy2-rot-color +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun birth-func-copy2-rot-color ((arg0 sparticle-system) (arg1 sparticle-cpuinfo) (arg2 sprite-vec-data-3d) diff --git a/test/decompiler/reference/jak1/engine/sparticle/sparticle_REF.gc b/test/decompiler/reference/jak1/engine/sparticle/sparticle_REF.gc index cae7b8b322..8df4ac0215 100644 --- a/test/decompiler/reference/jak1/engine/sparticle/sparticle_REF.gc +++ b/test/decompiler/reference/jak1/engine/sparticle/sparticle_REF.gc @@ -13,8 +13,8 @@ ) ;; definition for function sp-particle-copy! +;; INFO: Used lq/sq ;; INFO: Return type mismatch basic vs none. -;; Used lq/sq (defun sp-particle-copy! ((arg0 sparticle-cpuinfo) (arg1 sparticle-cpuinfo)) (let ((v1-1 (-> arg1 sprite x-y-z-sx quad))) (set! (-> arg0 sprite x-y-z-sx quad) v1-1) @@ -159,12 +159,12 @@ ) ;; definition for function sp-get-particle -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t3, t2] -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t3, t2] -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t3, t2] -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t3, t2] -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t3, t2] -;; WARN: Unsupported inline assembly instruction kind - [movz a2, t2, t1] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t3, t2] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t3, t2] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t3, t2] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t3, t2] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t3, t2] +;; ERROR: Unsupported inline assembly instruction kind - [movz a2, t2, t1] (defun sp-get-particle ((arg0 sparticle-system) (arg1 int) (arg2 sparticle-launch-state)) (local-vars (a2-3 int) @@ -261,7 +261,7 @@ ;; definition for function sp-kill-particle ;; INFO: Return type mismatch symbol vs none. -;; WARN: Expression building failed: Function sp-kill-particle has a return type of none, but the expression builder found a return statement. +;; WARN: Function sp-kill-particle has a return type of none, but the expression builder found a return statement. (defun sp-kill-particle ((arg0 sparticle-system) (arg1 sparticle-cpuinfo)) (cond ((>= (the-as int arg1) #x70000000) @@ -353,8 +353,8 @@ ;; ERROR: function was not converted to expressions. Cannot decompile. ;; definition for function sp-process-block +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun sp-process-block ((arg0 sparticle-system) (arg1 int) (arg2 sprite-array-2d) (arg3 int)) (local-vars (sv-16 int) @@ -444,8 +444,8 @@ (define-perm *particles-flag* symbol #t) ;; definition for function forall-particles-with-key-runner +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun forall-particles-with-key-runner ((arg0 sparticle-launch-control) (arg1 (function sparticle-system sparticle-cpuinfo none)) (arg2 sparticle-system) @@ -661,8 +661,8 @@ ;; definition for function process-particles ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [mfc0 gp, Count] -;; WARN: Unsupported inline assembly instruction kind - [mfc0 v1, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 gp, Count] +;; ERROR: Unsupported inline assembly instruction kind - [mfc0 v1, Count] (defun process-particles () (local-vars (v1-29 int) (gp-0 int)) (when *particles-flag* diff --git a/test/decompiler/reference/jak1/engine/target/joint-mod-h_REF.gc b/test/decompiler/reference/jak1/engine/target/joint-mod-h_REF.gc index 8528058592..e0585c9481 100644 --- a/test/decompiler/reference/jak1/engine/target/joint-mod-h_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/joint-mod-h_REF.gc @@ -182,8 +182,8 @@ ) ;; definition for method 14 of type joint-mod +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod set-trs! joint-mod ((obj joint-mod) (trans vector) (rot quaternion) (scale vector)) (if trans (set! (-> obj trans quad) (-> trans quad)) @@ -199,8 +199,8 @@ ) ;; definition for method 10 of type joint-mod +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod set-target! joint-mod ((obj joint-mod) (target-trans vector)) (if (= (-> obj mode) (joint-mod-handler-mode reset)) (set-mode! obj (joint-mod-handler-mode look-at)) @@ -241,8 +241,8 @@ (define last-try-to-look-at-data (new 'global 'try-to-look-at-info)) ;; definition for method 11 of type joint-mod +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod look-at-enemy! joint-mod ((obj joint-mod) (target-trans vector) (option symbol) (proc process)) (when (= option 'attacking) (let* ((s3-0 proc) @@ -295,8 +295,8 @@ ) ;; definition for function joint-mod-look-at-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun joint-mod-look-at-handler ((csp cspace) (xform transformq)) (local-vars (sv-48 vector) (sv-52 vector) (sv-56 vector)) (let ((gp-0 (the-as joint-mod (-> csp param1)))) @@ -394,8 +394,8 @@ ) ;; definition for function joint-mod-world-look-at-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun joint-mod-world-look-at-handler ((arg0 cspace) (arg1 transformq)) (local-vars (sv-48 vector) (sv-52 vector) (sv-56 vector)) (let ((gp-0 (the-as joint-mod (-> arg0 param1)))) @@ -552,8 +552,8 @@ ) ;; definition for function joint-mod-joint-set-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun joint-mod-joint-set-handler ((arg0 cspace) (arg1 transformq)) (let ((s4-0 (the-as joint-mod (-> arg0 param1)))) (set! (-> arg1 trans quad) (-> s4-0 trans quad)) @@ -620,7 +620,7 @@ ) ;; definition for function joint-mod-wheel-callback -;; Used lq/sq +;; INFO: Used lq/sq (defun joint-mod-wheel-callback ((arg0 cspace) (arg1 transformq)) (let ((s4-0 (the-as joint-mod-wheel (-> arg0 param1)))) (let ((v1-1 (-> s4-0 process root)) @@ -692,7 +692,7 @@ ) ;; definition for function joint-mod-set-local-callback -;; Used lq/sq +;; INFO: Used lq/sq (defun joint-mod-set-local-callback ((arg0 cspace) (arg1 transformq)) (let ((v1-0 (the-as joint-mod-set-local (-> arg0 param1)))) (cond @@ -717,7 +717,7 @@ ) ;; definition for method 0 of type joint-mod-set-local -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new joint-mod-set-local ((allocation symbol) (type-to-make type) (arg0 process-drawable) @@ -777,7 +777,7 @@ ) ;; definition for method 0 of type joint-mod-set-world -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new joint-mod-set-world ((allocation symbol) (type-to-make type) (arg0 process-drawable) (arg1 int) (arg2 basic)) (let ((v0-0 (object-new allocation type-to-make (the-as int (-> type-to-make size))))) (set! (-> v0-0 node-index) arg1) @@ -844,7 +844,7 @@ ) ;; definition for method 0 of type joint-mod-blend-local -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new joint-mod-blend-local ((allocation symbol) (type-to-make type) (arg0 process-drawable) (arg1 int) (arg2 basic)) (let ((v0-0 (object-new allocation type-to-make (the-as int (-> type-to-make size))))) (set! (-> v0-0 node-index) arg1) @@ -907,7 +907,7 @@ ) ;; definition for method 0 of type joint-mod-spinner -;; Used lq/sq +;; INFO: Used lq/sq (defmethod new joint-mod-spinner ((allocation symbol) (type-to-make type) (arg0 process-drawable) (arg1 int) (arg2 vector) (arg3 float)) (let ((v0-0 (object-new allocation type-to-make (the-as int (-> type-to-make size))))) (set! (-> v0-0 spin-axis quad) (-> arg2 quad)) diff --git a/test/decompiler/reference/jak1/engine/target/logic-target_REF.gc b/test/decompiler/reference/jak1/engine/target/logic-target_REF.gc index a98c1fa118..ffe17be289 100644 --- a/test/decompiler/reference/jak1/engine/target/logic-target_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/logic-target_REF.gc @@ -2,7 +2,7 @@ (in-package goal) ;; definition for function build-conversions -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior build-conversions target ((arg0 vector)) (surface-mult! (-> self control unknown-surface01) (-> self control unknown-surface00) (-> self control surf)) (when (and (and (= (-> self fact-info-target eco-type) (pickup-type eco-blue)) @@ -35,7 +35,7 @@ ) ;; definition for function vector-turn-to -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior vector-turn-to target ((arg0 vector)) (let ((gp-0 forward-up-nopitch->quaternion) (s5-0 (-> self control dir-targ)) @@ -263,11 +263,11 @@ ) ;; definition (debug) for function target-print-stats -;; WARN: Stack slot load at 160 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 176 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 160 mismatch: defined as size 4, got size 16 -;; WARN: Stack slot load at 176 mismatch: defined as size 4, got size 16 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Stack slot load at 160 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 176 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 160 mismatch: defined as size 4, got size 16 +;; ERROR: Stack slot load at 176 mismatch: defined as size 4, got size 16 (defun-debug target-print-stats ((arg0 target) (arg1 symbol)) (local-vars (sv-64 string) @@ -488,7 +488,7 @@ ) ;; definition for function read-pad -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior read-pad target ((arg0 vector)) (when (!= (-> self control unknown-dword00) (-> *display* real-frame-counter)) (set! (-> self control unknown-vector31 quad) (-> self control unknown-vector30 quad)) @@ -505,7 +505,7 @@ ) ;; definition for function warp-vector-into-surface! -;; Used lq/sq +;; INFO: Used lq/sq (defun warp-vector-into-surface! ((arg0 vector) (arg1 vector) (arg2 vector)) (let ((a2-2 (matrix-from-two-vectors! (new-stack-matrix0) (-> (matrix-local->world #t #f) vector 1) arg2))) (vector-matrix*! arg0 arg1 a2-2) @@ -513,7 +513,7 @@ ) ;; definition for function vector<-pad-in-surface! -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior vector<-pad-in-surface! target ((arg0 vector) (arg1 symbol)) (let ((a1-1 (read-pad (new-stack-vector0)))) (warp-vector-into-surface! arg0 a1-1 (-> self control local-normal)) @@ -525,7 +525,7 @@ ) ;; definition for function local-pad-angle -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior local-pad-angle target () (let ((a0-1 (vector<-pad-in-surface! (new-stack-vector0) #f))) (vector-dot @@ -536,7 +536,7 @@ ) ;; definition for function turn-around? -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior turn-around? target () (let* ((a0-1 (vector<-pad-in-surface! (new-stack-vector0) #f)) (gp-0 (vector-normalize! a0-1 1.0)) @@ -586,7 +586,7 @@ ) ;; definition for function target-move-dist -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-move-dist target ((arg0 time-frame)) (let ((s5-0 (new-stack-vector0)) (f30-0 0.0) @@ -616,7 +616,7 @@ ) ;; definition for function turn-to-vector -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior turn-to-vector target ((arg0 vector) (arg1 float)) (let ((gp-0 (new-stack-vector0))) (warp-vector-into-surface! gp-0 arg0 (-> self control local-normal)) @@ -660,7 +660,7 @@ ) ;; definition for function add-thrust -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior add-thrust target () (let ((s5-0 (-> self control unknown-vector01)) (gp-0 (-> self control unknown-vector00)) @@ -851,7 +851,7 @@ ) ;; definition for function add-gravity -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior add-gravity target () (let ((s5-0 (new-stack-vector0)) (gp-0 (new-stack-vector0)) @@ -890,7 +890,7 @@ ) ;; definition for function target-compute-slopes -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-compute-slopes target ((arg0 vector)) (let ((gp-0 (new-stack-vector0))) (let ((a1-0 (new-stack-vector0)) @@ -922,7 +922,7 @@ ) ;; definition for function do-rotations2 -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior do-rotations2 target () (let ((gp-0 (vector-z-quaternion! (new-stack-vector0) (-> self control dir-targ))) (s5-0 @@ -1020,8 +1020,8 @@ ) ;; definition for function flag-setup +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior flag-setup target () (level-setup) (set! (-> self control unknown-vector10 quad) (-> self control transv quad)) @@ -1181,7 +1181,7 @@ ) ;; definition for function bend-gravity -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior bend-gravity target () (set! (-> self control unknown-float82) (if (logtest? (-> self control status) (cshape-moving-flags onsurf)) 32.0 @@ -1261,7 +1261,7 @@ ) ;; definition for function target-compute-edge -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-compute-edge target () (let ((s5-0 *edge-grab-info*)) (if (not (dummy-9 s5-0)) @@ -1320,7 +1320,7 @@ ) ;; definition for function target-compute-edge-rider -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-compute-edge-rider target () (let ((gp-0 *edge-grab-info*)) (if (not (dummy-9 gp-0)) @@ -1350,8 +1350,8 @@ ) ;; definition for function target-compute-pole +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defbehavior target-compute-pole target () (let* ((s4-0 (handle->process (-> self control unknown-handle10))) (gp-0 (-> (the-as swingpole s4-0) dir)) @@ -1440,8 +1440,8 @@ ) ;; definition for function target-calc-camera-pos +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior target-calc-camera-pos target () (let ((gp-0 (new 'stack-no-clear 'vector))) (cond @@ -1503,8 +1503,8 @@ ) ;; definition for function joint-points +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior joint-points target () (let ((v1-0 (-> self neck))) (set! (-> v1-0 blend) 0.0) @@ -1566,7 +1566,7 @@ ) ;; definition for function target-real-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-real-post target () (let ((gp-0 (the int (-> *display* time-ratio)))) (set-time-ratios *display* 1.0) @@ -1677,7 +1677,7 @@ ) ;; definition for function target-swim-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-swim-post target () (let ((gp-0 (the int (-> *display* time-ratio)))) (set-time-ratios *display* 1.0) @@ -1742,7 +1742,7 @@ ) ;; definition for function target-no-stick-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-no-stick-post target () (let ((gp-0 (the int (-> *display* time-ratio)))) (set-time-ratios *display* 1.0) @@ -1854,7 +1854,7 @@ ) ;; definition for function target-slide-down-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-slide-down-post target () (let ((gp-0 (the int (-> *display* time-ratio)))) (set-time-ratios *display* 1.0) @@ -1952,7 +1952,7 @@ ) ;; definition for function reset-target-state -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior reset-target-state target ((arg0 symbol)) (when arg0 (vector-identity! (-> self control scale)) @@ -1982,8 +1982,8 @@ ) ;; definition for function init-target +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior init-target target ((arg0 continue-point)) (set-setting! 'allow-pause #f 0.0 0) (set-setting! 'allow-progress #f 0.0 0) diff --git a/test/decompiler/reference/jak1/engine/target/target-death_REF.gc b/test/decompiler/reference/jak1/engine/target/target-death_REF.gc index b11beaeaa0..baa50b097b 100644 --- a/test/decompiler/reference/jak1/engine/target/target-death_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/target-death_REF.gc @@ -547,7 +547,7 @@ ) ;; definition for function velocity-set-to-target! -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior velocity-set-to-target! target ((arg0 vector) (arg1 float) (arg2 attack-info)) (let* ((v1-1 (-> self control trans)) (gp-1 (vector-! (new 'stack-no-clear 'vector) arg0 v1-1)) @@ -610,8 +610,8 @@ ) ;; definition for function target-hit-push +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs object. -;; Used lq/sq (defbehavior target-hit-push target ((arg0 vector) (arg1 matrix) (arg2 float) (arg3 float) (arg4 attack-info)) (case (-> arg4 angle) (('jump 'up 'up-forward) @@ -769,8 +769,8 @@ ) ;; definition for function target-hit-move +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior target-hit-move target ((arg0 attack-info) (arg1 symbol) (arg2 (function none :behavior target)) (arg3 float)) (local-vars (v1-40 symbol) (s2-1 object)) (vector-identity! (-> self control transv)) diff --git a/test/decompiler/reference/jak1/engine/target/target-handler_REF.gc b/test/decompiler/reference/jak1/engine/target/target-handler_REF.gc index 51b01c8f6a..126e545e68 100644 --- a/test/decompiler/reference/jak1/engine/target/target-handler_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/target-handler_REF.gc @@ -2,6 +2,7 @@ (in-package goal) ;; definition for function target-generic-event-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs object. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 37] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 39] @@ -27,7 +28,6 @@ ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 524] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 552] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 563] -;; Used lq/sq (defbehavior target-generic-event-handler target ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (local-vars (v0-0 none)) (let ((v1-0 arg2)) @@ -325,7 +325,7 @@ ) ;; definition for function get-intersect-point -;; Used lq/sq +;; INFO: Used lq/sq (defun get-intersect-point ((arg0 vector) (arg1 touching-prims-entry) (arg2 control-info) (arg3 process)) (let ((a0-2 (get-touched-tri arg1 arg2 (the-as touching-shapes-entry arg3)))) (if a0-2 @@ -439,8 +439,8 @@ ) ;; definition for function target-send-attack +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs symbol. -;; Used lq/sq (defbehavior target-send-attack target ((arg0 process) (arg1 uint) (arg2 uint) (arg3 int) (arg4 int)) (local-vars (sv-96 touching-prims-entry) @@ -965,7 +965,7 @@ ) ;; definition for function target-bonk-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-bonk-event-handler target ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (let ((s4-0 (new 'stack-no-clear 'vector))) (cond @@ -1081,8 +1081,8 @@ target-post target-standard-event-handler ;; definition for function target-exit +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior target-exit target () (set! (-> self control unknown-surface00) *walk-mods*) (set! (-> self control unknown-vector13 quad) (the-as uint128 0)) diff --git a/test/decompiler/reference/jak1/engine/target/target-part_REF.gc b/test/decompiler/reference/jak1/engine/target/target-part_REF.gc index 78c9f8f7ed..d6e4027984 100644 --- a/test/decompiler/reference/jak1/engine/target/target-part_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/target-part_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function birth-func-copy-target-y-rot +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun birth-func-copy-target-y-rot ((arg0 int) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo)) (let ((v1-0 *target*)) (when v1-0 @@ -21,8 +21,8 @@ ) ;; definition for function birth-func-ground-orient +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun birth-func-ground-orient ((arg0 int) (arg1 sparticle-cpuinfo) (arg2 sparticle-launchinfo)) (local-vars (v1-11 float) (v1-12 float)) (rlet ((vf0 :class vf) @@ -2267,8 +2267,8 @@ ) ;; definition for function process-drawable-burn-effect +;; INFO: Used lq/sq ;; INFO: Return type mismatch rgbaf vs none. -;; Used lq/sq (defbehavior process-drawable-burn-effect target ((arg0 time-frame)) (sound-play "get-burned") (let ((s5-1 (new 'stack 'rgbaf)) diff --git a/test/decompiler/reference/jak1/engine/target/target-util_REF.gc b/test/decompiler/reference/jak1/engine/target/target-util_REF.gc index 43f21b60cb..9fd50a4b49 100644 --- a/test/decompiler/reference/jak1/engine/target/target-util_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/target-util_REF.gc @@ -746,8 +746,8 @@ ) ;; definition for method 16 of type target +;; INFO: Used lq/sq ;; INFO: Return type mismatch control-info vs collide-shape. -;; Used lq/sq (defmethod apply-alignment target ((obj target) (arg0 align-opts) (arg1 transformq) (arg2 vector)) (let ((s2-0 (new 'stack-no-clear 'vector))) (set! (-> s2-0 quad) (-> arg2 quad)) @@ -935,7 +935,7 @@ ) ;; definition for function can-exit-duck? -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior can-exit-duck? target () (let ((gp-0 (new 'stack-no-clear 'collide-using-spheres-params))) (let ((s5-0 (new 'stack-no-clear 'inline-array 'sphere 2))) @@ -1026,7 +1026,7 @@ ) ;; definition for function vector-local+! -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior vector-local+! target ((arg0 vector) (arg1 vector)) (let ((s5-0 (new-stack-vector0))) (vector-matrix*! s5-0 arg1 (-> self control unknown-matrix01)) @@ -1035,7 +1035,7 @@ ) ;; definition for function move-forward -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior move-forward target ((arg0 float)) (let ((a1-0 (new-stack-vector0)) (gp-0 (new-stack-vector0)) @@ -1047,7 +1047,7 @@ ) ;; definition for function set-forward-vel -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior set-forward-vel target ((arg0 float)) (let ((gp-0 (new-stack-vector0))) (vector-matrix*! gp-0 (-> self control transv) (-> self control unknown-matrix00)) @@ -1058,8 +1058,8 @@ ) ;; definition for function delete-back-vel +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior delete-back-vel target () (let ((s5-0 (new-stack-vector0))) (vector-z-quaternion! s5-0 (-> self control dir-targ)) @@ -1087,7 +1087,7 @@ ) ;; definition for function set-side-vel -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior set-side-vel target ((arg0 float)) (let ((gp-0 (new-stack-vector0))) (vector-matrix*! gp-0 (-> self control transv) (-> self control unknown-matrix00)) @@ -1119,8 +1119,8 @@ ) ;; definition for method 9 of type attack-info +;; INFO: Used lq/sq ;; INFO: Return type mismatch attack-info vs none. -;; Used lq/sq (defmethod combine! attack-info ((obj attack-info) (arg0 attack-info)) (with-pp (let ((s4-0 (-> arg0 mask))) @@ -1266,8 +1266,8 @@ ) ;; definition for function target-cam-pos +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs vector. -;; Used lq/sq (defun target-cam-pos () (let ((gp-0 *target*)) (the-as diff --git a/test/decompiler/reference/jak1/engine/target/target_REF.gc b/test/decompiler/reference/jak1/engine/target/target_REF.gc index 6d9e20c454..95e583e74c 100644 --- a/test/decompiler/reference/jak1/engine/target/target_REF.gc +++ b/test/decompiler/reference/jak1/engine/target/target_REF.gc @@ -1059,7 +1059,7 @@ ) ;; definition for function init-var-jump -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior init-var-jump target ((arg0 float) (arg1 float) (arg2 vector) (arg3 vector) (arg4 vector)) (logclear! (-> self control status) (cshape-moving-flags csmf14)) (delete-back-vel) @@ -1124,7 +1124,7 @@ ) ;; definition for function mod-var-jump -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior mod-var-jump target ((arg0 symbol) (arg1 symbol) (arg2 symbol) (arg3 vector)) (local-vars (v0-2 vector)) (let ((f30-0 (* 0.033333335 (the float (- (-> *display* base-frame-counter) (-> self state-time)))))) diff --git a/test/decompiler/reference/jak1/engine/ui/progress/progress-draw_REF.gc b/test/decompiler/reference/jak1/engine/ui/progress/progress-draw_REF.gc index dc3c6c2601..3596861414 100644 --- a/test/decompiler/reference/jak1/engine/ui/progress/progress-draw_REF.gc +++ b/test/decompiler/reference/jak1/engine/ui/progress/progress-draw_REF.gc @@ -10,8 +10,8 @@ ) ;; definition for method 24 of type progress +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod draw-fuel-cell-screen progress ((obj progress) (arg0 int)) (local-vars (sv-112 int) @@ -634,8 +634,8 @@ ) ;; definition for method 40 of type progress +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod draw-memcard-file-select progress ((obj progress) (arg0 font-context)) (local-vars (sv-16 (function _varargs_ object)) @@ -1550,8 +1550,8 @@ ) ;; definition for method 28 of type progress +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod draw-options progress ((obj progress) (arg0 int) (arg1 int) (arg2 float)) (local-vars (sv-112 font-context) diff --git a/test/decompiler/reference/jak1/engine/util/glist_REF.gc b/test/decompiler/reference/jak1/engine/util/glist_REF.gc index 1490de39a8..4ee3d8e0b4 100644 --- a/test/decompiler/reference/jak1/engine/util/glist_REF.gc +++ b/test/decompiler/reference/jak1/engine/util/glist_REF.gc @@ -111,8 +111,8 @@ ) ;; definition for function glst-find-node-by-name -;; WARN: Type Propagation failed: Failed type prop at op 7 ((set! a0 (l.wu (+ v1 8)))): Could not get type of load: (set! a0 (l.wu (+ v1 8))). -;; WARN: Type Propagation failed: Type analysis failed +;; ERROR: Type Propagation failed: Failed type prop at op 7 ((set! a0 (l.wu (+ v1 8)))): Could not get type of load: (set! a0 (l.wu (+ v1 8))). +;; ERROR: Type Propagation failed: Type analysis failed (defun glst-find-node-by-name ((a0-0 glst-list) (a1-0 string)) (local-vars (v0-0 none) @@ -172,8 +172,8 @@ ) ;; definition for function glst-length-of-longest-name -;; WARN: Type Propagation failed: Failed type prop at op 6 ((set! a0 (l.wu (+ v1 8)))): Could not get type of load: (set! a0 (l.wu (+ v1 8))). -;; WARN: Type Propagation failed: Type analysis failed +;; ERROR: Type Propagation failed: Failed type prop at op 6 ((set! a0 (l.wu (+ v1 8)))): Could not get type of load: (set! a0 (l.wu (+ v1 8))). +;; ERROR: Type Propagation failed: Type analysis failed (defun glst-length-of-longest-name ((a0-0 glst-list)) (local-vars (v0-0 none) diff --git a/test/decompiler/reference/jak1/engine/util/sync-info_REF.gc b/test/decompiler/reference/jak1/engine/util/sync-info_REF.gc index 99cd180d4a..3a3c1327bf 100644 --- a/test/decompiler/reference/jak1/engine/util/sync-info_REF.gc +++ b/test/decompiler/reference/jak1/engine/util/sync-info_REF.gc @@ -91,7 +91,7 @@ ) ;; definition for method 15 of type sync-info -;; Used lq/sq +;; INFO: Used lq/sq (defmethod load-params! sync-info ((obj sync-info) (proc process) (default-period uint) @@ -122,7 +122,7 @@ ) ;; definition for method 15 of type sync-info-eased -;; Used lq/sq +;; INFO: Used lq/sq (defmethod load-params! sync-info-eased ((obj sync-info-eased) (proc process) (default-period uint) @@ -162,7 +162,7 @@ ) ;; definition for method 15 of type sync-info-paused -;; Used lq/sq +;; INFO: Used lq/sq (defmethod load-params! sync-info-paused ((obj sync-info-paused) (proc process) (default-period uint) @@ -533,7 +533,7 @@ ) ;; definition for method 9 of type oscillating-vector -;; Used lq/sq +;; INFO: Used lq/sq (defmethod set-params! oscillating-vector ((obj oscillating-vector) (init-val vector) (accel float) (max-vel float) (damping float)) (cond (init-val diff --git a/test/decompiler/reference/jak1/kernel/gcommon_REF.gc b/test/decompiler/reference/jak1/kernel/gcommon_REF.gc index 6f66df0582..2f89c791bc 100644 --- a/test/decompiler/reference/jak1/kernel/gcommon_REF.gc +++ b/test/decompiler/reference/jak1/kernel/gcommon_REF.gc @@ -504,7 +504,7 @@ ) ;; definition for method 2 of type array -;; Used lq/sq +;; INFO: Used lq/sq (defmethod print array ((obj array)) (format #t "#(") (cond @@ -654,7 +654,7 @@ ) ;; definition for method 3 of type array -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect array ((obj array)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tallocated-length: ~D~%" (-> obj allocated-length)) @@ -760,7 +760,7 @@ ) ;; definition for function qmem-copy<-! -;; Used lq/sq +;; INFO: Used lq/sq (defun qmem-copy<-! ((dst pointer) (src pointer) (size int)) (let ((result dst)) (countdown (qwc (/ (+ size 15) 16)) @@ -773,7 +773,7 @@ ) ;; definition for function qmem-copy->! -;; Used lq/sq +;; INFO: Used lq/sq (defun qmem-copy->! ((dst pointer) (src pointer) (size int)) (let ((result dst)) (let* ((qwc (/ (+ size 15) 16)) @@ -880,9 +880,9 @@ ) ;; definition for function breakpoint-range-set! -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Debug, a0] -;; WARN: Unsupported inline assembly instruction kind - [mtdab a1] -;; WARN: Unsupported inline assembly instruction kind - [mtdabm a2] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Debug, a0] +;; ERROR: Unsupported inline assembly instruction kind - [mtdab a1] +;; ERROR: Unsupported inline assembly instruction kind - [mtdabm a2] (defun breakpoint-range-set! ((arg0 uint) (arg1 uint) (arg2 uint)) (.mtc0 Debug arg0) (.mtdab arg1) @@ -891,9 +891,9 @@ ) ;; definition for function valid? -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] (defun valid? ((obj object) (expected-type type) (name basic) (allow-false basic) (print-dest object)) (local-vars (v1-11 int) (v1-44 int) (v1-48 int) (s7-0 none)) (let ((in-goal-mem diff --git a/test/decompiler/reference/jak1/kernel/gkernel_REF.gc b/test/decompiler/reference/jak1/kernel/gkernel_REF.gc index e4cbfbf999..7e8aae732c 100644 --- a/test/decompiler/reference/jak1/kernel/gkernel_REF.gc +++ b/test/decompiler/reference/jak1/kernel/gkernel_REF.gc @@ -1369,8 +1369,8 @@ ;; definition for method 10 of type process ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr ra] +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr ra] (defmethod deactivate process ((obj process)) (local-vars (s7-0 none) (ra-0 int)) (with-pp diff --git a/test/decompiler/reference/jak1/kernel/gstate_REF.gc b/test/decompiler/reference/jak1/kernel/gstate_REF.gc index bcfbff2833..a225d9e300 100644 --- a/test/decompiler/reference/jak1/kernel/gstate_REF.gc +++ b/test/decompiler/reference/jak1/kernel/gstate_REF.gc @@ -42,10 +42,10 @@ ) ;; definition for function enter-state -;; WARN: Unsupported inline assembly instruction kind - [lwu sp, 28(v1)] -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread-dead(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr t9] -;; WARN: Unsupported inline assembly instruction kind - [sw v0, 0(sp)] +;; ERROR: Unsupported inline assembly instruction kind - [lwu sp, 28(v1)] +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread-dead(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr t9] +;; ERROR: Unsupported inline assembly instruction kind - [sw v0, 0(sp)] (defun enter-state ((arg0 object) (arg1 object) (arg2 object) (arg3 object) (arg4 object) (arg5 object)) (local-vars (s7-0 none) (sp-0 int) (ra-0 int) (sv-0 none)) (with-pp diff --git a/test/decompiler/reference/jak1/levels/beach/air_REF.gc b/test/decompiler/reference/jak1/levels/beach/air_REF.gc index cbb5bfdbf2..c44852522c 100644 --- a/test/decompiler/reference/jak1/levels/beach/air_REF.gc +++ b/test/decompiler/reference/jak1/levels/beach/air_REF.gc @@ -80,7 +80,7 @@ ) ;; definition (debug) for function add-debug-air-box -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug add-debug-air-box ((arg0 bucket-id) (arg1 air-box)) (local-vars (a0-1 symbol)) (let ((a1-1 (camera-pos)) diff --git a/test/decompiler/reference/jak1/levels/beach/beach-obs_REF.gc b/test/decompiler/reference/jak1/levels/beach/beach-obs_REF.gc index 68f1f16fc4..bc1ca9a167 100644 --- a/test/decompiler/reference/jak1/levels/beach/beach-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/beach/beach-obs_REF.gc @@ -300,8 +300,8 @@ ) ;; definition for function move-grottopole +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun move-grottopole ((arg0 grottopole) (arg1 float)) (let ((f30-0 0.0) (s4-0 (new-stack-vector0)) @@ -901,8 +901,8 @@ ) ;; definition for function flying-rock-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior flying-rock-init-by-other flying-rock ((arg0 vector) (arg1 vector) (arg2 float) (arg3 entity-actor)) (set! (-> self entity) arg3) (let ((s3-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -1110,7 +1110,7 @@ ;; definition for method 20 of type flutflutegg ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function (method 20 flutflutegg) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 20 flutflutegg) has a return type of none, but the expression builder found a return statement. (defmethod dummy-20 flutflutegg ((obj flutflutegg) (arg0 float) (arg1 float) (arg2 float)) (if (< (- (-> *display* base-frame-counter) (the-as time-frame (-> obj last-impulse-time))) (seconds 0.5)) (return 0) @@ -1420,8 +1420,8 @@ ) ;; definition for method 11 of type flutflutegg +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! flutflutegg ((obj flutflutegg) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) diff --git a/test/decompiler/reference/jak1/levels/beach/lurkercrab_REF.gc b/test/decompiler/reference/jak1/levels/beach/lurkercrab_REF.gc index fe4b8395c9..ab1dbf3795 100644 --- a/test/decompiler/reference/jak1/levels/beach/lurkercrab_REF.gc +++ b/test/decompiler/reference/jak1/levels/beach/lurkercrab_REF.gc @@ -109,7 +109,7 @@ ) ;; definition for method 43 of type lurkercrab -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-43 lurkercrab ((obj lurkercrab) (arg0 process) (arg1 event-message-block)) (let ((s5-0 (-> obj incomming-attack-id))) (set! (-> obj incomming-attack-id) (the-as handle (-> arg1 param 2))) diff --git a/test/decompiler/reference/jak1/levels/beach/seagull_REF.gc b/test/decompiler/reference/jak1/levels/beach/seagull_REF.gc index 14958345c5..21bda67cd8 100644 --- a/test/decompiler/reference/jak1/levels/beach/seagull_REF.gc +++ b/test/decompiler/reference/jak1/levels/beach/seagull_REF.gc @@ -1214,8 +1214,8 @@ ) ;; definition for function seagull-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior seagull-init-by-other seagull ((arg0 vector) (arg1 int) (arg2 seagullflock)) (let ((s3-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) (set! (-> s3-0 dynam) (copy *standard-dynamics* 'process)) @@ -1420,8 +1420,8 @@ ) ;; definition for method 11 of type seagullflock +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! seagullflock ((obj seagullflock) (arg0 entity-actor)) (logclear! (-> obj mask) (process-mask actor-pause)) (set! (-> obj path) (new 'process 'path-control obj 'path 0.0)) diff --git a/test/decompiler/reference/jak1/levels/citadel/citadel-obs_REF.gc b/test/decompiler/reference/jak1/levels/citadel/citadel-obs_REF.gc index 05418ab955..0b5cea63fc 100644 --- a/test/decompiler/reference/jak1/levels/citadel/citadel-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/citadel/citadel-obs_REF.gc @@ -1697,8 +1697,8 @@ ) ;; definition for method 21 of type citb-generator +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-21 citb-generator ((obj citb-generator)) (initialize-skeleton obj *citb-generator-sg* '()) (setup-lods! (-> obj normal-look) *citb-generator-sg* (-> obj draw art-group) (-> obj entity)) diff --git a/test/decompiler/reference/jak1/levels/citadel/citadel-sages_REF.gc b/test/decompiler/reference/jak1/levels/citadel/citadel-sages_REF.gc index 4713fdfc54..7b505a7adb 100644 --- a/test/decompiler/reference/jak1/levels/citadel/citadel-sages_REF.gc +++ b/test/decompiler/reference/jak1/levels/citadel/citadel-sages_REF.gc @@ -360,8 +360,8 @@ ) ;; definition for method 44 of type citb-sage +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs symbol. -;; Used lq/sq (defmethod play-reminder citb-sage ((obj citb-sage)) (set! (-> obj root-override pause-adjust-distance) 409600.0) (set! (-> obj cage) (ppointer->handle (process-spawn citb-sagecage obj :to obj))) @@ -396,8 +396,8 @@ ) ;; definition for method 45 of type citb-sage +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs symbol. -;; Used lq/sq (defmethod dummy-45 citb-sage ((obj citb-sage)) (set! (-> obj spawn-pos quad) (-> obj root-override trans quad)) (the-as symbol 0) @@ -449,7 +449,7 @@ ) ;; definition for function citb-sage-draw-beam -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior citb-sage-draw-beam citb-sage () (if (< (vector-vector-distance (ear-trans) (-> self spawn-pos)) 409600.0) (sound-play-by-name diff --git a/test/decompiler/reference/jak1/levels/citadel/citb-drop-plat_REF.gc b/test/decompiler/reference/jak1/levels/citadel/citb-drop-plat_REF.gc index eecc07fa81..7f831904c0 100644 --- a/test/decompiler/reference/jak1/levels/citadel/citb-drop-plat_REF.gc +++ b/test/decompiler/reference/jak1/levels/citadel/citb-drop-plat_REF.gc @@ -332,8 +332,8 @@ ) ;; definition for function drop-plat-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior drop-plat-init-by-other drop-plat ((arg0 vector) (arg1 time-frame) (arg2 time-frame) (arg3 int)) (set! (-> self color) arg3) (set! (-> self delay) arg1) @@ -425,8 +425,8 @@ ) ;; definition for function citb-drop-plat-spawn-children +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior citb-drop-plat-spawn-children citb-drop-plat () (local-vars (s0-0 int) (sv-48 process) (sv-64 int)) (let ((gp-0 (new 'stack-no-clear 'vector))) @@ -580,8 +580,8 @@ ) ;; definition for method 11 of type citb-drop-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! citb-drop-plat ((obj citb-drop-plat) (arg0 entity-actor)) (set! (-> obj root) (new 'process 'trsqv)) (process-drawable-from-entity! obj arg0) diff --git a/test/decompiler/reference/jak1/levels/citadel/citb-plat_REF.gc b/test/decompiler/reference/jak1/levels/citadel/citb-plat_REF.gc index 967dd2295c..0e459b2613 100644 --- a/test/decompiler/reference/jak1/levels/citadel/citb-plat_REF.gc +++ b/test/decompiler/reference/jak1/levels/citadel/citb-plat_REF.gc @@ -287,8 +287,8 @@ ) ;; definition for method 26 of type citb-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-26 citb-plat ((obj citb-plat)) (logclear! (-> obj mask) (process-mask actor-pause)) (set! (-> obj root-override scale quad) (-> (res-lump-struct (-> obj entity) 'scale vector) quad)) @@ -674,8 +674,8 @@ ) ;; definition for method 31 of type citb-chain-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 citb-chain-plat ((obj citb-chain-plat)) (initialize-skeleton obj *citb-chain-plat-sg* '()) (set! (-> obj orig-trans quad) (-> obj root-overlay trans quad)) diff --git a/test/decompiler/reference/jak1/levels/common/basebutton_REF.gc b/test/decompiler/reference/jak1/levels/common/basebutton_REF.gc index 6ce327163d..3d0634717e 100644 --- a/test/decompiler/reference/jak1/levels/common/basebutton_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/basebutton_REF.gc @@ -68,7 +68,7 @@ ) ;; definition for method 30 of type basebutton -;; Used lq/sq +;; INFO: Used lq/sq (defmethod move-to-vec-or-quat! basebutton ((obj basebutton) (arg0 vector) (arg1 quaternion)) (set! (-> obj move-to?) #t) (if arg0 @@ -456,8 +456,8 @@ ) ;; definition for function basebutton-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior basebutton-init-by-other basebutton ((arg0 entity-actor) (arg1 vector) (arg2 quaternion) (arg3 entity-actor) (arg4 symbol) (arg5 float)) (reset! self) (set! (-> self spawned-by-other?) #t) diff --git a/test/decompiler/reference/jak1/levels/common/baseplat_REF.gc b/test/decompiler/reference/jak1/levels/common/baseplat_REF.gc index cf631b7687..83c18b0a63 100644 --- a/test/decompiler/reference/jak1/levels/common/baseplat_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/baseplat_REF.gc @@ -35,8 +35,8 @@ ) ;; definition for method 21 of type baseplat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-21 baseplat ((obj baseplat)) (logior! (-> obj skel status) (janim-status inited)) (set! (-> obj basetrans quad) (-> obj root-override trans quad)) @@ -76,7 +76,7 @@ ) ;; definition for function plat-trans -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior plat-trans baseplat () (rider-trans) (cond @@ -162,7 +162,7 @@ ) ;; definition for method 3 of type eco-door -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect eco-door ((obj eco-door)) (let ((t9-0 (method-of-type process-drawable inspect))) (t9-0 obj) diff --git a/test/decompiler/reference/jak1/levels/common/battlecontroller_REF.gc b/test/decompiler/reference/jak1/levels/common/battlecontroller_REF.gc index 2526e4feaa..59898774d6 100644 --- a/test/decompiler/reference/jak1/levels/common/battlecontroller_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/battlecontroller_REF.gc @@ -133,7 +133,7 @@ ) ;; definition for function battlecontroller-default-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior battlecontroller-default-event-handler battlecontroller ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('child-die) @@ -718,8 +718,8 @@ battlecontroller-default-event-handler ) ;; definition for method 27 of type battlecontroller +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-27 battlecontroller ((obj battlecontroller)) (local-vars (sv-16 res-tag)) (set! (-> obj fact) diff --git a/test/decompiler/reference/jak1/levels/common/blocking-plane_REF.gc b/test/decompiler/reference/jak1/levels/common/blocking-plane_REF.gc index 9c1d684878..99a314653c 100644 --- a/test/decompiler/reference/jak1/levels/common/blocking-plane_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/blocking-plane_REF.gc @@ -42,8 +42,8 @@ ) ;; definition for function blocking-plane-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior blocking-plane-init-by-other blocking-plane ((arg0 curve-control) (arg1 int)) (if (or (not arg0) (logtest? (-> arg0 flags) (path-control-flag not-found))) (deactivate self) diff --git a/test/decompiler/reference/jak1/levels/common/joint-exploder_REF.gc b/test/decompiler/reference/jak1/levels/common/joint-exploder_REF.gc index 11d7c05930..e6e20cd1a2 100644 --- a/test/decompiler/reference/jak1/levels/common/joint-exploder_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/joint-exploder_REF.gc @@ -237,7 +237,7 @@ ) ;; definition for method 24 of type joint-exploder -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-24 joint-exploder ((obj joint-exploder) (arg0 joint-exploder-list) (arg1 int)) (let ((v0-0 (TODO-RENAME-26 obj arg0 arg1))) (let* ((v1-1 (-> obj joints)) @@ -301,8 +301,8 @@ ) ;; definition for method 21 of type joint-exploder +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-21 joint-exploder ((obj joint-exploder) (arg0 joint-exploder-list) (arg1 joint-exploder-joint)) (let ((a1-1 (-> arg1 mat vector 3))) (cond @@ -321,7 +321,7 @@ ) ;; definition for method 27 of type joint-exploder -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-27 joint-exploder ((obj joint-exploder) (arg0 joint-exploder-list) (arg1 int)) (local-vars (sv-16 int) (sv-32 int) (sv-48 int)) (let ((s4-0 (the-as joint-exploder-list #f))) @@ -453,7 +453,7 @@ ) ;; definition for method 25 of type joint-exploder -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-25 joint-exploder ((obj joint-exploder) (arg0 joint-exploder-list)) (set! (-> arg0 bbox-valid?) #f) (set! (-> arg0 pre-moved?) #t) @@ -498,7 +498,7 @@ ) ;; definition for method 22 of type joint-exploder -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-22 joint-exploder ((obj joint-exploder) (arg0 joint-exploder-list)) (fill-using-bounding-box *collide-cache* @@ -624,7 +624,7 @@ ) ;; definition for method 23 of type joint-exploder -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-23 joint-exploder ((obj joint-exploder)) (let ((gp-0 (-> obj joints))) (dotimes (s4-0 (-> gp-0 num-joints)) @@ -731,8 +731,8 @@ ) ;; definition for function joint-exploder-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior joint-exploder-init-by-other joint-exploder ((arg0 skeleton-group) (arg1 int) (arg2 joint-exploder-static-params) (arg3 joint-exploder-static-params)) (set! (-> self static-params) arg3) (set! (-> self die-if-beyond-xz-dist-sqrd) 10485760000.0) diff --git a/test/decompiler/reference/jak1/levels/common/nav-enemy_REF.gc b/test/decompiler/reference/jak1/levels/common/nav-enemy_REF.gc index 89e9076527..118b9b1f92 100644 --- a/test/decompiler/reference/jak1/levels/common/nav-enemy_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/nav-enemy_REF.gc @@ -188,8 +188,8 @@ ) ;; definition for function nav-enemy-default-event-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior nav-enemy-default-event-handler nav-enemy ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('touch) @@ -292,8 +292,8 @@ nav-enemy-default-event-handler ) ;; definition for method 41 of type nav-enemy +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-41 nav-enemy ((obj nav-enemy)) (cond ((-> obj nav-info use-align) @@ -441,8 +441,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-chase-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-chase-post nav-enemy () (set! (-> self nav target-pos quad) (-> (target-pos 0) quad)) (nav-enemy-travel-post) @@ -451,8 +451,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-flee-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-flee-post nav-enemy () (let ((gp-1 (vector-! (new 'stack-no-clear 'vector) (-> self collide-info trans) (target-pos 0)))) (vector-z-quaternion! (new 'stack-no-clear 'vector) (-> self collide-info quat)) @@ -481,8 +481,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-falling-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-falling-post nav-enemy () (vector-v++! (-> self collide-info transv) @@ -499,8 +499,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-death-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-death-post nav-enemy () (vector-v++! (-> self collide-info transv) @@ -592,7 +592,7 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-facing-direction? -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior nav-enemy-facing-direction? nav-enemy ((arg0 vector) (arg1 float)) (let ((s4-0 (vector-z-quaternion! (new 'stack-no-clear 'vector) (-> self collide-info quat))) (s5-0 (new 'stack-no-clear 'vector)) @@ -692,8 +692,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-set-hit-from-direction +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-set-hit-from-direction nav-enemy ((arg0 process)) (let* ((gp-0 (-> self hit-from-dir)) (s5-0 arg0) @@ -1081,8 +1081,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-reset-frustration +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-reset-frustration nav-enemy () (logclear! (-> self nav-enemy-flags) (nav-enemy-flags navenmf13)) (if *target* @@ -1454,8 +1454,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-jump-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-jump-post nav-enemy () (if (logtest? (-> self nav-enemy-flags) (nav-enemy-flags enable-travel)) (seek-to-point-toward-point! @@ -1479,8 +1479,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-initialize-custom-jump +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-initialize-custom-jump nav-enemy ((arg0 vector) (arg1 symbol) (arg2 float) (arg3 float) (arg4 float)) (set! (-> self jump-dest quad) (-> arg0 quad)) (let* ((s4-0 (-> self collide-info trans)) @@ -1533,8 +1533,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-execute-custom-jump +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior nav-enemy-execute-custom-jump nav-enemy ((arg0 int) (arg1 float) (arg2 float)) (when (logtest? (-> self nav-enemy-flags) (nav-enemy-flags standing-jump)) (ja-no-eval :num! (loop!)) @@ -1645,7 +1645,7 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-jump-land-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior nav-enemy-jump-land-post nav-enemy () (compute-alignment! (-> self align)) (dummy-11 (-> self nav) (-> self nav target-pos)) @@ -1904,8 +1904,8 @@ nav-enemy-default-event-handler ) ;; definition for function nav-enemy-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior nav-enemy-init-by-other nav-enemy ((arg0 battlecontroller) (arg1 vector) (arg2 vector)) (initialize-collision self) (logior! (-> self mask) (process-mask actor-pause)) @@ -1959,7 +1959,7 @@ nav-enemy-default-event-handler ) ;; definition for method 50 of type nav-enemy -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-50 nav-enemy ((obj nav-enemy) (arg0 vector)) (let ((s4-0 (new 'stack-no-clear 'vector))) (set! (-> s4-0 quad) (-> obj collide-info trans quad)) diff --git a/test/decompiler/reference/jak1/levels/common/orb-cache_REF.gc b/test/decompiler/reference/jak1/levels/common/orb-cache_REF.gc index 18677dd8da..31a1e481ef 100644 --- a/test/decompiler/reference/jak1/levels/common/orb-cache_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/orb-cache_REF.gc @@ -139,7 +139,7 @@ ) ;; definition for method 27 of type orb-cache-top -;; Used lq/sq +;; INFO: Used lq/sq (defmethod pos-logic orb-cache-top ((obj orb-cache-top) (arg0 symbol)) (dotimes (s4-0 (-> obj money)) (when (not (handle->process (-> obj money-list s4-0))) diff --git a/test/decompiler/reference/jak1/levels/common/plat-button_REF.gc b/test/decompiler/reference/jak1/levels/common/plat-button_REF.gc index a8ed46570b..d9c1e733a4 100644 --- a/test/decompiler/reference/jak1/levels/common/plat-button_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/plat-button_REF.gc @@ -460,7 +460,7 @@ ) ;; definition for method 11 of type plat-button -;; Used lq/sq +;; INFO: Used lq/sq (defmethod init-from-entity! plat-button ((obj plat-button) (arg0 entity-actor)) (set! (-> obj go-back-if-lost-player?) #f) (set! (-> obj grab-player?) #f) diff --git a/test/decompiler/reference/jak1/levels/common/rigid-body_REF.gc b/test/decompiler/reference/jak1/levels/common/rigid-body_REF.gc index 0e555a39fd..81d085a686 100644 --- a/test/decompiler/reference/jak1/levels/common/rigid-body_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/rigid-body_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for method 11 of type rigid-body +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod clear-force-torque! rigid-body ((obj rigid-body)) (set! (-> obj force quad) (-> *null-vector* quad)) (set! (-> obj torque quad) (-> *null-vector* quad)) @@ -12,8 +12,8 @@ ) ;; definition for method 12 of type rigid-body +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod clear-momentum! rigid-body ((obj rigid-body)) (set! (-> obj lin-momentum quad) (-> *null-vector* quad)) (set! (-> obj ang-momentum quad) (-> *null-vector* quad)) @@ -31,8 +31,8 @@ ) ;; definition for method 22 of type rigid-body +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-22 rigid-body ((obj rigid-body) (arg0 vector) (arg1 quaternion) (arg2 float) (arg3 float)) (clear-force-torque! obj) (clear-momentum! obj) @@ -129,8 +129,8 @@ ) ;; definition for method 10 of type rigid-body +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-10 rigid-body ((obj rigid-body) (arg0 float)) (vector+*! (-> obj lin-momentum) (-> obj lin-momentum) (-> obj force) arg0) (vector+*! (-> obj ang-momentum) (-> obj ang-momentum) (-> obj torque) arg0) @@ -540,8 +540,8 @@ ) ;; definition for method 28 of type rigid-body-platform +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-28 rigid-body-platform ((obj rigid-body-platform)) (if (-> obj info platform) (detect-riders! (-> obj root-overlay)) @@ -570,7 +570,7 @@ ) ;; definition for function rigid-body-platform-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior rigid-body-platform-event-handler rigid-body-platform ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('bonk) @@ -762,8 +762,8 @@ ) ;; definition for method 29 of type rigid-body-platform +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-29 rigid-body-platform ((obj rigid-body-platform) (arg0 rigid-body-platform-constants)) (set! (-> obj info) arg0) (set! (-> obj control-point-array) diff --git a/test/decompiler/reference/jak1/levels/common/ropebridge_REF.gc b/test/decompiler/reference/jak1/levels/common/ropebridge_REF.gc index edd9faaa92..ba18c99a5a 100644 --- a/test/decompiler/reference/jak1/levels/common/ropebridge_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/ropebridge_REF.gc @@ -690,7 +690,7 @@ ;; definition for method 20 of type ropebridge ;; INFO: Return type mismatch symbol vs none. -;; WARN: Expression building failed: Function (method 20 ropebridge) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 20 ropebridge) has a return type of none, but the expression builder found a return statement. (defmethod set-vel-from-impact ropebridge ((obj ropebridge) (arg0 uint) (arg1 vector) (arg2 int) (arg3 float)) (loop (let ((f0-2 (fabs (- (-> arg1 z) (-> obj spring-point (the-as int arg0) local-pos z))))) @@ -715,8 +715,8 @@ ) ;; definition for method 23 of type ropebridge +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defmethod clear-spring-forces ropebridge ((obj ropebridge)) (let ((v1-0 (the-as ropebridge-spring-point (-> obj spring-point)))) (countdown (a0-2 (-> obj tuning num-spring-points)) @@ -764,7 +764,7 @@ ;; definition for method 22 of type ropebridge ;; INFO: Return type mismatch symbol vs none. -;; WARN: Expression building failed: Function (method 22 ropebridge) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 22 ropebridge) has a return type of none, but the expression builder found a return statement. (defmethod set-vel-from-rider ropebridge ((obj ropebridge) (arg0 uint) (arg1 vector) (arg2 int)) (loop (let ((f0-0 (vector-vector-distance arg1 (the-as vector (-> obj spring-point (the-as int arg0)))))) @@ -978,8 +978,8 @@ ) ;; definition for function ropebridge-joint-callback +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun ropebridge-joint-callback ((arg0 ropebridge)) (let ((s5-0 (-> arg0 node-list data 3 bone transform))) (matrix-identity! s5-0) diff --git a/test/decompiler/reference/jak1/levels/common/sharkey_REF.gc b/test/decompiler/reference/jak1/levels/common/sharkey_REF.gc index 06afebb474..df99fde80b 100644 --- a/test/decompiler/reference/jak1/levels/common/sharkey_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/sharkey_REF.gc @@ -161,8 +161,8 @@ nav-enemy-default-event-handler ) ;; definition for method 39 of type sharkey +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod common-post sharkey ((obj sharkey)) (let ((f30-0 (-> obj water height)) (s5-0 (new 'stack-no-clear 'vector)) @@ -200,8 +200,8 @@ nav-enemy-default-event-handler ) ;; definition for function sharkey-get-player-position +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun sharkey-get-player-position ((arg0 vector)) (set! (-> arg0 quad) (-> (target-pos 5) quad)) 0 @@ -209,8 +209,8 @@ nav-enemy-default-event-handler ) ;; definition for function sharkey-reset-position +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior sharkey-reset-position sharkey () (set! (-> self collide-info trans quad) (-> self entity extra trans quad)) 0 @@ -218,7 +218,7 @@ nav-enemy-default-event-handler ) ;; definition for function sharkey-move-to-attack-position -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior sharkey-move-to-attack-position sharkey () (let ((s5-0 (new 'stack-no-clear 'vector)) (s3-0 (new 'stack-no-clear 'vector)) @@ -703,8 +703,8 @@ nav-enemy-default-event-handler ) ;; definition for method 11 of type sharkey +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! sharkey ((obj sharkey) (arg0 entity-actor)) (set! (-> obj scale) (res-lump-float arg0 'scale :default 1.0)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/common/water-anim_REF.gc b/test/decompiler/reference/jak1/levels/common/water-anim_REF.gc index a8f542111d..334da653d2 100644 --- a/test/decompiler/reference/jak1/levels/common/water-anim_REF.gc +++ b/test/decompiler/reference/jak1/levels/common/water-anim_REF.gc @@ -608,8 +608,8 @@ ) ;; definition for method 25 of type water-anim +;; INFO: Used lq/sq ;; INFO: Return type mismatch quaternion vs none. -;; Used lq/sq (defmethod TODO-RENAME-25 water-anim ((obj water-anim)) (local-vars (sv-16 res-tag)) (set! (-> obj play-ambient-sound?) #t) diff --git a/test/decompiler/reference/jak1/levels/darkcave/darkcave-obs_REF.gc b/test/decompiler/reference/jak1/levels/darkcave/darkcave-obs_REF.gc index f2782013d8..b8b5b6a0fd 100644 --- a/test/decompiler/reference/jak1/levels/darkcave/darkcave-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/darkcave/darkcave-obs_REF.gc @@ -234,8 +234,8 @@ ) ;; definition for method 11 of type cavecrystal +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! cavecrystal ((obj cavecrystal) (arg0 entity-actor)) (set! (-> obj glow-u) 0.0) (set! (-> obj player-attack-id) (the-as uint 0)) diff --git a/test/decompiler/reference/jak1/levels/demo/static-screen_REF.gc b/test/decompiler/reference/jak1/levels/demo/static-screen_REF.gc index 8ca811c2b1..ef8c3d2aa6 100644 --- a/test/decompiler/reference/jak1/levels/demo/static-screen_REF.gc +++ b/test/decompiler/reference/jak1/levels/demo/static-screen_REF.gc @@ -167,8 +167,8 @@ ) ;; definition for function static-screen-spawn +;; INFO: Used lq/sq ;; INFO: Return type mismatch (pointer process) vs (pointer static-screen). -;; Used lq/sq (defun static-screen-spawn ((arg0 int) (arg1 texture-id) (arg2 texture-id) diff --git a/test/decompiler/reference/jak1/levels/finalboss/final-door_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/final-door_REF.gc index cff26908e5..562abd3213 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/final-door_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/final-door_REF.gc @@ -347,8 +347,8 @@ ) ;; definition for function powercellalt-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior powercellalt-init-by-other powercellalt ((arg0 entity-actor) (arg1 vector) (arg2 vector) (arg3 int)) (set! (-> self entity) arg0) (let ((s3-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/finalboss/green-eco-lurker_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/green-eco-lurker_REF.gc index 36a028cfab..6705ebefdf 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/green-eco-lurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/green-eco-lurker_REF.gc @@ -386,7 +386,7 @@ ) ;; definition for method 51 of type green-eco-lurker -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-51 green-eco-lurker ((obj green-eco-lurker) (arg0 vector)) (when (or (not *target*) (>= (vector-vector-xz-distance arg0 (target-pos 0)) 36864.0)) (let ((v1-3 (new 'stack-no-clear 'vector))) @@ -812,8 +812,8 @@ ) ;; definition for function green-eco-lurker-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior green-eco-lurker-init-by-other green-eco-lurker ((arg0 entity-actor) (arg1 green-eco-lurker-gen) (arg2 vector)) (initialize-collision self) (set! (-> self collide-info trans quad) (-> arg2 quad)) @@ -872,8 +872,8 @@ ) ;; definition for function green-eco-lurker-gen-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior green-eco-lurker-gen-init-by-other green-eco-lurker-gen ((arg0 entity-actor) (arg1 vector) (arg2 int)) (set! (-> self num-to-spawn) arg2) (set! (-> self num-spawned) 0) diff --git a/test/decompiler/reference/jak1/levels/finalboss/light-eco_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/light-eco_REF.gc index 482b8a43be..8df4f96807 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/light-eco_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/light-eco_REF.gc @@ -584,8 +584,8 @@ ) ;; definition for function light-eco-child-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior light-eco-child-init-by-other light-eco-child ((arg0 entity-actor) (arg1 vector) (arg2 vector) (arg3 int)) (set! (-> self entity) arg0) (set! (-> self angle-bit) arg3) @@ -821,8 +821,8 @@ ) ;; definition for function light-eco-mother-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior light-eco-mother-init-by-other light-eco-mother ((arg0 entity-actor) (arg1 vector)) (set! (-> self entity) arg0) (set! (-> self last-update-time) 0) diff --git a/test/decompiler/reference/jak1/levels/finalboss/robotboss-misc_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/robotboss-misc_REF.gc index 179114e617..862d30a168 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/robotboss-misc_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/robotboss-misc_REF.gc @@ -173,10 +173,10 @@ ) ;; definition for function ecoclaw-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs object. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 28] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 79] -;; Used lq/sq (defbehavior ecoclaw-handler ecoclaw ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (let ((v1-0 arg2)) (the-as diff --git a/test/decompiler/reference/jak1/levels/finalboss/robotboss-weapon_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/robotboss-weapon_REF.gc index a86921209e..9f31943b46 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/robotboss-weapon_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/robotboss-weapon_REF.gc @@ -85,8 +85,8 @@ ) ;; definition for method 9 of type torus +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-9 torus ((obj torus) (arg0 vector)) (local-vars (sv-256 int) (sv-272 int) (sv-288 int)) (let ((s0-0 (new 'stack-no-clear 'vector)) @@ -197,7 +197,7 @@ ) ;; definition for function arcing-shot-setup -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior arcing-shot-setup arcing-shot ((arg0 vector) (arg1 vector) (arg2 float)) (set! (-> self from quad) (-> arg0 quad)) (set! (-> self to quad) (-> arg1 quad)) @@ -231,7 +231,7 @@ ) ;; definition for function arcing-shot-draw -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior arcing-shot-draw arcing-shot () (let ((gp-0 (new 'stack-no-clear 'vector)) (s5-0 (new 'stack-no-clear 'vector)) @@ -506,8 +506,8 @@ ) ;; definition for function darkecobomb-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior darkecobomb-init-by-other darkecobomb ((arg0 vector) (arg1 vector) (arg2 float) (arg3 time-frame) (arg4 float)) (let ((s1-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) (set! (-> s1-0 dynam) (copy *standard-dynamics* 'process)) @@ -599,8 +599,8 @@ ) ;; definition for function greenshot-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior greenshot-init-by-other greenshot ((arg0 vector) (arg1 vector) (arg2 float) (arg3 time-frame)) (let ((s2-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) (set! (-> s2-0 dynam) (copy *standard-dynamics* 'process)) @@ -856,8 +856,8 @@ ) ;; definition for function redshot-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior redshot-init-by-other redshot ((arg0 vector) (arg1 vector) (arg2 float) (arg3 time-frame) (arg4 time-frame) (arg5 int)) (local-vars (sv-16 collide-shape-prim-sphere)) (let ((s0-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) @@ -956,8 +956,8 @@ ) ;; definition for function yellowshot-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior yellowshot-init-by-other yellowshot ((arg0 vector) (arg1 vector) (arg2 float) (arg3 time-frame)) (let ((s2-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) (set! (-> s2-0 dynam) (copy *standard-dynamics* 'process)) diff --git a/test/decompiler/reference/jak1/levels/finalboss/robotboss_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/robotboss_REF.gc index c0b482ba5c..10bd3b7187 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/robotboss_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/robotboss_REF.gc @@ -41,7 +41,7 @@ ) ;; definition for function robotboss-cut-cam -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior robotboss-cut-cam robotboss ((arg0 float) (arg1 float) (arg2 int)) (let ((f0-0 (ja-aframe-num 0))) (cond @@ -288,7 +288,7 @@ ) ;; definition for function robotboss-position -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior robotboss-position robotboss () (let ((s5-0 (-> self entity extra trans)) (gp-0 (new 'stack-no-clear 'vector)) @@ -338,8 +338,8 @@ ) ;; definition for function robotboss-darkecobomb +;; INFO: Used lq/sq ;; INFO: Return type mismatch (pointer process) vs (pointer part-tracker). -;; Used lq/sq (defbehavior robotboss-darkecobomb robotboss ((arg0 vector) (arg1 float)) (+! (-> self children-spawned) 1) (let ((gp-0 (new 'stack-no-clear 'vector))) @@ -882,8 +882,8 @@ ) ;; definition for function robotboss-yellowshot +;; INFO: Used lq/sq ;; INFO: Return type mismatch sound-id vs none. -;; Used lq/sq (defbehavior robotboss-yellowshot robotboss () (+! (-> self children-spawned) 1) (let ((gp-0 (new 'stack-no-clear 'vector))) @@ -1394,8 +1394,8 @@ ) ;; definition for function robotboss-redshot-fill-array +;; INFO: Used lq/sq ;; INFO: Return type mismatch symbol vs none. -;; Used lq/sq (defbehavior robotboss-redshot-fill-array robotboss ((arg0 redshot-launch-array)) (let ((s2-0 0) (s4-0 (new 'stack-no-clear 'vector)) @@ -1457,8 +1457,8 @@ ) ;; definition for function robotboss-redshot -;; WARN: Stack slot load at 64 mismatch: defined as size 4, got size 16 -;; Used lq/sq +;; INFO: Used lq/sq +;; ERROR: Stack slot load at 64 mismatch: defined as size 4, got size 16 (defbehavior robotboss-redshot robotboss ((arg0 redshot-launch-info) (arg1 symbol)) (local-vars (sv-32 redshot-launch-info) (sv-48 vector) (sv-64 float) (sv-80 time-frame) (sv-96 time-frame)) (set! sv-32 arg0) @@ -1955,8 +1955,8 @@ ) ;; definition for function robotboss-greenshot +;; INFO: Used lq/sq ;; INFO: Return type mismatch sound-id vs none. -;; Used lq/sq (defbehavior robotboss-greenshot robotboss ((arg0 vector) (arg1 float) (arg2 int) (arg3 symbol)) (+! (-> self children-spawned) 1) (let ((gp-0 (new 'stack-no-clear 'vector))) @@ -2377,8 +2377,8 @@ ) ;; definition for function robotboss-blue-beam +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior robotboss-blue-beam robotboss ((arg0 int) (arg1 symbol)) (let ((s4-0 (new 'stack-no-clear 'vector)) (gp-0 (new 'stack-no-clear 'vector)) @@ -2760,8 +2760,8 @@ ) ;; definition for method 11 of type robotboss +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! robotboss ((obj robotboss) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum usually-hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/finalboss/sage-finalboss_REF.gc b/test/decompiler/reference/jak1/levels/finalboss/sage-finalboss_REF.gc index 14525a628c..db14883cab 100644 --- a/test/decompiler/reference/jak1/levels/finalboss/sage-finalboss_REF.gc +++ b/test/decompiler/reference/jak1/levels/finalboss/sage-finalboss_REF.gc @@ -353,7 +353,7 @@ ) ;; definition for method 32 of type sage-finalboss -;; Used lq/sq +;; INFO: Used lq/sq (defmethod play-anim! sage-finalboss ((obj sage-finalboss) (arg0 symbol)) (case (current-status (-> obj tasks)) (((task-status unknown)) diff --git a/test/decompiler/reference/jak1/levels/flut_common/target-flut_REF.gc b/test/decompiler/reference/jak1/levels/flut_common/target-flut_REF.gc index 7f45d51622..7c853c4c19 100644 --- a/test/decompiler/reference/jak1/levels/flut_common/target-flut_REF.gc +++ b/test/decompiler/reference/jak1/levels/flut_common/target-flut_REF.gc @@ -205,8 +205,8 @@ ) ;; definition for function target-flut-post-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior target-flut-post-post target () (vector+! (-> self flut flut-trans) (-> self control trans) (-> self control unknown-vector12)) (quaternion-copy! (the-as quaternion (-> self flut flut-quat)) (-> self control quat)) @@ -308,7 +308,7 @@ ) ;; definition for function target-flut-standard-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-flut-standard-event-handler target ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (cond ((and (= arg2 'query) (= (-> arg3 param 0) 'mode)) diff --git a/test/decompiler/reference/jak1/levels/jungle/fisher_REF.gc b/test/decompiler/reference/jak1/levels/jungle/fisher_REF.gc index f4ad8a5248..48a617d27d 100644 --- a/test/decompiler/reference/jak1/levels/jungle/fisher_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungle/fisher_REF.gc @@ -927,8 +927,8 @@ ) ;; definition for function fisher-fish-water +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior fisher-fish-water fisher-fish ((arg0 vector) (arg1 float)) (let ((gp-0 (new 'stack-no-clear 'vector))) (set! (-> gp-0 quad) (-> arg0 quad)) @@ -952,8 +952,8 @@ ) ;; definition for function fisher-fish-move +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior fisher-fish-move fisher-fish () (+! (-> self pos) (* (-> self vel) (-> *display* seconds-per-frame))) (eval-path-curve-div! (-> (the-as fisher (-> self parent 0)) path) (-> self root trans) (-> self pos) 'interp) @@ -2099,7 +2099,7 @@ ) ;; definition for method 11 of type fisher -;; Used lq/sq +;; INFO: Used lq/sq (defmethod init-from-entity! fisher ((obj fisher) (arg0 entity-actor)) (dummy-40 obj arg0 *fisher-sg* 3 49 (new 'static 'vector :w 4096.0) 33) (set! (-> obj tasks) (get-task-control (game-task jungle-fishgame))) diff --git a/test/decompiler/reference/jak1/levels/jungle/hopper_REF.gc b/test/decompiler/reference/jak1/levels/jungle/hopper_REF.gc index 374e10ecd2..e2d6ce90b1 100644 --- a/test/decompiler/reference/jak1/levels/jungle/hopper_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungle/hopper_REF.gc @@ -48,8 +48,8 @@ nav-enemy-default-event-handler ) ;; definition for function hopper-find-ground +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defbehavior hopper-find-ground hopper ((arg0 vector)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let ((t1-0 (new 'stack-no-clear 'collide-tri-result)) @@ -80,8 +80,8 @@ nav-enemy-default-event-handler ) ;; definition for function hopper-jump-to +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior hopper-jump-to hopper ((arg0 vector)) (set! (-> self jump-dest quad) (-> arg0 quad)) (hopper-find-ground (-> self jump-dest)) diff --git a/test/decompiler/reference/jak1/levels/jungle/jungle-mirrors_REF.gc b/test/decompiler/reference/jak1/levels/jungle/jungle-mirrors_REF.gc index a9c8538991..800aa84ffa 100644 --- a/test/decompiler/reference/jak1/levels/jungle/jungle-mirrors_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungle/jungle-mirrors_REF.gc @@ -836,8 +836,8 @@ ) ;; definition for function reflector-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior reflector-init-by-other reflector ((arg0 vector)) (set! (-> self entity) (-> self parent-override 0 entity)) (let ((s5-0 (new 'process 'collide-shape self (collide-list-enum hit-by-player)))) @@ -862,7 +862,7 @@ ) ;; definition for function periscope-crosshair -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior periscope-crosshair periscope () (let ((s3-0 (matrix-local->world #f #f)) (s5-0 (new 'static 'vector4w-4)) @@ -1011,8 +1011,8 @@ ) ;; definition for function periscope-find-next +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior periscope-find-next periscope () (let ((gp-0 (-> self link next))) (let ((a0-0 (-> self link prev))) @@ -1047,7 +1047,7 @@ ) ;; definition for function periscope-find-aim-at-angles -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior periscope-find-aim-at-angles periscope () (let ((a0-0 (-> self link next)) (gp-0 (new 'stack-no-clear 'vector)) @@ -1065,7 +1065,7 @@ ) ;; definition for function periscope-find-reflection-angles -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior periscope-find-reflection-angles periscope () (let ((a0-0 (-> self link next)) (s2-0 (-> self link prev)) @@ -1780,8 +1780,8 @@ ) ;; definition for method 11 of type periscope +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! periscope ((obj periscope) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (let ((s4-0 (new 'process 'collide-shape obj (collide-list-enum hit-by-others)))) @@ -1867,8 +1867,8 @@ ) ;; definition for function reflector-origin-update +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior reflector-origin-update reflector-origin ((arg0 entity-actor)) (when arg0 (set! (-> self next-reflector-trans quad) (-> arg0 extra trans quad)) @@ -1931,8 +1931,8 @@ ) ;; definition for method 11 of type reflector-origin +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! reflector-origin ((obj reflector-origin) (arg0 entity-actor)) (set! (-> obj root) (new 'process 'trsqv)) (process-drawable-from-entity! obj arg0) diff --git a/test/decompiler/reference/jak1/levels/jungle/jungle-obs_REF.gc b/test/decompiler/reference/jak1/levels/jungle/jungle-obs_REF.gc index ec27437c66..3d82b7ce09 100644 --- a/test/decompiler/reference/jak1/levels/jungle/jungle-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungle/jungle-obs_REF.gc @@ -483,8 +483,8 @@ ) ;; definition for method 11 of type lurkerm-piston +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! lurkerm-piston ((obj lurkerm-piston) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag)) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) @@ -904,8 +904,8 @@ ) ;; definition for method 11 of type precurbridge +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! precurbridge ((obj precurbridge) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/jungle/junglesnake_REF.gc b/test/decompiler/reference/jak1/levels/jungle/junglesnake_REF.gc index 6f98629ba3..e864383af7 100644 --- a/test/decompiler/reference/jak1/levels/jungle/junglesnake_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungle/junglesnake_REF.gc @@ -231,8 +231,8 @@ junglesnake-default-event-handler ) ;; definition for function junglesnake-joint-callback +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun junglesnake-joint-callback ((arg0 junglesnake)) (let ((s5-0 arg0)) (let ((s4-0 (new 'stack-no-clear 'matrix)) diff --git a/test/decompiler/reference/jak1/levels/jungleb/aphid_REF.gc b/test/decompiler/reference/jak1/levels/jungleb/aphid_REF.gc index 3928d51b56..aed3e53162 100644 --- a/test/decompiler/reference/jak1/levels/jungleb/aphid_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungleb/aphid_REF.gc @@ -307,8 +307,8 @@ ) ;; definition for function aphid-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior aphid-init-by-other aphid ((arg0 nav-enemy) (arg1 vector) (arg2 vector)) (initialize-collision self) (logior! (-> self mask) (process-mask actor-pause)) diff --git a/test/decompiler/reference/jak1/levels/jungleb/plant-boss_REF.gc b/test/decompiler/reference/jak1/levels/jungleb/plant-boss_REF.gc index fa6dece8bc..d6a96d46c8 100644 --- a/test/decompiler/reference/jak1/levels/jungleb/plant-boss_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungleb/plant-boss_REF.gc @@ -616,8 +616,8 @@ ) ;; definition for function plant-boss-arm-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior plant-boss-arm-init plant-boss-arm ((arg0 vector) (arg1 float) (arg2 int)) (stack-size-set! (-> self main-thread) 128) (let ((s3-0 (new 'process 'collide-shape self (collide-list-enum hit-by-player)))) @@ -668,8 +668,8 @@ ) ;; definition for function plant-boss-back-arms-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior plant-boss-back-arms-init plant-boss-arm ((arg0 vector) (arg1 float) (arg2 int)) (stack-size-set! (-> self main-thread) 128) (let ((s3-0 (new 'process 'collide-shape self (collide-list-enum hit-by-player)))) @@ -711,8 +711,8 @@ ) ;; definition for function plant-boss-vine-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior plant-boss-vine-init plant-boss-arm ((arg0 vector) (arg1 vector) (arg2 float) (arg3 int)) (stack-size-set! (-> self main-thread) 128) (set! (-> self root-override) (the-as collide-shape (new 'process 'trsqv))) @@ -726,8 +726,8 @@ ) ;; definition for function plant-boss-root-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior plant-boss-root-init plant-boss-arm ((arg0 vector) (arg1 vector) (arg2 vector) (arg3 int)) (stack-size-set! (-> self main-thread) 128) (set! (-> self root-override) (the-as collide-shape (new 'process 'trsqv))) @@ -978,8 +978,8 @@ ) ;; definition for function plant-boss-leaf-init +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior plant-boss-leaf-init plant-boss-leaf ((arg0 vector) (arg1 float) (arg2 int)) (stack-size-set! (-> self main-thread) 128) (let ((s3-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -1847,8 +1847,8 @@ ) ;; definition for method 11 of type plant-boss +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! plant-boss ((obj plant-boss) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (let ((s4-0 (new 'process 'collide-shape obj (collide-list-enum hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/jungleb/plat-flip_REF.gc b/test/decompiler/reference/jak1/levels/jungleb/plat-flip_REF.gc index e077e44452..6c8cc5c475 100644 --- a/test/decompiler/reference/jak1/levels/jungleb/plat-flip_REF.gc +++ b/test/decompiler/reference/jak1/levels/jungleb/plat-flip_REF.gc @@ -121,8 +121,8 @@ ) ;; definition for method 11 of type plat-flip +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! plat-flip ((obj plat-flip) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag) (sv-48 res-tag)) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/lavatube/lavatube-energy_REF.gc b/test/decompiler/reference/jak1/levels/lavatube/lavatube-energy_REF.gc index 80b6180722..41b91488ad 100644 --- a/test/decompiler/reference/jak1/levels/lavatube/lavatube-energy_REF.gc +++ b/test/decompiler/reference/jak1/levels/lavatube/lavatube-energy_REF.gc @@ -951,8 +951,8 @@ ) ;; definition for function energyball-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior energyball-init-by-other energyball ((arg0 vector)) (energyball-init self) (set! (-> self root-override trans quad) (-> arg0 quad)) @@ -1212,8 +1212,8 @@ ) ;; definition for function energyarm-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior energyarm-init-by-other energyarm ((arg0 vector) (arg1 float)) (energyarm-init self) (let* ((v1-0 (-> self parent-overide)) diff --git a/test/decompiler/reference/jak1/levels/lavatube/lavatube-obs_REF.gc b/test/decompiler/reference/jak1/levels/lavatube/lavatube-obs_REF.gc index b678f50766..ec558412e6 100644 --- a/test/decompiler/reference/jak1/levels/lavatube/lavatube-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/lavatube/lavatube-obs_REF.gc @@ -543,8 +543,8 @@ ) ;; definition for function darkecobarrel-mover-pos +;; INFO: Used lq/sq ;; INFO: Return type mismatch uint vs none. -;; Used lq/sq (defbehavior darkecobarrel-mover-pos darkecobarrel-mover () (let ((f30-0 (darkecobarrel-base-pos (-> self start-time)))) (if (darkecobarrel-base-done? f30-0) @@ -823,8 +823,8 @@ ) ;; definition for method 11 of type darkecobarrel +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! darkecobarrel ((obj darkecobarrel) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj root-override) (the-as collide-shape-moving (new 'process 'trsqv))) diff --git a/test/decompiler/reference/jak1/levels/maincave/baby-spider_REF.gc b/test/decompiler/reference/jak1/levels/maincave/baby-spider_REF.gc index b303ab0ae5..f047d3ef10 100644 --- a/test/decompiler/reference/jak1/levels/maincave/baby-spider_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/baby-spider_REF.gc @@ -264,7 +264,7 @@ baby-spider-default-event-handler ;; definition for method 39 of type baby-spider -;; Used lq/sq +;; INFO: Used lq/sq (defmethod common-post baby-spider ((obj baby-spider)) (when (logtest? (-> obj collide-info status) (cshape-moving-flags onsurf)) (vector-deg-seek (-> obj up-vector) (-> obj up-vector) (-> obj collide-info surface-normal) 910.2222) @@ -310,8 +310,8 @@ baby-spider-default-event-handler ) ;; definition for method 52 of type baby-spider +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs symbol. -;; Used lq/sq (defmethod dummy-52 baby-spider ((obj baby-spider) (arg0 vector)) (+! (-> obj wiggle-angle) (-> obj delta-wiggle-angle)) (if (< 65536.0 (-> obj wiggle-angle)) @@ -746,8 +746,8 @@ baby-spider-default-event-handler ) ;; definition for method 48 of type baby-spider +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-48 baby-spider ((obj baby-spider)) (set! (-> obj last-visible-time) (-> *display* base-frame-counter)) (initialize-skeleton obj *baby-spider-sg* '()) @@ -774,8 +774,8 @@ baby-spider-default-event-handler ) ;; definition for function baby-spider-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior baby-spider-init-by-other baby-spider ((arg0 baby-spider) (arg1 vector) (arg2 vector) (arg3 baby-spider-spawn-params)) (set! (-> self event-death) (-> arg3 event-death)) (set! (-> self die-if-not-visible?) (-> arg3 die-if-not-visible?)) diff --git a/test/decompiler/reference/jak1/levels/maincave/cavecrystal-light_REF.gc b/test/decompiler/reference/jak1/levels/maincave/cavecrystal-light_REF.gc index 36bef615e1..6f577344a9 100644 --- a/test/decompiler/reference/jak1/levels/maincave/cavecrystal-light_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/cavecrystal-light_REF.gc @@ -66,8 +66,8 @@ (define *cavecrystal-light-control* (new 'static 'cavecrystal-light-control :head #f)) ;; definition for function cavecrystal-light-control-default-callback +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defun cavecrystal-light-control-default-callback ((arg0 (pointer process-drawable)) (arg1 int) (arg2 float)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let ((v1-1 (-> arg0 0 node-list))) @@ -188,9 +188,9 @@ ) ;; definition for method 9 of type cavecrystal-light-control +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; WARN: Expression building failed: Function (method 9 cavecrystal-light-control) has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function (method 9 cavecrystal-light-control) has a return type of none, but the expression builder found a return statement. (defmethod TODO-RENAME-9 cavecrystal-light-control ((obj cavecrystal-light-control) (arg0 int) (arg1 float) (arg2 process-drawable)) (TODO-RENAME-12 obj) (when (or (< arg0 0) (>= arg0 7)) diff --git a/test/decompiler/reference/jak1/levels/maincave/dark-crystal_REF.gc b/test/decompiler/reference/jak1/levels/maincave/dark-crystal_REF.gc index d09b54c09d..d237501c2b 100644 --- a/test/decompiler/reference/jak1/levels/maincave/dark-crystal_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/dark-crystal_REF.gc @@ -596,8 +596,8 @@ ) ;; definition for method 20 of type dark-crystal +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod dummy-20 dark-crystal ((obj dark-crystal)) (when *target* (let ((s5-0 (new 'stack-no-clear 'vector)) @@ -651,8 +651,8 @@ ) ;; definition for method 11 of type dark-crystal +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! dark-crystal ((obj dark-crystal) (arg0 entity-actor)) (set-vector! (-> obj unlit-color-mult) 0.5 0.5 0.5 1.0) (set-vector! (-> obj unlit-color-emissive) 0.0 0.0 0.0 0.0) diff --git a/test/decompiler/reference/jak1/levels/maincave/driller-lurker_REF.gc b/test/decompiler/reference/jak1/levels/maincave/driller-lurker_REF.gc index 55d1a5c246..61910078ea 100644 --- a/test/decompiler/reference/jak1/levels/maincave/driller-lurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/driller-lurker_REF.gc @@ -240,7 +240,7 @@ ) ;; definition for function driller-lurker-default-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior driller-lurker-default-event-handler driller-lurker ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (local-vars (sv-96 collide-shape-prim)) (cond @@ -353,7 +353,7 @@ ) ;; definition for method 20 of type driller-lurker -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-20 driller-lurker ((obj driller-lurker) (arg0 symbol) (arg1 target)) (let ((v1-1 (-> *display* base-frame-counter))) (when (!= v1-1 (-> obj last-update-time)) @@ -1037,8 +1037,8 @@ ) ;; definition for method 11 of type driller-lurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! driller-lurker ((obj driller-lurker) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj hit-player?) #f) diff --git a/test/decompiler/reference/jak1/levels/maincave/gnawer_REF.gc b/test/decompiler/reference/jak1/levels/maincave/gnawer_REF.gc index 702d9dc36c..d0d3c700a1 100644 --- a/test/decompiler/reference/jak1/levels/maincave/gnawer_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/gnawer_REF.gc @@ -443,8 +443,8 @@ ) ;; definition for function gnawer-falling-segment-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior gnawer-falling-segment-init-by-other gnawer-falling-segment ((arg0 gnawer) (arg1 vector) (arg2 vector)) (set! (-> self entity) (-> arg0 entity)) (set! (-> self mask) (logior (process-mask enemy) (-> self mask))) @@ -487,8 +487,8 @@ ) ;; definition for method 23 of type gnawer +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defmethod dummy-23 gnawer ((obj gnawer)) (when (not (-> obj hidden?)) (set! (-> obj hidden?) #t) @@ -518,8 +518,8 @@ ) ;; definition for method 24 of type gnawer +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-24 gnawer ((obj gnawer)) (local-vars (sv-48 vector) (sv-64 vector)) (let ((s5-0 0) @@ -619,7 +619,7 @@ ) ;; definition for method 22 of type gnawer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-22 gnawer ((obj gnawer) (arg0 float)) (let ((s4-0 (new 'stack-no-clear 'bounding-box)) (a3-0 #t) @@ -679,7 +679,7 @@ ) ;; definition for method 21 of type gnawer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-21 gnawer ((obj gnawer) (arg0 int) (arg1 bounding-box) (arg2 symbol) (arg3 float)) (let ((gp-0 (-> obj segments arg0))) (let ((f0-1 (+ 10240.0 (-> obj route surface-dist)))) @@ -751,7 +751,7 @@ ) ;; definition for method 20 of type gnawer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-20 gnawer ((obj gnawer) (arg0 int)) (let ((v1-3 (-> obj segments arg0)) (a0-1 (-> obj segments (+ arg0 -1))) @@ -881,7 +881,7 @@ ) ;; definition for method 30 of type gnawer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-30 gnawer ((obj gnawer) (arg0 process-drawable)) (local-vars (sv-48 vector)) (let ((gp-0 (-> obj entity extra perm))) @@ -1476,8 +1476,8 @@ ) ;; definition for method 11 of type gnawer +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! gnawer ((obj gnawer) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag) (sv-48 res-tag)) (set! (-> obj hidden?) #f) diff --git a/test/decompiler/reference/jak1/levels/maincave/maincave-obs_REF.gc b/test/decompiler/reference/jak1/levels/maincave/maincave-obs_REF.gc index c02565990e..e99352b697 100644 --- a/test/decompiler/reference/jak1/levels/maincave/maincave-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/maincave-obs_REF.gc @@ -605,8 +605,8 @@ ) ;; definition for method 11 of type caveflamepots +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! caveflamepots ((obj caveflamepots) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag) (sv-48 res-tag)) (set! (-> obj was-deadly?) #f) @@ -1015,7 +1015,7 @@ ) ;; definition for function cavecrystal-light-control-caveelevator-callback -;; Used lq/sq +;; INFO: Used lq/sq (defun cavecrystal-light-control-caveelevator-callback ((arg0 (pointer cavecrystal)) (arg1 int) (arg2 float)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let ((v1-1 (-> arg0 0 node-list))) @@ -1035,7 +1035,7 @@ ) ;; definition for method 20 of type caveelevator -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-20 caveelevator ((obj caveelevator)) (let ((v1-1 (-> *display* base-frame-counter))) (when (!= v1-1 (-> obj last-update-bounce-time)) @@ -1273,8 +1273,8 @@ ) ;; definition for function caveelevator-joint-callback +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun caveelevator-joint-callback ((arg0 caveelevator)) (let* ((gp-0 arg0) (f1-1 (- (-> arg0 node-list data 3 bone transform vector 3 y) (-> gp-0 orig-trans y))) @@ -1297,8 +1297,8 @@ ) ;; definition for method 11 of type caveelevator +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! caveelevator ((obj caveelevator) (arg0 entity-actor)) (local-vars (v1-43 int) (sv-16 res-tag)) (set! (-> obj prev-frame-num) 10000.0) diff --git a/test/decompiler/reference/jak1/levels/maincave/mother-spider-egg_REF.gc b/test/decompiler/reference/jak1/levels/maincave/mother-spider-egg_REF.gc index fb74f80e2b..b54c073e80 100644 --- a/test/decompiler/reference/jak1/levels/maincave/mother-spider-egg_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/mother-spider-egg_REF.gc @@ -180,7 +180,7 @@ ) ;; definition for method 21 of type mother-spider-egg -;; Used lq/sq +;; INFO: Used lq/sq (defmethod draw-egg-shadow mother-spider-egg ((obj mother-spider-egg) (arg0 vector) (arg1 symbol)) (cond ((and (-> obj draw shadow) @@ -505,8 +505,8 @@ ) ;; definition for function mother-spider-egg-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior mother-spider-egg-init-by-other mother-spider-egg ((arg0 entity-actor) (arg1 vector) (arg2 vector) (arg3 vector)) (set! (-> self entity) arg0) (set! (-> self anim-speed) (rand-vu-float-range 0.8 1.2)) diff --git a/test/decompiler/reference/jak1/levels/maincave/mother-spider-proj_REF.gc b/test/decompiler/reference/jak1/levels/maincave/mother-spider-proj_REF.gc index 9384ccc538..5fa579f1fc 100644 --- a/test/decompiler/reference/jak1/levels/maincave/mother-spider-proj_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/mother-spider-proj_REF.gc @@ -340,8 +340,8 @@ ) ;; definition for method 27 of type mother-spider-proj +;; INFO: Used lq/sq ;; INFO: Return type mismatch sound-id vs none. -;; Used lq/sq (defmethod dummy-27 mother-spider-proj ((obj mother-spider-proj)) (set! (-> obj part) (create-launch-control (-> *part-group-id-table* 326) obj)) (set! (-> obj max-speed) 32768.0) @@ -359,8 +359,8 @@ ) ;; definition for method 28 of type mother-spider-proj +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defmethod dummy-28 mother-spider-proj ((obj mother-spider-proj)) (when (and *target* (zero? (logand (-> *target* state-flags) diff --git a/test/decompiler/reference/jak1/levels/maincave/mother-spider_REF.gc b/test/decompiler/reference/jak1/levels/maincave/mother-spider_REF.gc index a94db29380..e00deab5e1 100644 --- a/test/decompiler/reference/jak1/levels/maincave/mother-spider_REF.gc +++ b/test/decompiler/reference/jak1/levels/maincave/mother-spider_REF.gc @@ -176,8 +176,8 @@ ) ;; definition for function mother-spider-leg-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior mother-spider-leg-init-by-other mother-spider-leg ((arg0 mother-spider) (arg1 vector) (arg2 vector) (arg3 vector)) (set! (-> self entity) (-> arg0 entity)) (set! (-> self mask) (logior (process-mask enemy) (-> self mask))) @@ -400,7 +400,7 @@ ) ;; definition for method 24 of type mother-spider -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-24 mother-spider ((obj mother-spider)) (cond ((and (-> obj draw shadow) @@ -511,7 +511,7 @@ ) ;; definition for method 21 of type mother-spider -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-21 mother-spider ((obj mother-spider) (arg0 vector) (arg1 float) (arg2 symbol)) (local-vars (sv-112 process) (sv-128 vector) (sv-144 vector)) (let ((f30-0 (vector-length (-> obj swing-pos)))) @@ -645,8 +645,8 @@ ) ;; definition for method 23 of type mother-spider +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-23 mother-spider ((obj mother-spider)) (local-vars (at-0 int)) (rlet ((vf0 :class vf) @@ -1362,7 +1362,7 @@ ) ;; definition for method 20 of type mother-spider -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-20 mother-spider ((obj mother-spider) (arg0 vector) (arg1 vector)) (set! (-> obj nav nav-cull-radius) 40960.0) (set-current-poly! (-> obj nav) (dummy-16 (-> obj nav) (-> obj root-override trans))) @@ -1648,8 +1648,8 @@ ) ;; definition for function mother-spider-full-joint-callback +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun mother-spider-full-joint-callback ((arg0 mother-spider)) (/ (-> arg0 dist-from-anchor) (-> arg0 max-dist-from-anchor)) (let ((a1-0 (the-as matrix #f))) @@ -1747,8 +1747,8 @@ ) ;; definition for method 11 of type mother-spider +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! mother-spider ((obj mother-spider) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-64 vector)) (set! (-> obj baby-count) 0) diff --git a/test/decompiler/reference/jak1/levels/misty/babak-with-cannon_REF.gc b/test/decompiler/reference/jak1/levels/misty/babak-with-cannon_REF.gc index be0920e535..d093003c2d 100644 --- a/test/decompiler/reference/jak1/levels/misty/babak-with-cannon_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/babak-with-cannon_REF.gc @@ -148,14 +148,14 @@ nav-enemy-default-event-handler ) ;; definition for function babak-with-cannon-compute-cannon-dir -;; Used lq/sq +;; INFO: Used lq/sq (defun babak-with-cannon-compute-cannon-dir ((arg0 mistycannon) (arg1 vector)) (set! (-> arg1 quad) (-> arg0 node-list data 3 bone transform vector 2 quad)) arg1 ) ;; definition for function babak-with-cannon-compute-ride-point -;; Used lq/sq +;; INFO: Used lq/sq (defun babak-with-cannon-compute-ride-point ((arg0 mistycannon) (arg1 vector)) (set! (-> arg1 quad) (-> arg0 root-override trans quad)) (let ((a1-4 (new 'static 'vector :y 18149.377 :z -17289.217 :w 1.0)) diff --git a/test/decompiler/reference/jak1/levels/misty/balloonlurker_REF.gc b/test/decompiler/reference/jak1/levels/misty/balloonlurker_REF.gc index a8dd70f4a4..ff45efa8ff 100644 --- a/test/decompiler/reference/jak1/levels/misty/balloonlurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/balloonlurker_REF.gc @@ -410,8 +410,8 @@ ) ;; definition for function balloonlurker-get-path-point +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior balloonlurker-get-path-point balloonlurker ((arg0 int)) (if (<= (-> self path curve num-cverts) 0) (go process-drawable-art-error "no path") @@ -440,7 +440,7 @@ ) ;; definition for function balloonlurker-snap-to-path-point -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior balloonlurker-snap-to-path-point balloonlurker ((arg0 int)) (let ((s4-0 (new 'stack-no-clear 'vector)) (gp-0 (new 'stack-no-clear 'vector)) @@ -455,8 +455,8 @@ ) ;; definition for function balloonlurker-find-nearest-path-point +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior balloonlurker-find-nearest-path-point balloonlurker () (let ((gp-0 0)) (let ((f30-0 409600000.0) @@ -480,7 +480,7 @@ ) ;; definition for function balloonlurker-player-impulse -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior balloonlurker-player-impulse balloonlurker () (when *target* (set! (-> self player-impulse) (the-as collide-shape-prim-mesh #t)) @@ -491,7 +491,7 @@ ) ;; definition for function balloonlurker-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior balloonlurker-event-handler balloonlurker ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('touch 'attack) @@ -548,8 +548,8 @@ ) ;; definition for method 23 of type balloonlurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-23 balloonlurker ((obj balloonlurker) (arg0 float)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let ((s3-0 (new 'stack-no-clear 'vector)) @@ -691,7 +691,7 @@ ) ;; definition for function balloonlurker-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior balloonlurker-post balloonlurker () (set! (-> self anim-frame) (ja-frame-num 0)) (cond @@ -1028,8 +1028,8 @@ ) ;; definition for function balloonlurker-pilot-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior balloonlurker-pilot-init-by-other balloonlurker-pilot ((arg0 balloonlurker)) (set! (-> self mask) (logior (process-mask enemy) (-> self mask))) (dummy-20 self) @@ -1103,8 +1103,8 @@ ) ;; definition for method 31 of type balloonlurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 balloonlurker ((obj balloonlurker)) (logclear! (-> obj mask) (process-mask actor-pause)) (initialize-skeleton obj *balloonlurker-sg* '()) @@ -1170,7 +1170,7 @@ ;; definition for method 11 of type balloonlurker ;; INFO: Return type mismatch object vs none. -;; WARN: Expression building failed: Function (method 11 balloonlurker) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 11 balloonlurker) has a return type of none, but the expression builder found a return statement. (defmethod init-from-entity! balloonlurker ((obj balloonlurker) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask enemy) (-> obj mask))) (TODO-RENAME-30 obj) diff --git a/test/decompiler/reference/jak1/levels/misty/bonelurker_REF.gc b/test/decompiler/reference/jak1/levels/misty/bonelurker_REF.gc index eac2be0a00..78e512b2cc 100644 --- a/test/decompiler/reference/jak1/levels/misty/bonelurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/bonelurker_REF.gc @@ -144,7 +144,7 @@ nav-enemy-default-event-handler ;; definition for function bonelurker-push-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior bonelurker-push-post bonelurker () (compute-alignment! (-> self align)) (dummy-11 (-> self nav) (-> self nav target-pos)) diff --git a/test/decompiler/reference/jak1/levels/misty/misty-conveyor_REF.gc b/test/decompiler/reference/jak1/levels/misty/misty-conveyor_REF.gc index 59d2748de1..acf846f3a0 100644 --- a/test/decompiler/reference/jak1/levels/misty/misty-conveyor_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/misty-conveyor_REF.gc @@ -438,8 +438,8 @@ ) ;; definition for function keg-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior keg-init-by-other keg ((arg0 keg) (arg1 int)) (stack-size-set! (-> self main-thread) 512) (let ((s4-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -590,8 +590,8 @@ ) ;; definition for function keg-conveyor-paddle-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior keg-conveyor-paddle-init-by-other keg-conveyor-paddle ((arg0 keg-conveyor-paddle)) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) (set! (-> s5-0 dynam) (copy *standard-dynamics* 'process)) @@ -638,9 +638,9 @@ ) ;; definition for method 11 of type keg-conveyor +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; WARN: Expression building failed: Function (method 11 keg-conveyor) has a return type of none, but the expression builder found a return statement. -;; Used lq/sq +;; WARN: Function (method 11 keg-conveyor) has a return type of none, but the expression builder found a return statement. (defmethod init-from-entity! keg-conveyor ((obj keg-conveyor) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask enemy death) (-> obj mask))) (set! (-> obj root) (new 'process 'trsqv)) diff --git a/test/decompiler/reference/jak1/levels/misty/misty-obs_REF.gc b/test/decompiler/reference/jak1/levels/misty/misty-obs_REF.gc index 373103d6b5..fd5a9d83fb 100644 --- a/test/decompiler/reference/jak1/levels/misty/misty-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/misty-obs_REF.gc @@ -1235,7 +1235,7 @@ ) ;; definition for function mis-bone-bridge-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior mis-bone-bridge-event-handler mis-bone-bridge ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('attack) @@ -1841,8 +1841,8 @@ ) ;; definition for method 31 of type bone-platform +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 bone-platform ((obj bone-platform)) (initialize-skeleton obj *mis-bone-platform-sg* '()) (TODO-RENAME-29 obj *bone-platform-constants*) @@ -1999,7 +1999,7 @@ ) ;; definition (debug) for function misty-cam-restore -;; Used lq/sq +;; INFO: Used lq/sq (defun-debug misty-cam-restore () (let ((a0-0 (new-stack-vector0)) (a1-0 (new-stack-matrix0)) diff --git a/test/decompiler/reference/jak1/levels/misty/misty-teetertotter_REF.gc b/test/decompiler/reference/jak1/levels/misty/misty-teetertotter_REF.gc index 17be8b9f63..95ad9a3870 100644 --- a/test/decompiler/reference/jak1/levels/misty/misty-teetertotter_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/misty-teetertotter_REF.gc @@ -38,7 +38,7 @@ ) ;; definition for function target-on-end-of-teetertotter? -;; Used lq/sq +;; INFO: Used lq/sq (defun target-on-end-of-teetertotter? ((arg0 teetertotter)) (let ((gp-1 (vector-! (new-stack-vector0) (-> *target* control trans) (-> arg0 root trans)))) (if (< (vector-dot (vector-x-quaternion! (new-stack-vector0) (-> arg0 root quat)) gp-1) -8192.0) diff --git a/test/decompiler/reference/jak1/levels/misty/misty-warehouse_REF.gc b/test/decompiler/reference/jak1/levels/misty/misty-warehouse_REF.gc index 42da64d90c..bccae768b3 100644 --- a/test/decompiler/reference/jak1/levels/misty/misty-warehouse_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/misty-warehouse_REF.gc @@ -221,8 +221,8 @@ ) ;; definition for method 25 of type rounddoor +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-25 rounddoor ((obj rounddoor)) (initialize-skeleton obj *rounddoor-sg* '()) (set! (-> obj open-distance) 69632.0) diff --git a/test/decompiler/reference/jak1/levels/misty/mistycannon_REF.gc b/test/decompiler/reference/jak1/levels/misty/mistycannon_REF.gc index 234f00ee3d..62f6056c73 100644 --- a/test/decompiler/reference/jak1/levels/misty/mistycannon_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/mistycannon_REF.gc @@ -1034,8 +1034,8 @@ ) ;; definition for function mistycannon-missile-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior mistycannon-missile-init-by-other mistycannon-missile ((arg0 mistycannon-init-data) (arg1 entity-actor)) (set! (-> self mask) (logior (process-mask projectile) (-> self mask))) (logclear! (-> self mask) (process-mask actor-pause)) @@ -1203,7 +1203,7 @@ ;; definition for method 22 of type mistycannon ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function (method 22 mistycannon) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 22 mistycannon) has a return type of none, but the expression builder found a return statement. (defmethod dummy-22 mistycannon ((obj mistycannon) (arg0 float) (arg1 float) (arg2 float)) (if (not (-> obj postbindinfo-ok)) (return #f) @@ -1341,8 +1341,8 @@ ) ;; definition for function mistycannon-postbind-function +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defun mistycannon-postbind-function ((arg0 mistycannon)) (set! (-> arg0 launch-origin quad) (-> arg0 node-list data 4 bone transform vector 3 quad)) (let ((s5-0 (new 'stack-no-clear 'vector))) @@ -1508,7 +1508,7 @@ ;; definition for function mistycannon-do-aim ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function mistycannon-do-aim has a return type of none, but the expression builder found a return statement. +;; WARN: Function mistycannon-do-aim has a return type of none, but the expression builder found a return statement. (defbehavior mistycannon-do-aim mistycannon ((arg0 vector) (arg1 vector)) (if (not (-> self postbindinfo-ok)) (return #f) @@ -1850,8 +1850,8 @@ ) ;; definition for method 11 of type mistycannon +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! mistycannon ((obj mistycannon) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag) (sv-48 res-tag)) (set! (-> obj mask) (logior (process-mask enemy) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/misty/muse_REF.gc b/test/decompiler/reference/jak1/levels/misty/muse_REF.gc index 3b51bece7d..dcc7c5c44d 100644 --- a/test/decompiler/reference/jak1/levels/misty/muse_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/muse_REF.gc @@ -74,7 +74,7 @@ ) ;; definition for function analyze-point-on-path-segment -;; Used lq/sq +;; INFO: Used lq/sq (defun analyze-point-on-path-segment ((arg0 point-on-path-segment-info)) (vector-! (-> arg0 dir) (-> arg0 segment 1) (the-as vector (-> arg0 segment))) (vector-normalize! (-> arg0 dir) 1.0) @@ -116,8 +116,8 @@ ) ;; definition for function muse-check-dest-point +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior muse-check-dest-point muse () (let ((gp-0 (new 'stack-no-clear 'point-on-path-segment-info)) (f26-0 4096000.0) @@ -527,8 +527,8 @@ nav-enemy-default-event-handler ) ;; definition for method 11 of type muse +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! muse ((obj muse) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (set! (-> obj mask) (logior (process-mask enemy) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/misty/quicksandlurker_REF.gc b/test/decompiler/reference/jak1/levels/misty/quicksandlurker_REF.gc index ba69c67184..afc2b2c1b8 100644 --- a/test/decompiler/reference/jak1/levels/misty/quicksandlurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/misty/quicksandlurker_REF.gc @@ -430,8 +430,8 @@ ) ;; definition for function quicksandlurker-missile-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior quicksandlurker-missile-init-by-other quicksandlurker-missile ((arg0 quicksandlurker-missile-init-data) (arg1 entity-actor)) (set! (-> self entity) arg1) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -769,8 +769,8 @@ ) ;; definition for function quicksandlurker-spit +;; INFO: Used lq/sq ;; INFO: Return type mismatch (pointer process) vs (pointer part-tracker). -;; Used lq/sq (defbehavior quicksandlurker-spit quicksandlurker () (let ((gp-0 (new-stack-vector0))) (let ((s5-0 (new-stack-vector0))) @@ -960,8 +960,8 @@ ) ;; definition for method 11 of type quicksandlurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! quicksandlurker ((obj quicksandlurker) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask enemy) (-> obj mask))) (let ((s4-0 (new 'process 'collide-shape obj (collide-list-enum usually-hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/ogre/flying-lurker_REF.gc b/test/decompiler/reference/jak1/levels/ogre/flying-lurker_REF.gc index f3d5ab6006..61049c8a32 100644 --- a/test/decompiler/reference/jak1/levels/ogre/flying-lurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/ogre/flying-lurker_REF.gc @@ -379,8 +379,8 @@ ) ;; definition for method 20 of type flying-lurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-20 flying-lurker ((obj flying-lurker)) (with-pp (let ((s5-0 (-> obj draw shadow-ctrl)) @@ -510,8 +510,8 @@ ) ;; definition for function flying-lurker-calc-speed +;; INFO: Used lq/sq ;; INFO: Return type mismatch float vs none. -;; Used lq/sq (defbehavior flying-lurker-calc-speed flying-lurker ((arg0 meters) (arg1 meters) (arg2 meters) (arg3 meters)) (let ((s4-1 (vector-! (new 'stack-no-clear 'vector) (target-pos 0) (-> self root trans))) (s3-0 (new 'stack-no-clear 'vector)) @@ -1271,8 +1271,8 @@ ) ;; definition for method 11 of type flying-lurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! flying-lurker ((obj flying-lurker) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (set! (-> obj root) (new 'process 'trsqv)) diff --git a/test/decompiler/reference/jak1/levels/ogre/ogre-obs_REF.gc b/test/decompiler/reference/jak1/levels/ogre/ogre-obs_REF.gc index 249af0bf39..d3d69dd1cc 100644 --- a/test/decompiler/reference/jak1/levels/ogre/ogre-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/ogre/ogre-obs_REF.gc @@ -616,8 +616,8 @@ ) ;; definition for method 31 of type ogre-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 ogre-plat ((obj ogre-plat)) (set! (-> obj float-height-offset) (-> obj idle-y-offset)) (let ((s5-0 (-> obj info control-point-count))) diff --git a/test/decompiler/reference/jak1/levels/ogre/ogreboss_REF.gc b/test/decompiler/reference/jak1/levels/ogre/ogreboss_REF.gc index fea5aa2b2c..85fb8ee737 100644 --- a/test/decompiler/reference/jak1/levels/ogre/ogreboss_REF.gc +++ b/test/decompiler/reference/jak1/levels/ogre/ogreboss_REF.gc @@ -365,8 +365,8 @@ ) ;; definition for function ogreboss-missile-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior ogreboss-missile-init-by-other ogreboss-missile ((arg0 ogreboss-missile-init-data) (arg1 entity-actor)) (set! (-> self entity) arg1) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -609,8 +609,8 @@ ) ;; definition for function ogreboss-super-boulder-play-hit-anim +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs object. -;; Used lq/sq (defbehavior ogreboss-super-boulder-play-hit-anim ogreboss-super-boulder () (set! (-> self src-pos quad) (-> self root-override trans quad)) (ja-no-eval :group! ogreboss-super-boulder-hit-ja :num! (seek!) :frame-num 0.0) @@ -819,8 +819,8 @@ ) ;; definition for function ogreboss-super-boulder-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior ogreboss-super-boulder-init-by-other ogreboss-super-boulder ((arg0 vector) (arg1 float) (arg2 entity-actor)) (set! (-> self entity) arg2) (let ((s4-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-others)))) @@ -968,8 +968,8 @@ ) ;; definition for function ogreboss-bounce-boulder-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior ogreboss-bounce-boulder-init-by-other ogreboss-bounce-boulder ((arg0 int) (arg1 entity-actor)) (set! (-> self entity) arg1) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum hit-by-player)))) @@ -1347,8 +1347,8 @@ ) ;; definition for function ogreboss-shoot-boulder +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior ogreboss-shoot-boulder ogreboss ((arg0 pickup-type)) (let ((gp-0 (new 'stack-no-clear 'ogreboss-missile-init-data))) (let ((s5-0 (new 'stack-no-clear 'vector))) @@ -1526,8 +1526,8 @@ ) ;; definition for function ogreboss-move-near +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior ogreboss-move-near ogreboss ((arg0 time-frame) (arg1 float)) (when (not (-> self at-near-spot)) (ogreboss-submerge arg0 arg1) @@ -1540,8 +1540,8 @@ ) ;; definition for function ogreboss-move-far +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior ogreboss-move-far ogreboss ((arg0 time-frame) (arg1 float)) (when (-> self at-near-spot) (ogreboss-submerge arg0 arg1) @@ -1734,8 +1734,8 @@ ) ;; definition for function ogreboss-update-super-boulder +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior ogreboss-update-super-boulder ogreboss () (let ((a1-0 (handle->process (-> self boulder)))) (if a1-0 @@ -2163,8 +2163,8 @@ ) ;; definition for method 11 of type ogreboss +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! ogreboss ((obj ogreboss) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask attackable) (-> obj mask))) (let ((s4-0 (new 'process 'collide-shape obj (collide-list-enum usually-hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/racer_common/collide-reaction-racer_REF.gc b/test/decompiler/reference/jak1/levels/racer_common/collide-reaction-racer_REF.gc index 268182c2fb..7e6a9bea72 100644 --- a/test/decompiler/reference/jak1/levels/racer_common/collide-reaction-racer_REF.gc +++ b/test/decompiler/reference/jak1/levels/racer_common/collide-reaction-racer_REF.gc @@ -2,8 +2,8 @@ (in-package goal) ;; definition for function racer-collision-reaction +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs cshape-moving-flags. -;; Used lq/sq (defun racer-collision-reaction ((arg0 control-info) (arg1 collide-shape-intersect) (arg2 vector) (arg3 vector)) (local-vars (sv-80 vector) (sv-84 vector) (sv-88 (inline-array vector)) (sv-96 int) (sv-104 int)) (set! sv-80 (new-stack-vector0)) diff --git a/test/decompiler/reference/jak1/levels/racer_common/racer-states_REF.gc b/test/decompiler/reference/jak1/levels/racer_common/racer-states_REF.gc index 2741aa2a5a..36f1e64fb6 100644 --- a/test/decompiler/reference/jak1/levels/racer_common/racer-states_REF.gc +++ b/test/decompiler/reference/jak1/levels/racer_common/racer-states_REF.gc @@ -301,8 +301,8 @@ ) ;; definition for function target-racing-smack-check +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior target-racing-smack-check target () (if (and (< 20480.0 (-> self control unknown-float01)) (and (logtest? (-> self control status) (cshape-moving-flags twall)) diff --git a/test/decompiler/reference/jak1/levels/racer_common/target-racer_REF.gc b/test/decompiler/reference/jak1/levels/racer_common/target-racer_REF.gc index 2b8fca0fc0..6c8d0438fb 100644 --- a/test/decompiler/reference/jak1/levels/racer_common/target-racer_REF.gc +++ b/test/decompiler/reference/jak1/levels/racer_common/target-racer_REF.gc @@ -162,8 +162,8 @@ ) ;; definition for function racer-xz +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior racer-xz target ((arg0 float) (arg1 float)) (set! (-> self racer slide-shift-x) arg1) (seek! (-> self racer slide-interp) 0.0 (-> *display* seconds-per-frame)) @@ -349,8 +349,8 @@ ) ;; definition for function racer-cushion +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior racer-cushion target ((arg0 float)) (let ((f30-0 (-> self racer bob-period))) (let ((f28-0 1.0)) @@ -408,8 +408,8 @@ ) ;; definition for function racer-collision +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior racer-collision target () (let ((gp-0 (new 'stack-no-clear 'vector))) (set! (-> gp-0 quad) (-> self control transv quad)) @@ -489,8 +489,8 @@ ) ;; definition for function racer-integrate +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior racer-integrate target () (quaternion-rotate-y! (the-as quaternion (-> self racer quat)) @@ -1252,8 +1252,8 @@ ) ;; definition for function target-racing-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior target-racing-post target () (set! (-> self control reaction) racer-collision-reaction) (set! (-> self control surf) *race-track-surface*) diff --git a/test/decompiler/reference/jak1/levels/robocave/cave-trap_REF.gc b/test/decompiler/reference/jak1/levels/robocave/cave-trap_REF.gc index c74c70a9f8..ccaaba250f 100644 --- a/test/decompiler/reference/jak1/levels/robocave/cave-trap_REF.gc +++ b/test/decompiler/reference/jak1/levels/robocave/cave-trap_REF.gc @@ -147,7 +147,7 @@ ) ;; definition for method 20 of type cave-trap -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-20 cave-trap ((obj cave-trap)) (set! (-> obj last-spawn-time) (-> *display* base-frame-counter)) (set! (-> obj spawn-delay) (rand-vu-int-range (seconds 0.1) (seconds 0.5))) diff --git a/test/decompiler/reference/jak1/levels/robocave/spider-egg_REF.gc b/test/decompiler/reference/jak1/levels/robocave/spider-egg_REF.gc index 0e5a0afc90..5d6289ad0a 100644 --- a/test/decompiler/reference/jak1/levels/robocave/spider-egg_REF.gc +++ b/test/decompiler/reference/jak1/levels/robocave/spider-egg_REF.gc @@ -227,8 +227,8 @@ ) ;; definition for method 11 of type spider-egg +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! spider-egg ((obj spider-egg) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask enemy) (-> obj mask))) (set! (-> obj mask) (logior (process-mask attackable) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/rolling/rolling-lightning-mole_REF.gc b/test/decompiler/reference/jak1/levels/rolling/rolling-lightning-mole_REF.gc index 171e0416ea..24dd49624b 100644 --- a/test/decompiler/reference/jak1/levels/rolling/rolling-lightning-mole_REF.gc +++ b/test/decompiler/reference/jak1/levels/rolling/rolling-lightning-mole_REF.gc @@ -4,7 +4,7 @@ (import "goal_src/jak1/import/lightning-mole-ag.gc") ;; definition for function find-adjacent-bounds-one -;; Used lq/sq +;; INFO: Used lq/sq (defun find-adjacent-bounds-one ((arg0 nav-mesh) (arg1 nav-poly) (arg2 int) (arg3 (array int8)) (arg4 (array int8)) (arg5 vector)) (local-vars (v0-2 object) (v1-2 int) (v1-30 int) (a0-2 int) (a0-12 int) (sv-16 nav-poly) (sv-32 int)) (let ((v1-1 (+ arg2 1))) @@ -77,7 +77,7 @@ ) ;; definition for function find-adjacent-bounds -;; WARN: Expression building failed: Function find-adjacent-bounds has a return type of none, but the expression builder found a return statement. +;; WARN: Function find-adjacent-bounds has a return type of none, but the expression builder found a return statement. (defun find-adjacent-bounds ((arg0 nav-mesh) (arg1 clip-travel-vector-to-mesh-return-info)) (when (!= (-> arg1 found-boundary) #t) (format 0 "ERROR: find-adjacent-bounds passed info which doesn't specify a boundary edge~%") @@ -230,7 +230,7 @@ ) ;; definition for function fleeing-nav-enemy-clip-travel -;; Used lq/sq +;; INFO: Used lq/sq (defun fleeing-nav-enemy-clip-travel ((arg0 fleeing-nav-enemy) (arg1 vector)) (local-vars (sv-224 vector) (sv-240 vector) (sv-256 vector) (sv-272 vector) (sv-288 vector)) (let ((s2-0 (new 'stack 'clip-travel-vector-to-mesh-return-info)) @@ -336,7 +336,7 @@ ) ;; definition for function fleeing-nav-enemy-adjust-travel -;; Used lq/sq +;; INFO: Used lq/sq (defun fleeing-nav-enemy-adjust-travel ((arg0 fleeing-nav-enemy) (arg1 object)) (let ((s3-0 (new 'stack-no-clear 'matrix)) (s4-0 (new 'stack-no-clear 'vector)) @@ -378,8 +378,8 @@ ) ;; definition for function fleeing-nav-enemy-chase-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior fleeing-nav-enemy-chase-post fleeing-nav-enemy () (let ((gp-0 (new 'stack-no-clear 'vector))) (vector-! gp-0 (-> self collide-info trans) (target-pos 0)) @@ -639,8 +639,8 @@ ) ;; definition for function lightning-mole-hole-post +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior lightning-mole-hole-post lightning-mole () (set! (-> self nav target-pos quad) (-> *lightning-mole-hole* quad)) (nav-enemy-travel-post) diff --git a/test/decompiler/reference/jak1/levels/rolling/rolling-obs_REF.gc b/test/decompiler/reference/jak1/levels/rolling/rolling-obs_REF.gc index 9dd28c6629..51322f4954 100644 --- a/test/decompiler/reference/jak1/levels/rolling/rolling-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/rolling/rolling-obs_REF.gc @@ -201,8 +201,8 @@ ) ;; definition for method 11 of type pusher +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! pusher ((obj pusher) (arg0 entity-actor)) (pusher-base-init) (process-drawable-from-entity! obj arg0) @@ -871,9 +871,9 @@ ) ;; definition for function race-time-save -;; WARN: Type Propagation failed: Failed type prop at op 6 ((set! v1 (l.wu (+ a0 -4)))): Could not get type of load: (set! v1 (l.wu (+ a0 -4))). -;; WARN: Type Propagation failed: Type analysis failed -;; WARN: Function may read a register that is not set: a2 +;; ERROR: Type Propagation failed: Failed type prop at op 6 ((set! v1 (l.wu (+ a0 -4)))): Could not get type of load: (set! v1 (l.wu (+ a0 -4))). +;; ERROR: Type Propagation failed: Type analysis failed +;; ERROR: Function may read a register that is not set: a2 (defun race-time-save ((a0-0 race-time) (a1-0 task-control)) (local-vars (v0-0 none) @@ -1007,8 +1007,8 @@ ) ;; definition for function rolling-start-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior rolling-start-init-by-other rolling-start ((arg0 vector) (arg1 float)) (set! (-> self root) (new 'process 'trsqv)) (set! (-> self root trans quad) (-> arg0 quad)) @@ -1144,7 +1144,7 @@ ) ;; definition for function gorge-behind -;; Used lq/sq +;; INFO: Used lq/sq (defun gorge-behind ((arg0 gorge)) (if (not *target*) (return #f) @@ -1160,7 +1160,7 @@ ) ;; definition for function gorge-in-front -;; Used lq/sq +;; INFO: Used lq/sq (defun gorge-in-front ((arg0 gorge)) (if (not *target*) (return #f) @@ -1197,8 +1197,8 @@ ) ;; definition for function gorge-abort-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior gorge-abort-init-by-other gorge-abort ((arg0 vector) (arg1 vector) (arg2 float)) (set! (-> self root-override) (the-as collide-shape-moving (new 'process 'trsqv))) (set! (-> self root-override trans quad) (-> arg0 quad)) @@ -1222,8 +1222,8 @@ ) ;; definition for function gorge-finish-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior gorge-finish-init-by-other gorge-finish ((arg0 vector) (arg1 vector) (arg2 float)) (set! (-> self root-override) (the-as collide-shape-moving (new 'process 'trsqv))) (set! (-> self root-override trans quad) (-> arg0 quad)) @@ -1356,8 +1356,8 @@ ) ;; definition for function gorge-start-launch-start-banner +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs handle. -;; Used lq/sq (defbehavior gorge-start-launch-start-banner gorge-start () (the-as handle (when (task-closed? (game-task rolling-race) (task-status need-introduction)) (when (not (handle->process (-> self start-banner))) @@ -1614,8 +1614,8 @@ ) ;; definition for method 11 of type gorge-start +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! gorge-start ((obj gorge-start) (arg0 entity-actor)) (set! (-> obj root-override) (the-as collide-shape-moving (new 'process 'trsqv))) (process-drawable-from-entity! obj arg0) diff --git a/test/decompiler/reference/jak1/levels/rolling/rolling-robber_REF.gc b/test/decompiler/reference/jak1/levels/rolling/rolling-robber_REF.gc index 475de592a9..b61d4748e1 100644 --- a/test/decompiler/reference/jak1/levels/rolling/rolling-robber_REF.gc +++ b/test/decompiler/reference/jak1/levels/rolling/rolling-robber_REF.gc @@ -166,7 +166,7 @@ ) ;; definition for function robber-find-ground -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior robber-find-ground robber () (let ((gp-0 (new 'stack-no-clear 'vector))) (set! (-> gp-0 quad) (-> self root-override trans quad)) @@ -205,7 +205,7 @@ ) ;; definition for function robber-rotate -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior robber-rotate robber ((arg0 target) (arg1 float)) (let ((s5-0 (new 'stack-no-clear 'matrix)) (gp-0 (new 'stack-no-clear 'vector)) @@ -716,8 +716,8 @@ ) ;; definition for method 11 of type robber +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! robber ((obj robber) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) diff --git a/test/decompiler/reference/jak1/levels/snow/ice-cube_REF.gc b/test/decompiler/reference/jak1/levels/snow/ice-cube_REF.gc index fd30544094..92f80a00b9 100644 --- a/test/decompiler/reference/jak1/levels/snow/ice-cube_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/ice-cube_REF.gc @@ -678,7 +678,7 @@ ) ;; definition for method 60 of type ice-cube -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-60 ice-cube ((obj ice-cube) (arg0 symbol)) (let ((gp-0 (new 'stack-no-clear 'vector))) (when (-> obj tracking-player?) @@ -699,7 +699,7 @@ ) ;; definition for method 51 of type ice-cube -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-51 ice-cube ((obj ice-cube) (arg0 vector) (arg1 vector)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let* ((s4-0 (new 'stack-no-clear 'collide-tri-result)) @@ -731,7 +731,7 @@ ) ;; definition for method 52 of type ice-cube -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-52 ice-cube ((obj ice-cube) (arg0 vector)) (when *target* (let ((f0-0 (vector-vector-xz-distance arg0 (target-pos 0)))) @@ -750,7 +750,7 @@ ) ;; definition for method 53 of type ice-cube -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-53 ice-cube ((obj ice-cube) (arg0 vector) (arg1 vector)) (local-vars (s1-0 int) (s2-0 int)) (let ((s3-0 (-> obj path curve num-cverts))) @@ -1094,7 +1094,7 @@ ) ;; definition for method 54 of type ice-cube -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-54 ice-cube ((obj ice-cube) (arg0 vector)) (let* ((s4-0 (-> obj path curve num-cverts)) (s2-0 (nav-enemy-rnd-int-count s4-0)) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-ball_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-ball_REF.gc index e3235b6029..6f0adc0d4e 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-ball_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-ball_REF.gc @@ -192,8 +192,8 @@ ) ;; definition for function snow-ball-shadow-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior snow-ball-shadow-init-by-other snow-ball-shadow () (stack-size-set! (-> self main-thread) 128) (logclear! (-> self mask) (process-mask actor-pause movie enemy platform projectile)) @@ -218,8 +218,8 @@ ) ;; definition for method 20 of type snow-ball-roller +;; INFO: Used lq/sq ;; INFO: Return type mismatch float vs none. -;; Used lq/sq (defmethod follow-path snow-ball-roller ((obj snow-ball-roller)) (let ((s5-0 (-> obj path-info))) (set! (-> s5-0 hug-path?) #f) @@ -271,8 +271,8 @@ ) ;; definition for function snow-ball-roller-path-update +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior snow-ball-roller-path-update snow-ball-roller () (local-vars (f0-5 float)) (let ((f0-0 (-> self root-override trans y))) @@ -382,8 +382,8 @@ ) ;; definition for method 22 of type snow-ball-roller +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod dummy-22 snow-ball-roller ((obj snow-ball-roller) (arg0 process-drawable)) (cond ((< (+ 4096.0 (-> arg0 root trans y)) (-> obj root-override trans y)) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-bumper_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-bumper_REF.gc index 996494a86a..948a67ea4a 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-bumper_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-bumper_REF.gc @@ -112,8 +112,8 @@ ) ;; definition for method 21 of type snow-bumper +;; INFO: Used lq/sq ;; INFO: Return type mismatch time-frame vs none. -;; Used lq/sq (defmethod shove-player snow-bumper ((obj snow-bumper) (arg0 process-drawable)) (let ((s5-0 (new 'stack-no-clear 'vector))) (vector-! s5-0 (-> arg0 root trans) (-> obj root trans)) @@ -337,8 +337,8 @@ ) ;; definition for method 11 of type snow-bumper +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snow-bumper ((obj snow-bumper) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj last-shoved-player-time) 0) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-bunny_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-bunny_REF.gc index 4aa1f4001c..1f20e3e982 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-bunny_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-bunny_REF.gc @@ -129,7 +129,7 @@ ) ;; definition for function snow-bunny-default-event-handler -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior snow-bunny-default-event-handler snow-bunny ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (case arg2 (('attack) @@ -506,7 +506,7 @@ ) ;; definition for method 51 of type snow-bunny -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-51 snow-bunny ((obj snow-bunny) (arg0 vector) (arg1 vector)) (let ((s5-0 (new 'stack-no-clear 'vector))) (let* ((s4-0 (new 'stack-no-clear 'collide-tri-result)) @@ -538,7 +538,7 @@ ) ;; definition for method 53 of type snow-bunny -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-53 snow-bunny ((obj snow-bunny)) (let* ((s4-0 (-> obj path curve num-cverts)) (s2-0 (nav-enemy-rnd-int-count s4-0)) @@ -563,7 +563,7 @@ ) ;; definition for method 54 of type snow-bunny -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-54 snow-bunny ((obj snow-bunny)) (local-vars (sv-48 (function float float))) (set! (-> obj using-jump-event?) #f) @@ -760,7 +760,7 @@ ) ;; definition for method 52 of type snow-bunny -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-52 snow-bunny ((obj snow-bunny)) (local-vars (sv-48 (function float float))) (set! (-> obj using-jump-event?) #f) @@ -919,7 +919,7 @@ ) ;; definition for method 55 of type snow-bunny -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-55 snow-bunny ((obj snow-bunny)) (set! (-> obj using-jump-event?) #f) (if (not *target*) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-flutflut-obs_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-flutflut-obs_REF.gc index dca1f85a10..d0efedc703 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-flutflut-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-flutflut-obs_REF.gc @@ -466,8 +466,8 @@ ) ;; definition for method 26 of type flutflut-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-26 flutflut-plat ((obj flutflut-plat)) (let ((t9-0 (method-of-type plat dummy-26))) (t9-0 obj) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-obs_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-obs_REF.gc index 7a81e27350..97585a1229 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-obs_REF.gc @@ -478,8 +478,8 @@ ) ;; definition for method 11 of type snow-eggtop +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snow-eggtop ((obj snow-eggtop) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) @@ -552,7 +552,7 @@ ) ;; definition for method 3 of type snowpusher -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect snowpusher ((obj snowpusher)) (let ((t9-0 (method-of-type process-drawable inspect))) (t9-0 obj) @@ -610,8 +610,8 @@ ) ;; definition for method 11 of type snowpusher +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snowpusher ((obj snowpusher) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj mask) (logior (process-mask enemy platform) (-> obj mask))) @@ -1136,8 +1136,8 @@ ) ;; definition for method 11 of type snow-fort-gate +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snow-fort-gate ((obj snow-fort-gate) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape obj (collide-list-enum hit-by-others)))) (let ((s3-0 (new 'process 'collide-shape-prim-mesh s4-0 (the-as uint 0) (the-as uint 0)))) @@ -1294,8 +1294,8 @@ ) ;; definition for method 20 of type snow-gears +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod TODO-RENAME-20 snow-gears ((obj snow-gears)) (let ((a1-0 (new 'stack-no-clear 'vector))) (set! (-> a1-0 quad) (-> obj root trans quad)) @@ -1578,8 +1578,8 @@ ) ;; definition for method 11 of type snow-switch +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snow-switch ((obj snow-switch) (arg0 entity-actor)) (set! (-> obj pressed?) #f) (set! (-> obj fcell-handle) (the-as handle #f)) @@ -1985,8 +1985,8 @@ ) ;; definition for method 11 of type snow-log-button +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! snow-log-button ((obj snow-log-button) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) diff --git a/test/decompiler/reference/jak1/levels/snow/snow-ram-boss_REF.gc b/test/decompiler/reference/jak1/levels/snow/snow-ram-boss_REF.gc index 2368ed4616..be917bc34d 100644 --- a/test/decompiler/reference/jak1/levels/snow/snow-ram-boss_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/snow-ram-boss_REF.gc @@ -662,8 +662,8 @@ ) ;; definition for method 28 of type ram-boss-proj +;; INFO: Used lq/sq ;; INFO: Return type mismatch vector vs none. -;; Used lq/sq (defmethod dummy-28 ram-boss-proj ((obj ram-boss-proj)) (when (and *target* (zero? (logand (-> *target* state-flags) @@ -1177,8 +1177,8 @@ ) ;; definition for method 48 of type ram-boss +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-48 ram-boss ((obj ram-boss)) (initialize-skeleton obj *ram-boss-sg* '()) (set! (-> obj draw origin-joint-index) (the-as uint 3)) @@ -1205,8 +1205,8 @@ ) ;; definition for function ram-boss-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior ram-boss-init-by-other ram-boss ((arg0 basic) (arg1 nav-enemy) (arg2 symbol)) (set! (-> self dead?) #f) (set! (-> self proj-status) (the-as uint 0)) @@ -1249,7 +1249,7 @@ ) ;; definition for method 55 of type ram-boss -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-55 ram-boss ((obj ram-boss)) (if (not *target*) (return #f) @@ -1303,8 +1303,8 @@ ) ;; definition for method 56 of type ram-boss +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod set-jump-height-factor! ram-boss ((obj ram-boss) (arg0 int)) (cond ((zero? (-> obj proj-status)) diff --git a/test/decompiler/reference/jak1/levels/snow/yeti_REF.gc b/test/decompiler/reference/jak1/levels/snow/yeti_REF.gc index 86f736b4a6..800962064d 100644 --- a/test/decompiler/reference/jak1/levels/snow/yeti_REF.gc +++ b/test/decompiler/reference/jak1/levels/snow/yeti_REF.gc @@ -594,8 +594,8 @@ ) ;; definition for function yeti-slave-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior yeti-slave-init-by-other yeti-slave ((arg0 entity) (arg1 yeti) (arg2 vector) (arg3 vector) (arg4 symbol)) (set! (-> self part) (create-launch-control (-> *part-group-id-table* 538) self)) (set! (-> self part2) (create-launch-control (-> *part-group-id-table* 539) self)) diff --git a/test/decompiler/reference/jak1/levels/sunken/bully_REF.gc b/test/decompiler/reference/jak1/levels/sunken/bully_REF.gc index 4f4c137124..c945a08081 100644 --- a/test/decompiler/reference/jak1/levels/sunken/bully_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/bully_REF.gc @@ -269,8 +269,8 @@ ) ;; definition for function bully-broken-cage-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior bully-broken-cage-init-by-other bully-broken-cage ((arg0 entity-actor)) (set! (-> self entity) arg0) (set! (-> self root) (new 'process 'trsqv)) @@ -283,12 +283,12 @@ ) ;; definition for function bully-default-event-handler +;; INFO: Used lq/sq ;; INFO: Return type mismatch none vs object. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 48] ;; WARN: disable def twice: 148. This may happen when a cond (no else) is nested inside of another conditional, but it should be rare. ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 229] ;; WARN: rewrite_to_get_var got a none typed variable. Is there unreachable code? [OP: 248] -;; Used lq/sq (defbehavior bully-default-event-handler bully ((arg0 process) (arg1 int) (arg2 symbol) (arg3 event-message-block)) (local-vars (v0-0 none)) (let ((v1-0 arg2)) @@ -429,7 +429,7 @@ ) ;; definition for method 20 of type bully -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-20 bully ((obj bully)) (local-vars (at-0 int)) (rlet ((vf0 :class vf) diff --git a/test/decompiler/reference/jak1/levels/sunken/double-lurker_REF.gc b/test/decompiler/reference/jak1/levels/sunken/double-lurker_REF.gc index 5b0f7b8e8f..764fd05a98 100644 --- a/test/decompiler/reference/jak1/levels/sunken/double-lurker_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/double-lurker_REF.gc @@ -501,8 +501,8 @@ ) ;; definition for method 48 of type double-lurker-top +;; INFO: Used lq/sq ;; INFO: Return type mismatch nav-flags vs none. -;; Used lq/sq (defmethod TODO-RENAME-48 double-lurker-top ((obj double-lurker-top)) (initialize-skeleton obj *double-lurker-top-sg* '()) (set! (-> obj draw origin-joint-index) (the-as uint 3)) @@ -517,8 +517,8 @@ ) ;; definition for function double-lurker-top-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior double-lurker-top-init-by-other double-lurker-top ((arg0 entity) (arg1 double-lurker) (arg2 symbol) (arg3 vector)) (initialize-collision self) (set! (-> self entity) (-> arg1 entity)) @@ -887,7 +887,7 @@ ) ;; definition for method 52 of type double-lurker -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-52 double-lurker ((obj double-lurker) (arg0 vector)) (TODO-RENAME-28 (-> obj nav) (collide-kind background @@ -1322,8 +1322,8 @@ ) ;; definition for method 48 of type double-lurker +;; INFO: Used lq/sq ;; INFO: Return type mismatch float vs none. -;; Used lq/sq (defmethod TODO-RENAME-48 double-lurker ((obj double-lurker)) (set! (-> obj buddy-handle) (the-as handle #f)) (process-drawable-from-entity! obj (-> obj entity)) diff --git a/test/decompiler/reference/jak1/levels/sunken/helix-water_REF.gc b/test/decompiler/reference/jak1/levels/sunken/helix-water_REF.gc index 352daf2d93..0c9145e978 100644 --- a/test/decompiler/reference/jak1/levels/sunken/helix-water_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/helix-water_REF.gc @@ -564,8 +564,8 @@ ) ;; definition for method 11 of type helix-button +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! helix-button ((obj helix-button) (arg0 entity-actor)) (set! (-> obj fcell-handle) (the-as handle #f)) (set! (-> obj my-water) (entity-actor-lookup arg0 'alt-actor 0)) diff --git a/test/decompiler/reference/jak1/levels/sunken/orbit-plat_REF.gc b/test/decompiler/reference/jak1/levels/sunken/orbit-plat_REF.gc index 5b6d1d2a4b..f7ed69055f 100644 --- a/test/decompiler/reference/jak1/levels/sunken/orbit-plat_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/orbit-plat_REF.gc @@ -283,8 +283,8 @@ ) ;; definition for function orbit-plat-bottom-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior orbit-plat-bottom-init-by-other orbit-plat-bottom ((arg0 entity-actor) (arg1 orbit-plat)) (set! (-> self entity) arg0) (set! (-> self mask) (logior (process-mask platform) (-> self mask))) @@ -525,7 +525,7 @@ ) ;; definition for function get-nav-point! -;; Used lq/sq +;; INFO: Used lq/sq (defun get-nav-point! ((arg0 vector) (arg1 orbit-plat) (arg2 vector) (arg3 float)) (set! (-> arg1 nav target-pos quad) (-> arg2 quad)) (logclear! (-> arg1 nav flags) (nav-control-flags navcf19)) @@ -607,9 +607,9 @@ ) ;; definition for method 27 of type orbit-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs symbol. ;; WARN: disable def twice: 132. This may happen when a cond (no else) is nested inside of another conditional, but it should be rare. -;; Used lq/sq (defmethod dummy-27 orbit-plat ((obj orbit-plat)) (local-vars (v0-11 object)) (let* ((v1-0 (-> obj other)) @@ -836,8 +836,8 @@ ) ;; definition for method 11 of type orbit-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! orbit-plat ((obj orbit-plat) (arg0 entity-actor)) (set! (-> obj plat-status) (the-as uint 0)) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/sunken/puffer_REF.gc b/test/decompiler/reference/jak1/levels/sunken/puffer_REF.gc index a8ec708a1e..8af9365623 100644 --- a/test/decompiler/reference/jak1/levels/sunken/puffer_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/puffer_REF.gc @@ -179,8 +179,8 @@ ) ;; definition for method 28 of type puffer +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-28 puffer ((obj puffer)) (cond ((and (-> obj draw shadow) @@ -333,7 +333,7 @@ ) ;; definition for method 23 of type puffer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-23 puffer ((obj puffer) (arg0 symbol)) (local-vars (v1-0 process)) (set! v1-0 (when arg0 @@ -404,7 +404,7 @@ ) ;; definition for method 20 of type puffer -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-20 puffer ((obj puffer) (arg0 vector)) (if (-> obj attacking?) (set! (-> obj travel-speed) @@ -1223,8 +1223,8 @@ ) ;; definition for method 11 of type puffer +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! puffer ((obj puffer) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj cprims-type) (the-as uint 0)) diff --git a/test/decompiler/reference/jak1/levels/sunken/qbert-plat_REF.gc b/test/decompiler/reference/jak1/levels/sunken/qbert-plat_REF.gc index 4d3db1a066..e506b32e41 100644 --- a/test/decompiler/reference/jak1/levels/sunken/qbert-plat_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/qbert-plat_REF.gc @@ -179,8 +179,8 @@ ) ;; definition for function qbert-plat-on-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior qbert-plat-on-init-by-other qbert-plat ((arg0 entity-actor) (arg1 qbert-plat)) (set! (-> self entity) arg0) (set! (-> self mask) (logior (process-mask platform) (-> self mask))) @@ -372,8 +372,8 @@ ) ;; definition for method 31 of type qbert-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 qbert-plat ((obj qbert-plat)) (initialize-skeleton obj *qbert-plat-sg* '()) (set! (-> obj anchor-point quad) (-> obj root-overlay trans quad)) diff --git a/test/decompiler/reference/jak1/levels/sunken/shover_REF.gc b/test/decompiler/reference/jak1/levels/sunken/shover_REF.gc index 277be79b87..5606d3f689 100644 --- a/test/decompiler/reference/jak1/levels/sunken/shover_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/shover_REF.gc @@ -80,8 +80,8 @@ ) ;; definition for method 11 of type shover +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! shover ((obj shover) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj shove-up) (res-lump-float arg0 'shove :default 12288.0)) diff --git a/test/decompiler/reference/jak1/levels/sunken/square-platform_REF.gc b/test/decompiler/reference/jak1/levels/sunken/square-platform_REF.gc index 2e27f6e021..8728d4f7e6 100644 --- a/test/decompiler/reference/jak1/levels/sunken/square-platform_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/square-platform_REF.gc @@ -220,8 +220,8 @@ ) ;; definition for method 27 of type square-platform +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod TODO-RENAME-27 square-platform ((obj square-platform) (arg0 symbol)) (local-vars (v0-3 sound-id) (sv-48 int)) (let ((s4-0 (new 'stack-no-clear 'vector))) @@ -483,8 +483,8 @@ ) ;; definition for method 11 of type square-platform +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! square-platform ((obj square-platform) (arg0 entity-actor)) (local-vars (sv-16 res-tag) (sv-32 res-tag)) (set! (-> obj pos-u) 0.0) diff --git a/test/decompiler/reference/jak1/levels/sunken/steam-cap_REF.gc b/test/decompiler/reference/jak1/levels/sunken/steam-cap_REF.gc index c8396b2b72..1ae41a1d48 100644 --- a/test/decompiler/reference/jak1/levels/sunken/steam-cap_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/steam-cap_REF.gc @@ -490,7 +490,7 @@ ) ;; definition for method 21 of type steam-cap -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-21 steam-cap ((obj steam-cap)) (local-vars (at-0 int) (at-1 int) (s5-0 symbol)) (rlet ((vf0 :class vf) @@ -720,8 +720,8 @@ ) ;; definition for method 11 of type steam-cap +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! steam-cap ((obj steam-cap) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) diff --git a/test/decompiler/reference/jak1/levels/sunken/sun-exit-chamber_REF.gc b/test/decompiler/reference/jak1/levels/sunken/sun-exit-chamber_REF.gc index c8ff50c461..883573ab79 100644 --- a/test/decompiler/reference/jak1/levels/sunken/sun-exit-chamber_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/sun-exit-chamber_REF.gc @@ -348,8 +348,8 @@ ) ;; definition for function blue-eco-charger-orb-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior blue-eco-charger-orb-init-by-other blue-eco-charger-orb ((arg0 entity-actor) (arg1 blue-eco-charger-orb)) (set! (-> self entity) arg0) (set! (-> self root) (new 'process 'trsqv)) @@ -677,7 +677,7 @@ ) ;; definition for method 23 of type exit-chamber -;; Used lq/sq +;; INFO: Used lq/sq (defmethod dummy-23 exit-chamber ((obj exit-chamber) (arg0 symbol)) (new 'stack-no-clear 'vector) (let ((s5-0 (new 'stack-no-clear 'vector))) @@ -1177,8 +1177,8 @@ ) ;; definition for method 11 of type exit-chamber +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! exit-chamber ((obj exit-chamber) (arg0 entity-actor)) (process-entity-status! obj (entity-perm-status bit-3) #t) (process-entity-status! obj (entity-perm-status bit-7) #t) diff --git a/test/decompiler/reference/jak1/levels/sunken/sun-iris-door_REF.gc b/test/decompiler/reference/jak1/levels/sunken/sun-iris-door_REF.gc index 0a0e3ee19b..c0343a7921 100644 --- a/test/decompiler/reference/jak1/levels/sunken/sun-iris-door_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/sun-iris-door_REF.gc @@ -331,8 +331,8 @@ ) ;; definition for method 11 of type sun-iris-door +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! sun-iris-door ((obj sun-iris-door) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj move-to?) #f) @@ -397,8 +397,8 @@ ) ;; definition for function sun-iris-door-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior sun-iris-door-init-by-other sun-iris-door ((arg0 vector) (arg1 quaternion) (arg2 symbol)) (set! (-> self move-to?) #f) (let ((s3-0 (new 'process 'collide-shape self (collide-list-enum hit-by-others)))) diff --git a/test/decompiler/reference/jak1/levels/sunken/sunken-fish_REF.gc b/test/decompiler/reference/jak1/levels/sunken/sunken-fish_REF.gc index 6dfd80475b..6af310f4b4 100644 --- a/test/decompiler/reference/jak1/levels/sunken/sunken-fish_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/sunken-fish_REF.gc @@ -288,7 +288,7 @@ ) ;; definition for method 27 of type sunkenfisha -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-27 sunkenfisha ((obj sunkenfisha)) (local-vars (sv-16 res-tag) (sv-32 res-tag) (sv-48 res-tag)) (vector-reset! (-> obj path-trans-offset)) diff --git a/test/decompiler/reference/jak1/levels/sunken/sunken-pipegame_REF.gc b/test/decompiler/reference/jak1/levels/sunken/sunken-pipegame_REF.gc index 9dd0228de6..4179b07830 100644 --- a/test/decompiler/reference/jak1/levels/sunken/sunken-pipegame_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/sunken-pipegame_REF.gc @@ -1007,8 +1007,8 @@ ) ;; definition for method 11 of type sunken-pipegame +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! sunken-pipegame ((obj sunken-pipegame) (arg0 entity-actor)) (set! (-> obj abort-audio-if-beaten?) #f) (stack-size-set! (-> obj main-thread) 512) diff --git a/test/decompiler/reference/jak1/levels/sunken/sunken-water_REF.gc b/test/decompiler/reference/jak1/levels/sunken/sunken-water_REF.gc index bdb69652fe..06c5582814 100644 --- a/test/decompiler/reference/jak1/levels/sunken/sunken-water_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/sunken-water_REF.gc @@ -251,8 +251,8 @@ ) ;; definition for method 22 of type sunken-water +;; INFO: Used lq/sq ;; INFO: Return type mismatch ripple-merc-query vs none. -;; Used lq/sq (defmethod TODO-RENAME-22 sunken-water ((obj sunken-water)) (let ((t9-0 (method-of-type water-anim TODO-RENAME-22))) (t9-0 obj) diff --git a/test/decompiler/reference/jak1/levels/sunken/target-tube_REF.gc b/test/decompiler/reference/jak1/levels/sunken/target-tube_REF.gc index 1b46a886f8..b423a59ee2 100644 --- a/test/decompiler/reference/jak1/levels/sunken/target-tube_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/target-tube_REF.gc @@ -202,8 +202,8 @@ ) ;; definition for function tube-thrust +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior tube-thrust target ((arg0 float) (arg1 float)) (let ((s4-1 (vector-! (new 'stack-no-clear 'vector) (-> self tube foretube) (-> self control trans)))) (vector-flatten! s4-1 s4-1 (-> self tube downtube)) @@ -361,7 +361,7 @@ ) ;; definition for function target-tube-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior target-tube-post target () (let ((gp-0 (the int (-> *display* time-ratio)))) (set-time-ratios *display* 1.0) @@ -948,7 +948,7 @@ ) ;; definition for function find-target-point -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior find-target-point slide-control ((arg0 vector)) (local-vars (f0-2 float)) (let* ((s4-0 (new 'stack-no-clear 'vector)) diff --git a/test/decompiler/reference/jak1/levels/sunken/wedge-plats_REF.gc b/test/decompiler/reference/jak1/levels/sunken/wedge-plats_REF.gc index 1eb8261c17..f6b180f2c0 100644 --- a/test/decompiler/reference/jak1/levels/sunken/wedge-plats_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/wedge-plats_REF.gc @@ -53,8 +53,8 @@ ) ;; definition for method 11 of type wedge-plat-master +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! wedge-plat-master ((obj wedge-plat-master) (arg0 entity-actor)) (set! (-> obj mask) (logior (process-mask platform) (-> obj mask))) (set! (-> obj center quad) (-> arg0 extra trans quad)) diff --git a/test/decompiler/reference/jak1/levels/sunken/whirlpool_REF.gc b/test/decompiler/reference/jak1/levels/sunken/whirlpool_REF.gc index 3aa19cbc02..cf7e88b8ed 100644 --- a/test/decompiler/reference/jak1/levels/sunken/whirlpool_REF.gc +++ b/test/decompiler/reference/jak1/levels/sunken/whirlpool_REF.gc @@ -371,8 +371,8 @@ ) ;; definition for method 11 of type whirlpool +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! whirlpool ((obj whirlpool) (arg0 entity-actor)) (local-vars (sv-16 res-tag)) (set! (-> obj spin-ry) (rand-vu-float-range 0.0 65536.0)) diff --git a/test/decompiler/reference/jak1/levels/swamp/billy_REF.gc b/test/decompiler/reference/jak1/levels/swamp/billy_REF.gc index 39b7f9af4f..75a2476c67 100644 --- a/test/decompiler/reference/jak1/levels/swamp/billy_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/billy_REF.gc @@ -139,8 +139,8 @@ ) ;; definition for function billy-snack-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior billy-snack-init-by-other billy-snack ((arg0 vector)) (set! (-> self root) (new 'process 'trsqv)) (set! (-> self root trans quad) (-> arg0 quad)) @@ -316,7 +316,7 @@ ) ;; definition for function billy-rat-init-by-other -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior billy-rat-init-by-other billy-rat ((arg0 billy) (arg1 vector) (arg2 vector)) (set! (-> self billy) (the-as (pointer billy) (process->ppointer arg0))) (set! (-> self destination quad) (-> arg2 quad)) diff --git a/test/decompiler/reference/jak1/levels/swamp/kermit_REF.gc b/test/decompiler/reference/jak1/levels/swamp/kermit_REF.gc index 3524827170..6aef844ea7 100644 --- a/test/decompiler/reference/jak1/levels/swamp/kermit_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/kermit_REF.gc @@ -450,7 +450,7 @@ ) ;; definition for function build-matrix-from-up-and-forward-axes! -;; Used lq/sq +;; INFO: Used lq/sq (defun build-matrix-from-up-and-forward-axes! ((arg0 matrix) (arg1 vector) (arg2 int) (arg3 vector) (arg4 int)) (let ((s1-0 (new 'stack-no-clear 'vector)) (s5-0 (new 'stack-no-clear 'vector)) @@ -477,7 +477,7 @@ ) ;; definition for function joint-mod-tracker-callback -;; Used lq/sq +;; INFO: Used lq/sq (defun joint-mod-tracker-callback ((arg0 cspace) (arg1 transformq)) (let ((s4-0 (the-as joint-mod-tracker (-> arg0 param1)))) (cond @@ -632,8 +632,8 @@ ) ;; definition for function kermit-pulse-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior kermit-pulse-init-by-other kermit-pulse ((arg0 vector) (arg1 entity-actor)) (logclear! (-> self mask) (process-mask enemy attackable)) (set! (-> self mask) (logior (process-mask projectile) (-> self mask))) @@ -771,7 +771,7 @@ ) ;; definition for function kermit-get-head-dir-xz -;; Used lq/sq +;; INFO: Used lq/sq (defun kermit-get-head-dir-xz ((arg0 kermit) (arg1 vector)) (set! (-> arg1 quad) (-> arg0 node-list data 8 bone transform vector 2 quad)) (set! (-> arg1 y) 0.0) @@ -779,7 +779,7 @@ ) ;; definition for function kermit-get-head-dir -;; Used lq/sq +;; INFO: Used lq/sq (defun kermit-get-head-dir ((arg0 kermit) (arg1 vector)) (set! (-> arg1 quad) (-> arg0 node-list data 8 bone transform vector 2 quad)) (vector-normalize! arg1 1.0) @@ -791,7 +791,7 @@ ) ;; definition for function kermit-get-tongue-target-callback -;; Used lq/sq +;; INFO: Used lq/sq (defun kermit-get-tongue-target-callback ((arg0 vector)) (set! (-> arg0 quad) (-> (kermit-player-target-pos) quad)) arg0 @@ -843,7 +843,7 @@ ) ;; definition for function kermit-set-nav-mesh-target -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior kermit-set-nav-mesh-target kermit ((arg0 vector)) (let* ((gp-0 (target-pos 0)) (s5-1 (vector-! (new 'stack-no-clear 'vector) arg0 gp-0)) @@ -916,7 +916,7 @@ ) ;; definition for function kermit-set-rotate-dir-to-nav-target -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior kermit-set-rotate-dir-to-nav-target kermit () (cond ((logtest? (nav-control-flags navcf19) (-> self nav flags)) @@ -956,7 +956,7 @@ nav-enemy-default-event-handler ) ;; definition for function kermit-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior kermit-post kermit () (cond ((-> self airborne) @@ -998,7 +998,7 @@ nav-enemy-default-event-handler ) ;; definition for function kermit-get-new-patrol-point -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior kermit-get-new-patrol-point kermit () (nav-enemy-get-new-patrol-point) (let ((v0-1 (-> self nav target-pos))) diff --git a/test/decompiler/reference/jak1/levels/swamp/swamp-bat_REF.gc b/test/decompiler/reference/jak1/levels/swamp/swamp-bat_REF.gc index 15a649bfd6..0cf5d91949 100644 --- a/test/decompiler/reference/jak1/levels/swamp/swamp-bat_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/swamp-bat_REF.gc @@ -27,7 +27,7 @@ ) ;; definition for method 9 of type swamp-bat-idle-path -;; Used lq/sq +;; INFO: Used lq/sq (defmethod TODO-RENAME-9 swamp-bat-idle-path ((obj swamp-bat-idle-path) (arg0 vector) (arg1 float)) (let ((f30-0 (* 65536.0 arg1))) (set! (-> arg0 quad) (-> obj origin quad)) @@ -178,7 +178,7 @@ swamp-bat-slave-event-handler ) ;; definition for function swamp-bat-slave-path-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior swamp-bat-slave-path-post swamp-bat-slave () (let ((s2-0 (-> self parent-process 0 path-list (-> self path-select))) (s5-0 (new-stack-vector0)) @@ -213,7 +213,7 @@ swamp-bat-slave-event-handler ) ;; definition for function swamp-bat-slave-get-new-path -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior swamp-bat-slave-get-new-path swamp-bat-slave () (set! (-> self path-select) (-> self parent-process 0 path-select)) (set! (-> self idle-path origin quad) (-> self parent-process 0 path-origin quad)) @@ -452,8 +452,8 @@ swamp-bat-slave-event-handler ) ;; definition for function swamp-bat-slave-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior swamp-bat-slave-init-by-other swamp-bat-slave ((arg0 swamp-bat-slave) (arg1 int)) (set! (-> self mask) (logior (process-mask enemy) (-> self mask))) (let ((s4-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/swamp/swamp-obs_REF.gc b/test/decompiler/reference/jak1/levels/swamp/swamp-obs_REF.gc index 1c3d1c31b0..c14f721e7d 100644 --- a/test/decompiler/reference/jak1/levels/swamp/swamp-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/swamp-obs_REF.gc @@ -737,8 +737,8 @@ ) ;; definition for function swamp-rock-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior swamp-rock-init-by-other swamp-rock ((arg0 vector)) (set! (-> self mask) (logior (process-mask attackable) (-> self mask))) (let ((s5-0 (new 'process 'collide-shape-moving self (collide-list-enum usually-hit-by-player)))) @@ -923,8 +923,8 @@ ) ;; definition for method 31 of type tar-plat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 tar-plat ((obj tar-plat)) (initialize-skeleton obj *tar-plat-sg* '()) (TODO-RENAME-29 obj *tar-plat-constants*) diff --git a/test/decompiler/reference/jak1/levels/swamp/swamp-rat-nest_REF.gc b/test/decompiler/reference/jak1/levels/swamp/swamp-rat-nest_REF.gc index 0e99789a6b..286b0d5ef8 100644 --- a/test/decompiler/reference/jak1/levels/swamp/swamp-rat-nest_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/swamp-rat-nest_REF.gc @@ -875,8 +875,8 @@ ) ;; definition for function swamp-rat-nest-dummy-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior swamp-rat-nest-dummy-init-by-other swamp-rat-nest-dummy ((arg0 swamp-rat-nest-dummy)) (let ((gp-0 (-> arg0 entity))) (set! (-> self mask) (logior (process-mask enemy) (-> self mask))) @@ -916,7 +916,7 @@ swamp-rat-nest-default-event-handler ;; definition for function swamp-rat-nest-pick-spawn-joint -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior swamp-rat-nest-pick-spawn-joint swamp-rat-nest () (when (and *target* (>= 32768.0 (vector-vector-distance (-> self root trans) (-> *target* control trans)))) (dotimes (gp-0 5) @@ -941,9 +941,9 @@ swamp-rat-nest-default-event-handler ) ;; definition for function swamp-rat-nest-spawn-rat +;; INFO: Used lq/sq ;; INFO: Return type mismatch (pointer process) vs (pointer swamp-rat). -;; WARN: Function may read a register that is not set: t2 -;; Used lq/sq +;; ERROR: Function may read a register that is not set: t2 (defbehavior swamp-rat-nest-spawn-rat swamp-rat-nest () (local-vars (t2-0 none)) (the-as diff --git a/test/decompiler/reference/jak1/levels/swamp/swamp-rat_REF.gc b/test/decompiler/reference/jak1/levels/swamp/swamp-rat_REF.gc index 925bf973f3..1a9a0037ab 100644 --- a/test/decompiler/reference/jak1/levels/swamp/swamp-rat_REF.gc +++ b/test/decompiler/reference/jak1/levels/swamp/swamp-rat_REF.gc @@ -92,7 +92,7 @@ swamp-rat-default-event-handler ;; definition for method 39 of type swamp-rat -;; Used lq/sq +;; INFO: Used lq/sq (defmethod common-post swamp-rat ((obj swamp-rat)) (when (logtest? (-> obj collide-info status) (cshape-moving-flags onsurf)) (vector-deg-seek (-> obj up-vector) (-> obj up-vector) (-> obj collide-info surface-normal) 910.2222) @@ -108,8 +108,8 @@ swamp-rat-default-event-handler ) ;; definition for method 38 of type swamp-rat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-38 swamp-rat ((obj swamp-rat)) (integrate-for-enemy-with-move-to-ground! (-> obj collide-info) @@ -199,7 +199,7 @@ swamp-rat-default-event-handler ) ;; definition for function swamp-rat-update-wiggle-target -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior swamp-rat-update-wiggle-target swamp-rat ((arg0 vector)) (+! (-> self wiggle-angle) (-> self delta-wiggle-angle)) (if (< 65536.0 (-> self wiggle-angle)) @@ -484,8 +484,8 @@ swamp-rat-default-event-handler ) ;; definition for method 48 of type swamp-rat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-48 swamp-rat ((obj swamp-rat)) (initialize-skeleton obj *swamp-rat-sg* '()) (TODO-RENAME-45 obj *swamp-rat-nav-enemy-info*) @@ -509,8 +509,8 @@ swamp-rat-default-event-handler ) ;; definition for function swamp-rat-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior swamp-rat-init-by-other swamp-rat ((arg0 billy) (arg1 vector) (arg2 vector) (arg3 pickup-type) (arg4 symbol)) (initialize-collision self) (if arg4 diff --git a/test/decompiler/reference/jak1/levels/title/title-obs_REF.gc b/test/decompiler/reference/jak1/levels/title/title-obs_REF.gc index 0f211192b5..9dfa51a6b2 100644 --- a/test/decompiler/reference/jak1/levels/title/title-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/title/title-obs_REF.gc @@ -602,8 +602,8 @@ ) ;; definition for function logo-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior logo-init-by-other logo ((arg0 entity-actor) (arg1 vector) (arg2 symbol)) (stack-size-set! (-> self main-thread) 512) (logclear! (-> self mask) (process-mask progress)) diff --git a/test/decompiler/reference/jak1/levels/training/training-obs_REF.gc b/test/decompiler/reference/jak1/levels/training/training-obs_REF.gc index b3fd32b846..f23afaa864 100644 --- a/test/decompiler/reference/jak1/levels/training/training-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/training/training-obs_REF.gc @@ -261,8 +261,8 @@ ) ;; definition for method 11 of type training-cam +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! training-cam ((obj training-cam) (arg0 entity-actor)) "Copy defaults from the entity." (logior! (-> obj mask) (process-mask actor-pause)) @@ -377,8 +377,8 @@ ) ;; definition for method 31 of type tra-pontoon +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 tra-pontoon ((obj tra-pontoon)) (initialize-skeleton obj *tra-pontoon-sg* '()) (TODO-RENAME-29 obj *tra-pontoon-constants*) diff --git a/test/decompiler/reference/jak1/levels/village1/fishermans-boat_REF.gc b/test/decompiler/reference/jak1/levels/village1/fishermans-boat_REF.gc index acdeff6b18..120490ce73 100644 --- a/test/decompiler/reference/jak1/levels/village1/fishermans-boat_REF.gc +++ b/test/decompiler/reference/jak1/levels/village1/fishermans-boat_REF.gc @@ -83,7 +83,7 @@ ) ;; definition for method 10 of type vehicle-path -;; Used lq/sq +;; INFO: Used lq/sq (defmethod nth-point vehicle-path ((obj vehicle-path) (arg0 int) (arg1 vector)) (set! (-> arg1 quad) (-> obj point-array arg0 quad)) arg1 @@ -116,7 +116,7 @@ ) ;; definition for method 13 of type vehicle-path -;; Used lq/sq +;; INFO: Used lq/sq (defmethod debug-draw vehicle-path ((obj vehicle-path)) (local-vars (sv-64 int) (sv-80 (function _varargs_ object))) (let ((s5-0 (new 'stack-no-clear 'vector)) @@ -323,8 +323,8 @@ ) ;; definition for method 12 of type vehicle-controller +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-12 vehicle-controller ((obj vehicle-controller) (arg0 int) (arg1 vector)) (when (< arg0 (get-point-count (-> obj path))) (set! (-> obj path-dest-index) arg0) @@ -374,8 +374,8 @@ ) ;; definition for method 14 of type vehicle-controller +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-14 vehicle-controller ((obj vehicle-controller) (arg0 vector) (arg1 vector)) (let ((s5-0 (new 'stack-no-clear 'vector)) (s3-0 (new 'stack-no-clear 'vector)) @@ -412,8 +412,8 @@ ) ;; definition for method 15 of type vehicle-controller +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod dummy-15 vehicle-controller ((obj vehicle-controller) (arg0 collide-shape-moving)) (TODO-RENAME-14 obj (-> arg0 trans) (-> obj target-point)) (let ((s3-0 (new 'stack-no-clear 'vector)) @@ -474,8 +474,8 @@ ) ;; definition for method 10 of type vehicle-controller +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-10 vehicle-controller ((obj vehicle-controller) (arg0 vector) (arg1 float) (arg2 int)) (let ((s3-0 (new 'stack-no-clear 'vector))) (set! (-> s3-0 quad) (-> arg0 quad)) @@ -649,8 +649,8 @@ ) ;; definition for method 23 of type fishermans-boat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-23 fishermans-boat ((obj fishermans-boat) (arg0 float)) (local-vars (sv-128 int) (sv-144 rigid-body-control-point) (sv-160 int) (sv-176 vector)) (let ((s4-0 (new 'stack-no-clear 'vector)) @@ -793,8 +793,8 @@ ) ;; definition for function fishermans-boat-wave +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior fishermans-boat-wave fishermans-boat ((arg0 vector) (arg1 float) (arg2 float)) (let ((gp-0 (new 'stack-no-clear 'vector))) (set! (-> gp-0 quad) (-> arg0 quad)) @@ -1435,8 +1435,8 @@ ) ;; definition for method 31 of type fishermans-boat +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 fishermans-boat ((obj fishermans-boat)) (initialize-skeleton obj *fishermans-boat-sg* '()) (logclear! (-> obj mask) (process-mask actor-pause movie)) diff --git a/test/decompiler/reference/jak1/levels/village1/village-obs_REF.gc b/test/decompiler/reference/jak1/levels/village1/village-obs_REF.gc index 0350257c59..a6716e5290 100644 --- a/test/decompiler/reference/jak1/levels/village1/village-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/village1/village-obs_REF.gc @@ -640,8 +640,8 @@ ) ;; definition for method 11 of type reflector-middle +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! reflector-middle ((obj reflector-middle) (arg0 entity-actor)) (set! (-> obj root) (new 'process 'trsqv)) (process-drawable-from-entity! obj arg0) @@ -890,8 +890,8 @@ ) ;; definition for function starfish-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior starfish-init-by-other starfish ((arg0 starfish) (arg1 vector)) (initialize-collision self) (logior! (-> self mask) (process-mask actor-pause)) @@ -920,8 +920,8 @@ ) ;; definition for function starfish-spawn-child +;; INFO: Used lq/sq ;; INFO: Return type mismatch (pointer process) vs (pointer starfish). -;; Used lq/sq (defbehavior starfish-spawn-child starfish () (let ((gp-0 (new-stack-vector0))) (get-random-point (-> self path) gp-0) diff --git a/test/decompiler/reference/jak1/levels/village1/yakow_REF.gc b/test/decompiler/reference/jak1/levels/village1/yakow_REF.gc index ad9aabf89c..8c65acb708 100644 --- a/test/decompiler/reference/jak1/levels/village1/yakow_REF.gc +++ b/test/decompiler/reference/jak1/levels/village1/yakow_REF.gc @@ -297,7 +297,7 @@ yakow-default-event-handler ) ;; definition for function yakow-post -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior yakow-post yakow () (dummy-11 (-> self nav) (-> self nav target-pos)) (set! (-> self rotating) #f) @@ -369,7 +369,7 @@ yakow-default-event-handler ) ;; definition for function yakow-generate-travel-vector -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior yakow-generate-travel-vector yakow () (let ((gp-1 (vector-! (new 'stack-no-clear 'vector) (-> self root-override trans) (target-pos 0))) (s5-1 (vector-z-quaternion! (new 'stack-no-clear 'vector) (-> self root-override quat))) @@ -486,7 +486,7 @@ yakow-default-event-handler ) ;; definition for function yakow-facing-direction? -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior yakow-facing-direction? yakow ((arg0 vector) (arg1 float)) (let ((s4-0 (vector-z-quaternion! (new 'stack-no-clear 'vector) (-> self root-override quat))) (s5-0 (new 'stack-no-clear 'vector)) @@ -835,8 +835,8 @@ yakow-default-event-handler ) ;; definition for method 11 of type yakow +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! yakow ((obj yakow) (arg0 entity-actor)) (stack-size-set! (-> obj main-thread) 512) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) diff --git a/test/decompiler/reference/jak1/levels/village2/assistant-village2_REF.gc b/test/decompiler/reference/jak1/levels/village2/assistant-village2_REF.gc index 57272889be..37c811b448 100644 --- a/test/decompiler/reference/jak1/levels/village2/assistant-village2_REF.gc +++ b/test/decompiler/reference/jak1/levels/village2/assistant-village2_REF.gc @@ -1226,8 +1226,8 @@ ) ;; definition for function assistant-levitator-blue-beam +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior assistant-levitator-blue-beam assistant-levitator () (let ((s5-0 (new 'stack-no-clear 'vector)) (gp-0 (new 'stack-no-clear 'vector)) diff --git a/test/decompiler/reference/jak1/levels/village2/swamp-blimp_REF.gc b/test/decompiler/reference/jak1/levels/village2/swamp-blimp_REF.gc index a12b59e196..424644fd1d 100644 --- a/test/decompiler/reference/jak1/levels/village2/swamp-blimp_REF.gc +++ b/test/decompiler/reference/jak1/levels/village2/swamp-blimp_REF.gc @@ -519,8 +519,8 @@ ) ;; definition for method 9 of type swamp-blimp-oscillator +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod init! swamp-blimp-oscillator ((obj swamp-blimp-oscillator) (arg0 vector) (arg1 float) (arg2 float) (arg3 float)) (cond (arg0 @@ -1322,8 +1322,8 @@ ) ;; definition for function swamp-rope-update-bounding-spheres +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior swamp-rope-update-bounding-spheres swamp-rope () (let ((a0-0 (new 'stack-no-clear 'vector))) (vector-! a0-0 (-> self other-pos) (-> self root trans)) @@ -1345,7 +1345,7 @@ ) ;; definition for function swamp-rope-break-code -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior swamp-rope-break-code swamp-rope () (when (or (< 0.001 (fabs (-> self base-vec x))) (< 0.001 (fabs (-> self base-vec z)))) (set! (-> self base-vec x) @@ -1443,8 +1443,8 @@ ) ;; definition for function swamp-rope-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior swamp-rope-trans swamp-rope () (vector<-cspace! (-> self root trans) (-> self parent-override 0 node-list data (-> self parent-rp))) (cond @@ -1542,8 +1542,8 @@ ) ;; definition for function swamp-rope-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior swamp-rope-init-by-other swamp-rope ((arg0 vector) (arg1 entity-actor)) (set! (-> self root) (new 'process 'trsqv)) (set! (-> self root trans quad) (-> arg0 quad)) @@ -1811,8 +1811,8 @@ ) ;; definition for method 11 of type swamp-blimp +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! swamp-blimp ((obj swamp-blimp) (arg0 entity-actor)) (let ((s4-0 (new 'process 'collide-shape-moving obj (collide-list-enum hit-by-player)))) (set! (-> s4-0 dynam) (copy *standard-dynamics* 'process)) diff --git a/test/decompiler/reference/jak1/levels/village2/village2-obs_REF.gc b/test/decompiler/reference/jak1/levels/village2/village2-obs_REF.gc index fdf2392df2..91959f174c 100644 --- a/test/decompiler/reference/jak1/levels/village2/village2-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/village2/village2-obs_REF.gc @@ -368,8 +368,8 @@ ) ;; definition for method 31 of type pontoonfive +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 pontoonfive ((obj pontoonfive)) (initialize-skeleton obj *pontoonfive-sg* '()) (TODO-RENAME-29 obj *pontoonfive-constants*) @@ -433,8 +433,8 @@ ) ;; definition for method 31 of type pontoonten +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defmethod TODO-RENAME-31 pontoonten ((obj pontoonten)) (initialize-skeleton obj *pontoonten-sg* '()) (TODO-RENAME-29 obj *pontoonten-constants*) @@ -696,7 +696,7 @@ ) ;; definition for function fireboulder-hover-stuff -;; Used lq/sq +;; INFO: Used lq/sq (defbehavior fireboulder-hover-stuff fireboulder () (local-vars (v0-1 object)) (let ((gp-0 (new 'stack-no-clear 'vector))) @@ -1091,8 +1091,8 @@ ) ;; definition for method 11 of type exit-chamber-dummy +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! exit-chamber-dummy ((obj exit-chamber-dummy) (arg0 entity-actor)) (set! (-> obj fcell-handle) (the-as handle #f)) (set! (-> obj root) (new 'process 'trsqv)) @@ -1341,8 +1341,8 @@ ) ;; definition for function boulder1-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder1-trans fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 82.0) @@ -1369,8 +1369,8 @@ ) ;; definition for function boulder2-trans-2 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder2-trans-2 fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 120.0) @@ -1397,8 +1397,8 @@ ) ;; definition for function boulder2-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder2-trans fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 82.0) @@ -1425,8 +1425,8 @@ ) ;; definition for function boulder3-trans-2 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder3-trans-2 fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 131.0) @@ -1453,8 +1453,8 @@ ) ;; definition for function boulder3-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder3-trans fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 80.0) @@ -1481,8 +1481,8 @@ ) ;; definition for function boulder4-trans-3 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder4-trans-3 fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 152.4) @@ -1509,8 +1509,8 @@ ) ;; definition for function boulder4-trans-2 +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder4-trans-2 fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 116.0) @@ -1537,8 +1537,8 @@ ) ;; definition for function boulder4-trans +;; INFO: Used lq/sq ;; INFO: Return type mismatch int vs none. -;; Used lq/sq (defbehavior boulder4-trans fireboulder () (spawn (-> self part) (-> self draw origin)) (when (>= (ja-aframe-num 0) 74.0) diff --git a/test/decompiler/reference/jak1/levels/village_common/villagep-obs_REF.gc b/test/decompiler/reference/jak1/levels/village_common/villagep-obs_REF.gc index af2a4add17..e0a26af3a5 100644 --- a/test/decompiler/reference/jak1/levels/village_common/villagep-obs_REF.gc +++ b/test/decompiler/reference/jak1/levels/village_common/villagep-obs_REF.gc @@ -434,8 +434,8 @@ ) ;; definition for function warp-gate-init-by-other +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defbehavior warp-gate-init-by-other warp-gate ((arg0 vector)) (stack-size-set! (-> self main-thread) 512) (set! (-> self root) (new 'process 'trsqv)) @@ -1201,8 +1201,8 @@ ) ;; definition for method 11 of type village-cam +;; INFO: Used lq/sq ;; INFO: Return type mismatch object vs none. -;; Used lq/sq (defmethod init-from-entity! village-cam ((obj village-cam) (arg0 entity-actor)) "Copy defaults from the entity." (logior! (-> obj mask) (process-mask actor-pause)) diff --git a/test/decompiler/reference/jak2/kernel/gcommon_REF.gc b/test/decompiler/reference/jak2/kernel/gcommon_REF.gc index 29beb8bf1c..be177cc06a 100644 --- a/test/decompiler/reference/jak2/kernel/gcommon_REF.gc +++ b/test/decompiler/reference/jak2/kernel/gcommon_REF.gc @@ -147,7 +147,7 @@ ) ;; definition for method 3 of type vector -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect vector ((obj vector)) (when (not obj) (set! obj obj) @@ -573,7 +573,7 @@ ) ;; definition for method 2 of type array -;; Used lq/sq +;; INFO: Used lq/sq (defmethod print array ((obj array)) (format #t "#(") (cond @@ -723,7 +723,7 @@ ) ;; definition for method 3 of type array -;; Used lq/sq +;; INFO: Used lq/sq (defmethod inspect array ((obj array)) (format #t "[~8x] ~A~%" obj (-> obj type)) (format #t "~Tallocated-length: ~D~%" (-> obj allocated-length)) @@ -831,7 +831,7 @@ ) ;; definition for function qmem-copy<-! -;; Used lq/sq +;; INFO: Used lq/sq (defun qmem-copy<-! ((arg0 pointer) (arg1 pointer) (arg2 int)) (let ((v0-0 arg0)) (countdown (v1-1 (/ (+ arg2 15) 16)) @@ -844,7 +844,7 @@ ) ;; definition for function qmem-copy->! -;; Used lq/sq +;; INFO: Used lq/sq (defun qmem-copy->! ((arg0 pointer) (arg1 pointer) (arg2 int)) (let ((v0-0 arg0)) (let* ((v1-1 (/ (+ arg2 15) 16)) @@ -954,9 +954,9 @@ ) ;; definition for function breakpoint-range-set! -;; WARN: Unsupported inline assembly instruction kind - [mtc0 Debug, a0] -;; WARN: Unsupported inline assembly instruction kind - [mtdab a1] -;; WARN: Unsupported inline assembly instruction kind - [mtdabm a2] +;; ERROR: Unsupported inline assembly instruction kind - [mtc0 Debug, a0] +;; ERROR: Unsupported inline assembly instruction kind - [mtdab a1] +;; ERROR: Unsupported inline assembly instruction kind - [mtdabm a2] (defun breakpoint-range-set! ((arg0 uint) (arg1 uint) (arg2 uint)) (.mtc0 Debug arg0) (.mtdab arg1) @@ -970,10 +970,10 @@ ;; WARN: Using new Jak 2 rtype-of ;; WARN: Using new Jak 2 rtype-of ;; WARN: Using new Jak 2 rtype-of -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] -;; WARN: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] +;; ERROR: Unsupported inline assembly instruction kind - [daddu v1, v1, s7] (defun valid? ((arg0 object) (arg1 type) (arg2 symbol) (arg3 symbol) (arg4 object)) (local-vars (v1-11 int) (v1-26 int) (v1-56 int) (v1-60 int) (s7-0 none)) (let ((v1-1 @@ -1184,7 +1184,3 @@ ;; failed to figure out what this is: 0 - - - - diff --git a/test/decompiler/reference/jak2/kernel/gkernel_REF.gc b/test/decompiler/reference/jak2/kernel/gkernel_REF.gc index 28bf2e0618..b18655d66c 100644 --- a/test/decompiler/reference/jak2/kernel/gkernel_REF.gc +++ b/test/decompiler/reference/jak2/kernel/gkernel_REF.gc @@ -818,7 +818,7 @@ ;; definition for method 17 of type dead-pool-heap ;; INFO: Return type mismatch int vs none. -;; WARN: Expression building failed: Function (method 17 dead-pool-heap) has a return type of none, but the expression builder found a return statement. +;; WARN: Function (method 17 dead-pool-heap) has a return type of none, but the expression builder found a return statement. (defmethod compact dead-pool-heap ((obj dead-pool-heap) (arg0 int)) (if (zero? (-> obj heap base)) (return 0) @@ -1484,8 +1484,8 @@ ;; definition for method 10 of type process ;; INFO: Return type mismatch int vs none. -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr ra] +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr ra] (defmethod deactivate process ((obj process)) (local-vars (s7-0 none) (ra-0 int)) (with-pp diff --git a/test/decompiler/reference/jak2/kernel/gstate_REF.gc b/test/decompiler/reference/jak2/kernel/gstate_REF.gc index 5d00eb305d..8102727ef5 100644 --- a/test/decompiler/reference/jak2/kernel/gstate_REF.gc +++ b/test/decompiler/reference/jak2/kernel/gstate_REF.gc @@ -42,10 +42,10 @@ ) ;; definition for function enter-state -;; WARN: Unsupported inline assembly instruction kind - [lwu sp, 28(v1)] -;; WARN: Unsupported inline assembly instruction kind - [lw ra, return-from-thread-dead(s7)] -;; WARN: Unsupported inline assembly instruction kind - [jr t9] -;; WARN: Unsupported inline assembly instruction kind - [sw v1, 0(sp)] +;; ERROR: Unsupported inline assembly instruction kind - [lwu sp, 28(v1)] +;; ERROR: Unsupported inline assembly instruction kind - [lw ra, return-from-thread-dead(s7)] +;; ERROR: Unsupported inline assembly instruction kind - [jr t9] +;; ERROR: Unsupported inline assembly instruction kind - [sw v1, 0(sp)] (defun enter-state ((arg0 object) (arg1 object) (arg2 object) (arg3 object) (arg4 object) (arg5 object)) (local-vars (s7-0 none) (sp-0 int) (ra-0 int) (sv-0 none)) (with-pp @@ -174,7 +174,3 @@ ) #f ) - - - -