Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 37 additions & 0 deletions ps2xRecomp/include/ps2recomp/code_generator.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#ifndef PS2RECOMP_CODE_GENERATOR_H
#define PS2RECOMP_CODE_GENERATOR_H

#include <cstdint>
#include <string>
#include <vector>
#include <map>
Expand Down Expand Up @@ -89,6 +90,12 @@ namespace ps2recomp
std::string translateVU_VADD_Field(const Instruction &inst);
std::string translateVU_VSUB_Field(const Instruction &inst);
std::string translateVU_VMUL_Field(const Instruction &inst);
std::string translateVU_VMSUB_Field(const Instruction &inst);
std::string translateVU_VADDA_Field(const Instruction &inst);
std::string translateVU_VSUBA_Field(const Instruction &inst);
std::string translateVU_VMADDA_Field(const Instruction &inst);
std::string translateVU_VMSUBA_Field(const Instruction &inst);
std::string translateVU_VMULA_Field(const Instruction &inst);
std::string translateVU_VADD(const Instruction &inst);
std::string translateVU_VSUB(const Instruction &inst);
std::string translateVU_VMUL(const Instruction &inst);
Expand All @@ -112,10 +119,40 @@ namespace ps2recomp
std::string translateVU_VRXOR(const Instruction &inst);
std::string translateVU_VMADD_Field(const Instruction &inst);
std::string translateVU_VMINI_Field(const Instruction &inst);
std::string translateVU_VMAX_Field(const Instruction &inst);
std::string translateVU_VMADD(const Instruction &inst);
std::string translateVU_VMADDq(const Instruction &inst);
std::string translateVU_VMADDi(const Instruction &inst);
std::string translateVU_VMAX(const Instruction &inst);
std::string translateVU_VMAXi(const Instruction &inst);
std::string translateVU_VADDA(const Instruction &inst);
std::string translateVU_VADDAq(const Instruction &inst);
std::string translateVU_VADDAi(const Instruction &inst);
std::string translateVU_VSUBA(const Instruction &inst);
std::string translateVU_VSUBAq(const Instruction &inst);
std::string translateVU_VSUBAi(const Instruction &inst);
std::string translateVU_VMADDA(const Instruction &inst);
std::string translateVU_VMADDAq(const Instruction &inst);
std::string translateVU_VMADDAi(const Instruction &inst);
std::string translateVU_VMSUBA(const Instruction &inst);
std::string translateVU_VMSUBAq(const Instruction &inst);
std::string translateVU_VMSUBAi(const Instruction &inst);
std::string translateVU_VMULA(const Instruction &inst);
std::string translateVU_VMULAq(const Instruction &inst);
std::string translateVU_VMULAi(const Instruction &inst);
std::string translateVU_VOPMULA(const Instruction &inst);
std::string translateVU_VOPMSUB(const Instruction &inst);
std::string translateVU_VMINI(const Instruction &inst);
std::string translateVU_VMINIi(const Instruction &inst);
std::string translateVU_VMSUB(const Instruction &inst);
std::string translateVU_VMSUBq(const Instruction &inst);
std::string translateVU_VMSUBi(const Instruction &inst);
std::string translateVU_VITOF(const Instruction &inst, int shift);
std::string translateVU_VFTOI(const Instruction &inst, int shift);
std::string translateVU_VLQI(const Instruction &inst);
std::string translateVU_VSQI(const Instruction &inst);
std::string translateVU_VLQD(const Instruction &inst);
std::string translateVU_VSQD(const Instruction &inst);

// Jump Table Generation
std::string generateJumpTableSwitch(const Instruction &inst, uint32_t tableAddress,
Expand Down
Loading