mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-07-03 21:41:26 +12:00
Remove ppu_attr::known_addr
This commit is contained in:
parent
9d5b75bb7a
commit
f0fa8e3bc3
2 changed files with 2 additions and 9 deletions
|
@ -21,7 +21,6 @@ void fmt_class_string<ppu_attr>::format(std::string& out, u64 arg)
|
||||||
{
|
{
|
||||||
switch (value)
|
switch (value)
|
||||||
{
|
{
|
||||||
case ppu_attr::known_addr: return "known_addr";
|
|
||||||
case ppu_attr::known_size: return "known_size";
|
case ppu_attr::known_size: return "known_size";
|
||||||
case ppu_attr::no_return: return "no_return";
|
case ppu_attr::no_return: return "no_return";
|
||||||
case ppu_attr::no_size: return "no_size";
|
case ppu_attr::no_size: return "no_size";
|
||||||
|
@ -786,7 +785,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
|
|
||||||
TOCs.emplace(toc);
|
TOCs.emplace(toc);
|
||||||
auto& func = add_func(addr, addr_heap.count(_ptr.addr()) ? toc : 0, 0);
|
auto& func = add_func(addr, addr_heap.count(_ptr.addr()) ? toc : 0, 0);
|
||||||
func.attr += ppu_attr::known_addr;
|
|
||||||
known_functions.emplace(addr);
|
known_functions.emplace(addr);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -924,7 +922,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
}
|
}
|
||||||
|
|
||||||
//auto& func = add_func(addr, 0, 0);
|
//auto& func = add_func(addr, 0, 0);
|
||||||
//func.attr += ppu_attr::known_addr;
|
|
||||||
//func.attr += ppu_attr::known_size;
|
//func.attr += ppu_attr::known_size;
|
||||||
//func.size = size;
|
//func.size = size;
|
||||||
//known_functions.emplace(func);
|
//known_functions.emplace(func);
|
||||||
|
@ -1109,7 +1106,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
func.toc = -1;
|
func.toc = -1;
|
||||||
func.size = 0x1C;
|
func.size = 0x1C;
|
||||||
func.blocks.emplace(func.addr, func.size);
|
func.blocks.emplace(func.addr, func.size);
|
||||||
func.attr += ppu_attr::known_addr;
|
|
||||||
func.attr += ppu_attr::known_size;
|
func.attr += ppu_attr::known_size;
|
||||||
|
|
||||||
// Look for another imports to fill gaps (hack)
|
// Look for another imports to fill gaps (hack)
|
||||||
|
@ -1128,7 +1124,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
auto& next = add_func(_p2.addr(), -1, func.addr);
|
auto& next = add_func(_p2.addr(), -1, func.addr);
|
||||||
next.size = 0x1C;
|
next.size = 0x1C;
|
||||||
next.blocks.emplace(next.addr, next.size);
|
next.blocks.emplace(next.addr, next.size);
|
||||||
next.attr += ppu_attr::known_addr;
|
|
||||||
next.attr += ppu_attr::known_size;
|
next.attr += ppu_attr::known_size;
|
||||||
advance(_p2, p2, 7);
|
advance(_p2, p2, 7);
|
||||||
}
|
}
|
||||||
|
@ -1148,8 +1143,9 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
// Trampoline with TOC
|
// Trampoline with TOC
|
||||||
const u32 target = (ptr[3] << 16) + s16(ptr[4]);
|
const u32 target = (ptr[3] << 16) + s16(ptr[4]);
|
||||||
const u32 toc_add = (ptr[1] << 16) + s16(ptr[2]);
|
const u32 toc_add = (ptr[1] << 16) + s16(ptr[2]);
|
||||||
|
constexpr u32 func_size = 0x1C;
|
||||||
|
|
||||||
if (target >= start && target < end && verify_func((_ptr + 3).addr()))
|
if (target >= start && target < end && verify_func((_ptr + 3).addr()) && target - func.addr >= func_size)
|
||||||
{
|
{
|
||||||
auto& new_func = add_func(target, 0, func.addr);
|
auto& new_func = add_func(target, 0, func.addr);
|
||||||
|
|
||||||
|
@ -1247,7 +1243,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
func.toc = -1;
|
func.toc = -1;
|
||||||
func.size = 0x20;
|
func.size = 0x20;
|
||||||
func.blocks.emplace(func.addr, func.size);
|
func.blocks.emplace(func.addr, func.size);
|
||||||
func.attr += ppu_attr::known_addr;
|
|
||||||
known_functions.emplace(func.addr);
|
known_functions.emplace(func.addr);
|
||||||
func.attr += ppu_attr::known_size;
|
func.attr += ppu_attr::known_size;
|
||||||
|
|
||||||
|
@ -1268,7 +1263,6 @@ bool ppu_module<lv2_obj>::analyse(u32 lib_toc, u32 entry, const u32 sec_end, con
|
||||||
auto& next = add_func(_p2.addr(), -1, func.addr);
|
auto& next = add_func(_p2.addr(), -1, func.addr);
|
||||||
next.size = 0x20;
|
next.size = 0x20;
|
||||||
next.blocks.emplace(next.addr, next.size);
|
next.blocks.emplace(next.addr, next.size);
|
||||||
next.attr += ppu_attr::known_addr;
|
|
||||||
next.attr += ppu_attr::known_size;
|
next.attr += ppu_attr::known_size;
|
||||||
advance(_p2, p2, 8);
|
advance(_p2, p2, 8);
|
||||||
known_functions.emplace(next.addr);
|
known_functions.emplace(next.addr);
|
||||||
|
|
|
@ -16,7 +16,6 @@
|
||||||
// PPU Function Attributes
|
// PPU Function Attributes
|
||||||
enum class ppu_attr : u32
|
enum class ppu_attr : u32
|
||||||
{
|
{
|
||||||
known_addr,
|
|
||||||
known_size,
|
known_size,
|
||||||
no_return,
|
no_return,
|
||||||
no_size,
|
no_size,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue