mirror of
https://github.com/open-goal/jak-project
synced 2026-08-22 07:04:29 -04:00
[decompiler] process-drawable-h (#561)
* decomile process-drawable-h * one more
This commit is contained in:
@@ -242,7 +242,6 @@ FormElement* StoreOp::get_vf_store_as_form(FormPool& pool, const Env& env) const
|
||||
}
|
||||
assert(!rd.addr_of); // we'll change this to true because .svf uses an address.
|
||||
auto addr = pool.alloc_single_element_form<DerefElement>(nullptr, source, true, tokens);
|
||||
|
||||
return pool.alloc_element<VectorFloatLoadStoreElement>(m_value.var().reg(), addr, false);
|
||||
} else {
|
||||
// try again with no deref.
|
||||
@@ -261,7 +260,6 @@ FormElement* StoreOp::get_vf_store_as_form(FormPool& pool, const Env& env) const
|
||||
// some sketchy type stuff going on.
|
||||
addr = pool.alloc_single_element_form<CastElement>(
|
||||
nullptr, TypeSpec("pointer", {TypeSpec("uint128")}), addr);
|
||||
|
||||
return pool.alloc_element<VectorFloatLoadStoreElement>(m_value.var().reg(), addr, false);
|
||||
}
|
||||
}
|
||||
@@ -421,7 +419,8 @@ FormElement* StoreOp::get_as_form(FormPool& pool, const Env& env) const {
|
||||
|
||||
return pool.alloc_element<StorePlainDeref>(
|
||||
addr, m_value.as_expr(), m_my_idx, ro.var, std::nullopt,
|
||||
get_typecast_for_atom(m_value, env, coerce_to_reg_type(rd.result_type), m_my_idx));
|
||||
get_typecast_for_atom(m_value, env, coerce_to_reg_type(rd.result_type), m_my_idx),
|
||||
m_size);
|
||||
}
|
||||
|
||||
std::string cast_type;
|
||||
@@ -466,7 +465,7 @@ FormElement* StoreOp::get_as_form(FormPool& pool, const Env& env) const {
|
||||
pool.alloc_element<DerefElement>(cast_source, false, std::vector<DerefToken>());
|
||||
return pool.alloc_element<StorePlainDeref>(deref, m_value.as_expr(), m_my_idx, ro.var,
|
||||
TypeSpec("pointer", {TypeSpec(cast_type)}),
|
||||
std::nullopt);
|
||||
std::nullopt, m_size);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user