From 791f8e3b9a9a8e087493b9d5d4107cfb43386522 Mon Sep 17 00:00:00 2001 From: S Gopal Rajagopal Date: Mon, 15 Sep 2014 20:00:50 +0530 Subject: [PATCH] Compilation Fix --- .gitignore | 5 ++ rpcs3.sln | 72 ++++------------------- rpcs3/Emu/Cell/PPULLVMRecompiler.cpp | 11 ++++ rpcs3/Emu/Cell/PPULLVMRecompilerTests.cpp | 2 +- 4 files changed, 28 insertions(+), 62 deletions(-) diff --git a/.gitignore b/.gitignore index 8daea8f806..1e540205c5 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,9 @@ *.res *.dump *.wav +*.tmp +llvm_build/lib/Target/X86/*.inc +llvm_build/include/llvm/IR/Intrinsics.gen /build @@ -36,6 +39,8 @@ /ipch /rpcs3/Debug /rpcs3/Release +/llvm_build/Debug +/llvm_build/Release /wxWidgets/lib /bin/rpcs3.ini diff --git a/rpcs3.sln b/rpcs3.sln index 8fed08471d..757222ece5 100644 --- a/rpcs3.sln +++ b/rpcs3.sln @@ -23,7 +23,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "rpcs3", "rpcs3\rpcs3.vcxpro {6FCB55A5-563F-4039-1D79-1EB6ED8AAB82} = {6FCB55A5-563F-4039-1D79-1EB6ED8AAB82} {949C6DB8-E638-6EC6-AB31-BCCFD1379E01} = {949C6DB8-E638-6EC6-AB31-BCCFD1379E01} {74827EBD-93DC-5110-BA95-3F2AB029B6B0} = {74827EBD-93DC-5110-BA95-3F2AB029B6B0} - {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} = {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} {46333DC3-B4A5-3DCC-E8BF-A3F20ADC56D2} = {46333DC3-B4A5-3DCC-E8BF-A3F20ADC56D2} {B87216CD-6C64-1DB0-D900-BC6E745C1DF9} = {B87216CD-6C64-1DB0-D900-BC6E745C1DF9} {6FDC76D5-CB44-B9F8-5EF6-C59B020719DF} = {6FDC76D5-CB44-B9F8-5EF6-C59B020719DF} @@ -139,8 +138,11 @@ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "asmjit", "asmjit", "{E2A982F2-4B1A-48B1-8D77-A17A589C58D7}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "emucore", "rpcs3\emucore.vcxproj", "{C4A10229-4712-4BD2-B63E-50D93C67A038}" + ProjectSection(ProjectDependencies) = postProject + {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} = {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} + EndProjectSection EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "llvm", "llvm", "{A0C58795-63B1-4A3D-AF83-2A49CA539F40}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "llvm", "llvm", "{98236459-4B02-47B6-AD28-A358C0B9617D}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ALL_BUILD", "llvm_build\ALL_BUILD.vcxproj", "{681ACAC2-256D-48A1-BCAD-BD607D22BDB4}" ProjectSection(ProjectDependencies) = postProject @@ -648,307 +650,255 @@ Global {C4A10229-4712-4BD2-B63E-50D93C67A038}.Release|x64.ActiveCfg = Release|x64 {C4A10229-4712-4BD2-B63E-50D93C67A038}.Release|x64.Build.0 = Release|x64 {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Debug - MemLeak|x64.Build.0 = Debug|x64 {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Debug|x64.ActiveCfg = Debug|x64 {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Debug|x64.Build.0 = Debug|x64 {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Release|x64.ActiveCfg = Release|x64 {681ACAC2-256D-48A1-BCAD-BD607D22BDB4}.Release|x64.Build.0 = Release|x64 {D2E52B9D-6550-43F1-9825-9C62C06B11DA}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {D2E52B9D-6550-43F1-9825-9C62C06B11DA}.Debug - MemLeak|x64.Build.0 = Debug|x64 {D2E52B9D-6550-43F1-9825-9C62C06B11DA}.Debug|x64.ActiveCfg = Debug|x64 {D2E52B9D-6550-43F1-9825-9C62C06B11DA}.Release|x64.ActiveCfg = Release|x64 {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Debug - MemLeak|x64.Build.0 = Debug|x64 {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Debug|x64.ActiveCfg = Debug|x64 {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Debug|x64.Build.0 = Debug|x64 {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Release|x64.ActiveCfg = Release|x64 {8343C725-5972-409D-B3FD-2A5FAA1D5C5C}.Release|x64.Build.0 = Release|x64 {F9D100BB-16EA-428D-B709-793BE0B511D1}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {F9D100BB-16EA-428D-B709-793BE0B511D1}.Debug - MemLeak|x64.Build.0 = Debug|x64 {F9D100BB-16EA-428D-B709-793BE0B511D1}.Debug|x64.ActiveCfg = Debug|x64 {F9D100BB-16EA-428D-B709-793BE0B511D1}.Debug|x64.Build.0 = Debug|x64 {F9D100BB-16EA-428D-B709-793BE0B511D1}.Release|x64.ActiveCfg = Release|x64 {F9D100BB-16EA-428D-B709-793BE0B511D1}.Release|x64.Build.0 = Release|x64 {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Debug - MemLeak|x64.Build.0 = Debug|x64 {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Debug|x64.ActiveCfg = Debug|x64 {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Debug|x64.Build.0 = Debug|x64 {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Release|x64.ActiveCfg = Release|x64 {BBFC51F7-1D4F-43CC-9798-87CCBC33DBB2}.Release|x64.Build.0 = Release|x64 {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Debug - MemLeak|x64.Build.0 = Debug|x64 {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Debug|x64.ActiveCfg = Debug|x64 {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Debug|x64.Build.0 = Debug|x64 {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Release|x64.ActiveCfg = Release|x64 {81C46697-F282-48FE-993E-0B9FDA21E9C7}.Release|x64.Build.0 = Release|x64 {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Debug - MemLeak|x64.Build.0 = Debug|x64 {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Debug|x64.ActiveCfg = Debug|x64 {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Debug|x64.Build.0 = Debug|x64 {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Release|x64.ActiveCfg = Release|x64 {751A14B1-0397-4959-A61C-C7ED1E153BFC}.Release|x64.Build.0 = Release|x64 {4E2CE753-5481-4521-87AC-3E02F99405EC}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {4E2CE753-5481-4521-87AC-3E02F99405EC}.Debug - MemLeak|x64.Build.0 = Debug|x64 {4E2CE753-5481-4521-87AC-3E02F99405EC}.Debug|x64.ActiveCfg = Debug|x64 {4E2CE753-5481-4521-87AC-3E02F99405EC}.Debug|x64.Build.0 = Debug|x64 {4E2CE753-5481-4521-87AC-3E02F99405EC}.Release|x64.ActiveCfg = Release|x64 {4E2CE753-5481-4521-87AC-3E02F99405EC}.Release|x64.Build.0 = Release|x64 {E383113C-EA5C-4321-A957-8B421782A070}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {E383113C-EA5C-4321-A957-8B421782A070}.Debug - MemLeak|x64.Build.0 = Debug|x64 {E383113C-EA5C-4321-A957-8B421782A070}.Debug|x64.ActiveCfg = Debug|x64 {E383113C-EA5C-4321-A957-8B421782A070}.Debug|x64.Build.0 = Debug|x64 {E383113C-EA5C-4321-A957-8B421782A070}.Release|x64.ActiveCfg = Release|x64 {E383113C-EA5C-4321-A957-8B421782A070}.Release|x64.Build.0 = Release|x64 {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Debug - MemLeak|x64.Build.0 = Debug|x64 {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Debug|x64.ActiveCfg = Debug|x64 {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Debug|x64.Build.0 = Debug|x64 {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Release|x64.ActiveCfg = Release|x64 {A8CD982D-DAB9-4345-B230-AFF310FF9D2E}.Release|x64.Build.0 = Release|x64 {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Debug - MemLeak|x64.Build.0 = Debug|x64 {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Debug|x64.ActiveCfg = Debug|x64 {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Debug|x64.Build.0 = Debug|x64 {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Release|x64.ActiveCfg = Release|x64 {4BF6E9E0-7ED3-43CC-81E7-337152E30021}.Release|x64.Build.0 = Release|x64 {4312199E-C9CB-471B-886F-A863ACD08B54}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {4312199E-C9CB-471B-886F-A863ACD08B54}.Debug - MemLeak|x64.Build.0 = Debug|x64 {4312199E-C9CB-471B-886F-A863ACD08B54}.Debug|x64.ActiveCfg = Debug|x64 {4312199E-C9CB-471B-886F-A863ACD08B54}.Release|x64.ActiveCfg = Release|x64 {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Debug - MemLeak|x64.Build.0 = Debug|x64 {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Debug|x64.ActiveCfg = Debug|x64 {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Debug|x64.Build.0 = Debug|x64 {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Release|x64.ActiveCfg = Release|x64 {4EC6F015-3FBC-4190-97AC-2D8B2794D04A}.Release|x64.Build.0 = Release|x64 {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Debug - MemLeak|x64.Build.0 = Debug|x64 {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Debug|x64.ActiveCfg = Debug|x64 {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Debug|x64.Build.0 = Debug|x64 {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Release|x64.ActiveCfg = Release|x64 {975BB935-3CF7-4860-A24E-62F39D9DC7EB}.Release|x64.Build.0 = Release|x64 {40663C95-6697-49FE-A402-0BD373883FFA}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {40663C95-6697-49FE-A402-0BD373883FFA}.Debug - MemLeak|x64.Build.0 = Debug|x64 {40663C95-6697-49FE-A402-0BD373883FFA}.Debug|x64.ActiveCfg = Debug|x64 {40663C95-6697-49FE-A402-0BD373883FFA}.Debug|x64.Build.0 = Debug|x64 {40663C95-6697-49FE-A402-0BD373883FFA}.Release|x64.ActiveCfg = Release|x64 {40663C95-6697-49FE-A402-0BD373883FFA}.Release|x64.Build.0 = Release|x64 {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Debug - MemLeak|x64.Build.0 = Debug|x64 {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Debug|x64.ActiveCfg = Debug|x64 {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Debug|x64.Build.0 = Debug|x64 {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Release|x64.ActiveCfg = Release|x64 {9C138DA7-1BE7-4DAB-90F3-2F00501C10EE}.Release|x64.Build.0 = Release|x64 {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Debug - MemLeak|x64.Build.0 = Debug|x64 {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Debug|x64.ActiveCfg = Debug|x64 {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Debug|x64.Build.0 = Debug|x64 {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Release|x64.ActiveCfg = Release|x64 {EC5A2528-F0A7-445E-85CD-F6D7B0D4340E}.Release|x64.Build.0 = Release|x64 {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Debug - MemLeak|x64.Build.0 = Debug|x64 {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Debug|x64.ActiveCfg = Debug|x64 {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Debug|x64.Build.0 = Debug|x64 {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Release|x64.ActiveCfg = Release|x64 {C52AF063-7610-4E4F-AB94-C2F3B7397324}.Release|x64.Build.0 = Release|x64 {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Debug - MemLeak|x64.Build.0 = Debug|x64 {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Debug|x64.ActiveCfg = Debug|x64 {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Debug|x64.Build.0 = Debug|x64 {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Release|x64.ActiveCfg = Release|x64 {7B7597E6-6BE2-4805-94A2-D0FE30A92151}.Release|x64.Build.0 = Release|x64 {052C9484-820D-4DCF-A660-C09432AE228A}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {052C9484-820D-4DCF-A660-C09432AE228A}.Debug - MemLeak|x64.Build.0 = Debug|x64 {052C9484-820D-4DCF-A660-C09432AE228A}.Debug|x64.ActiveCfg = Debug|x64 {052C9484-820D-4DCF-A660-C09432AE228A}.Debug|x64.Build.0 = Debug|x64 {052C9484-820D-4DCF-A660-C09432AE228A}.Release|x64.ActiveCfg = Release|x64 {052C9484-820D-4DCF-A660-C09432AE228A}.Release|x64.Build.0 = Release|x64 {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Debug - MemLeak|x64.Build.0 = Debug|x64 {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Debug|x64.ActiveCfg = Debug|x64 {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Debug|x64.Build.0 = Debug|x64 {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Release|x64.ActiveCfg = Release|x64 {AAC354E1-A2B7-4FCC-9CB7-500824721D84}.Release|x64.Build.0 = Release|x64 {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Debug - MemLeak|x64.Build.0 = Debug|x64 {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Debug|x64.ActiveCfg = Debug|x64 {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Debug|x64.Build.0 = Debug|x64 {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Release|x64.ActiveCfg = Release|x64 {13E99356-9DF8-4C6E-BCAC-BD75111DEF35}.Release|x64.Build.0 = Release|x64 {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Debug - MemLeak|x64.Build.0 = Debug|x64 {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Debug|x64.ActiveCfg = Debug|x64 {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Debug|x64.Build.0 = Debug|x64 {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Release|x64.ActiveCfg = Release|x64 {CE2F2A88-5AEA-471C-83C1-ABAA767E089B}.Release|x64.Build.0 = Release|x64 {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Debug - MemLeak|x64.Build.0 = Debug|x64 {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Debug|x64.ActiveCfg = Debug|x64 {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Debug|x64.Build.0 = Debug|x64 {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Release|x64.ActiveCfg = Release|x64 {ABCB1FEF-5E07-4FE3-8286-1AAD09D88055}.Release|x64.Build.0 = Release|x64 {8DC66021-A50C-412A-84DA-63EF49702C25}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {8DC66021-A50C-412A-84DA-63EF49702C25}.Debug - MemLeak|x64.Build.0 = Debug|x64 {8DC66021-A50C-412A-84DA-63EF49702C25}.Debug|x64.ActiveCfg = Debug|x64 {8DC66021-A50C-412A-84DA-63EF49702C25}.Debug|x64.Build.0 = Debug|x64 {8DC66021-A50C-412A-84DA-63EF49702C25}.Release|x64.ActiveCfg = Release|x64 {8DC66021-A50C-412A-84DA-63EF49702C25}.Release|x64.Build.0 = Release|x64 {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Debug - MemLeak|x64.Build.0 = Debug|x64 {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Debug|x64.ActiveCfg = Debug|x64 {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Debug|x64.Build.0 = Debug|x64 {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Release|x64.ActiveCfg = Release|x64 {EE7EC6E9-B173-4C83-95E3-3831E943F6D6}.Release|x64.Build.0 = Release|x64 {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Debug - MemLeak|x64.Build.0 = Debug|x64 {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Debug|x64.ActiveCfg = Debug|x64 {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Debug|x64.Build.0 = Debug|x64 {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Release|x64.ActiveCfg = Release|x64 {4A146CA5-D610-48B2-87DF-0BB03EDEBAAA}.Release|x64.Build.0 = Release|x64 {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Debug - MemLeak|x64.Build.0 = Debug|x64 {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Debug|x64.ActiveCfg = Debug|x64 {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Debug|x64.Build.0 = Debug|x64 {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Release|x64.ActiveCfg = Release|x64 {359B0E09-7A11-458D-82AB-3FE3AACF5A06}.Release|x64.Build.0 = Release|x64 {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Debug - MemLeak|x64.Build.0 = Debug|x64 {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Debug|x64.ActiveCfg = Debug|x64 {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Debug|x64.Build.0 = Debug|x64 {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Release|x64.ActiveCfg = Release|x64 {8EA5EBA5-DA91-4E84-BB89-3D9119712E0B}.Release|x64.Build.0 = Release|x64 {1829F961-4B79-414E-8DB9-5062D146B890}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {1829F961-4B79-414E-8DB9-5062D146B890}.Debug - MemLeak|x64.Build.0 = Debug|x64 {1829F961-4B79-414E-8DB9-5062D146B890}.Debug|x64.ActiveCfg = Debug|x64 {1829F961-4B79-414E-8DB9-5062D146B890}.Debug|x64.Build.0 = Debug|x64 {1829F961-4B79-414E-8DB9-5062D146B890}.Release|x64.ActiveCfg = Release|x64 {1829F961-4B79-414E-8DB9-5062D146B890}.Release|x64.Build.0 = Release|x64 {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Debug - MemLeak|x64.Build.0 = Debug|x64 {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Debug|x64.ActiveCfg = Debug|x64 {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Debug|x64.Build.0 = Debug|x64 {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Release|x64.ActiveCfg = Release|x64 {060F77BA-DD46-4C4B-899F-D35D768A1A37}.Release|x64.Build.0 = Release|x64 {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Debug - MemLeak|x64.Build.0 = Debug|x64 {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Debug|x64.ActiveCfg = Debug|x64 {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Debug|x64.Build.0 = Debug|x64 {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Release|x64.ActiveCfg = Release|x64 {FBCBA6A3-13A5-4212-B88D-87A3EB8789AD}.Release|x64.Build.0 = Release|x64 {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Debug - MemLeak|x64.Build.0 = Debug|x64 {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Debug|x64.ActiveCfg = Debug|x64 {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Debug|x64.Build.0 = Debug|x64 {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Release|x64.ActiveCfg = Release|x64 {86BAC22E-49CB-4EFB-8591-5CFE12FF2563}.Release|x64.Build.0 = Release|x64 {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Debug - MemLeak|x64.Build.0 = Debug|x64 {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Debug|x64.ActiveCfg = Debug|x64 {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Debug|x64.Build.0 = Debug|x64 {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Release|x64.ActiveCfg = Release|x64 {8725F0C9-D5E1-4BAD-B92C-39A77A8ACBDE}.Release|x64.Build.0 = Release|x64 {9C14B1E9-ADA9-4328-8804-663B52102386}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {9C14B1E9-ADA9-4328-8804-663B52102386}.Debug - MemLeak|x64.Build.0 = Debug|x64 {9C14B1E9-ADA9-4328-8804-663B52102386}.Debug|x64.ActiveCfg = Debug|x64 {9C14B1E9-ADA9-4328-8804-663B52102386}.Debug|x64.Build.0 = Debug|x64 {9C14B1E9-ADA9-4328-8804-663B52102386}.Release|x64.ActiveCfg = Release|x64 {9C14B1E9-ADA9-4328-8804-663B52102386}.Release|x64.Build.0 = Release|x64 {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Debug - MemLeak|x64.Build.0 = Debug|x64 {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Debug|x64.ActiveCfg = Debug|x64 {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Debug|x64.Build.0 = Debug|x64 {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Release|x64.ActiveCfg = Release|x64 {21A9AE70-68DD-43EA-ABC2-CBF14064AD78}.Release|x64.Build.0 = Release|x64 {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Debug - MemLeak|x64.Build.0 = Debug|x64 {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Debug|x64.ActiveCfg = Debug|x64 {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Debug|x64.Build.0 = Debug|x64 {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Release|x64.ActiveCfg = Release|x64 {D7B40A9A-44F6-4919-B75F-39E70EC099F9}.Release|x64.Build.0 = Release|x64 {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Debug - MemLeak|x64.Build.0 = Debug|x64 {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Debug|x64.ActiveCfg = Debug|x64 {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Debug|x64.Build.0 = Debug|x64 {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Release|x64.ActiveCfg = Release|x64 {E4D3147B-EEC2-4F36-B583-CD679FEF1932}.Release|x64.Build.0 = Release|x64 {EDB757AF-693F-472D-9BAD-7447449C0231}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {EDB757AF-693F-472D-9BAD-7447449C0231}.Debug - MemLeak|x64.Build.0 = Debug|x64 {EDB757AF-693F-472D-9BAD-7447449C0231}.Debug|x64.ActiveCfg = Debug|x64 {EDB757AF-693F-472D-9BAD-7447449C0231}.Debug|x64.Build.0 = Debug|x64 {EDB757AF-693F-472D-9BAD-7447449C0231}.Release|x64.ActiveCfg = Release|x64 {EDB757AF-693F-472D-9BAD-7447449C0231}.Release|x64.Build.0 = Release|x64 {022FF3F5-0845-4544-A7E5-C5C352123625}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {022FF3F5-0845-4544-A7E5-C5C352123625}.Debug - MemLeak|x64.Build.0 = Debug|x64 {022FF3F5-0845-4544-A7E5-C5C352123625}.Debug|x64.ActiveCfg = Debug|x64 {022FF3F5-0845-4544-A7E5-C5C352123625}.Debug|x64.Build.0 = Debug|x64 {022FF3F5-0845-4544-A7E5-C5C352123625}.Release|x64.ActiveCfg = Release|x64 {022FF3F5-0845-4544-A7E5-C5C352123625}.Release|x64.Build.0 = Release|x64 {28558096-C540-421E-8533-332B6B4EE66F}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {28558096-C540-421E-8533-332B6B4EE66F}.Debug - MemLeak|x64.Build.0 = Debug|x64 {28558096-C540-421E-8533-332B6B4EE66F}.Debug|x64.ActiveCfg = Debug|x64 {28558096-C540-421E-8533-332B6B4EE66F}.Debug|x64.Build.0 = Debug|x64 {28558096-C540-421E-8533-332B6B4EE66F}.Release|x64.ActiveCfg = Release|x64 {28558096-C540-421E-8533-332B6B4EE66F}.Release|x64.Build.0 = Release|x64 {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Debug - MemLeak|x64.Build.0 = Debug|x64 {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Debug|x64.ActiveCfg = Debug|x64 {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Debug|x64.Build.0 = Debug|x64 {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Release|x64.ActiveCfg = Release|x64 {9071A7EB-DBA6-4AD2-8FAF-F21A8FFB0E89}.Release|x64.Build.0 = Release|x64 {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Debug - MemLeak|x64.Build.0 = Debug|x64 {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Debug|x64.ActiveCfg = Debug|x64 {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Debug|x64.Build.0 = Debug|x64 {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Release|x64.ActiveCfg = Release|x64 {1EAF884F-FECF-4D9B-AD99-34D83E230235}.Release|x64.Build.0 = Release|x64 {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Debug - MemLeak|x64.Build.0 = Debug|x64 {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Debug|x64.ActiveCfg = Debug|x64 {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Debug|x64.Build.0 = Debug|x64 {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Release|x64.ActiveCfg = Release|x64 {EDE64E29-6CBE-4D86-956E-29F0F93B351D}.Release|x64.Build.0 = Release|x64 {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Debug - MemLeak|x64.Build.0 = Debug|x64 {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Debug|x64.ActiveCfg = Debug|x64 {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Debug|x64.Build.0 = Debug|x64 {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Release|x64.ActiveCfg = Release|x64 {E6224F2C-5E3E-40F9-915D-0F5DA7C93A40}.Release|x64.Build.0 = Release|x64 {9A90BEDD-592D-463F-B2DE-5E7914059166}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {9A90BEDD-592D-463F-B2DE-5E7914059166}.Debug - MemLeak|x64.Build.0 = Debug|x64 {9A90BEDD-592D-463F-B2DE-5E7914059166}.Debug|x64.ActiveCfg = Debug|x64 {9A90BEDD-592D-463F-B2DE-5E7914059166}.Debug|x64.Build.0 = Debug|x64 {9A90BEDD-592D-463F-B2DE-5E7914059166}.Release|x64.ActiveCfg = Release|x64 {9A90BEDD-592D-463F-B2DE-5E7914059166}.Release|x64.Build.0 = Release|x64 {924CDF46-DBFE-4464-B179-3E3DD376B4AA}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {924CDF46-DBFE-4464-B179-3E3DD376B4AA}.Debug - MemLeak|x64.Build.0 = Debug|x64 {924CDF46-DBFE-4464-B179-3E3DD376B4AA}.Debug|x64.ActiveCfg = Debug|x64 {924CDF46-DBFE-4464-B179-3E3DD376B4AA}.Release|x64.ActiveCfg = Release|x64 {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Debug - MemLeak|x64.Build.0 = Debug|x64 {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Debug|x64.ActiveCfg = Debug|x64 {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Debug|x64.Build.0 = Debug|x64 {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Release|x64.ActiveCfg = Release|x64 {514E5171-D5DF-4D5E-BF00-988A8BA84214}.Release|x64.Build.0 = Release|x64 {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Debug - MemLeak|x64.Build.0 = Debug|x64 {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Debug|x64.ActiveCfg = Debug|x64 {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Debug|x64.Build.0 = Debug|x64 {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Release|x64.ActiveCfg = Release|x64 {1E9A56BB-21C5-418B-B623-AD2B3F153307}.Release|x64.Build.0 = Release|x64 {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Debug - MemLeak|x64.Build.0 = Debug|x64 {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Debug|x64.ActiveCfg = Debug|x64 {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Debug|x64.Build.0 = Debug|x64 {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Release|x64.ActiveCfg = Release|x64 {287EED9A-FBDD-4CB8-85D8-39AEB6245704}.Release|x64.Build.0 = Release|x64 {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Debug - MemLeak|x64.Build.0 = Debug|x64 {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Debug|x64.ActiveCfg = Debug|x64 {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Debug|x64.Build.0 = Debug|x64 {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Release|x64.ActiveCfg = Release|x64 {8B29688C-5D8C-412E-85F5-012FBF12B1DE}.Release|x64.Build.0 = Release|x64 {0E01F742-9369-42B0-A2B4-01730D778630}.Debug - MemLeak|x64.ActiveCfg = Debug|x64 - {0E01F742-9369-42B0-A2B4-01730D778630}.Debug - MemLeak|x64.Build.0 = Debug|x64 {0E01F742-9369-42B0-A2B4-01730D778630}.Debug|x64.ActiveCfg = Debug|x64 {0E01F742-9369-42B0-A2B4-01730D778630}.Release|x64.ActiveCfg = Release|x64 EndGlobalSection @@ -979,7 +929,7 @@ Global {23E1C437-A951-5943-8639-A17F3CF2E606} = {5812E712-6213-4372-B095-9EB9BAA1F2DF} {74827EBD-93DC-5110-BA95-3F2AB029B6B0} = {5812E712-6213-4372-B095-9EB9BAA1F2DF} {AC40FF01-426E-4838-A317-66354CEFAE88} = {E2A982F2-4B1A-48B1-8D77-A17A589C58D7} - {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} + {681ACAC2-256D-48A1-BCAD-BD607D22BDB4} = {98236459-4B02-47B6-AD28-A358C0B9617D} {D2E52B9D-6550-43F1-9825-9C62C06B11DA} = {3B412923-72FF-4220-BCC0-449F5093F79D} {8343C725-5972-409D-B3FD-2A5FAA1D5C5C} = {99379135-BF25-4705-85F7-2BD058BB64E7} {F9D100BB-16EA-428D-B709-793BE0B511D1} = {99379135-BF25-4705-85F7-2BD058BB64E7} @@ -1031,11 +981,11 @@ Global {287EED9A-FBDD-4CB8-85D8-39AEB6245704} = {D6F6953F-87AD-45B4-9392-1BE9C02A9398} {8B29688C-5D8C-412E-85F5-012FBF12B1DE} = {814EAE3D-FF1E-4DB4-A09B-C06828B754EA} {0E01F742-9369-42B0-A2B4-01730D778630} = {4DCC86BE-72E1-420A-B161-C00F82158E56} - {3B412923-72FF-4220-BCC0-449F5093F79D} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} - {99379135-BF25-4705-85F7-2BD058BB64E7} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} - {FDD1CF9D-1C1D-4D42-92FE-CBCA2C36F5C0} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} - {4DCC86BE-72E1-420A-B161-C00F82158E56} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} - {D6F6953F-87AD-45B4-9392-1BE9C02A9398} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} - {814EAE3D-FF1E-4DB4-A09B-C06828B754EA} = {A0C58795-63B1-4A3D-AF83-2A49CA539F40} + {3B412923-72FF-4220-BCC0-449F5093F79D} = {98236459-4B02-47B6-AD28-A358C0B9617D} + {99379135-BF25-4705-85F7-2BD058BB64E7} = {98236459-4B02-47B6-AD28-A358C0B9617D} + {FDD1CF9D-1C1D-4D42-92FE-CBCA2C36F5C0} = {98236459-4B02-47B6-AD28-A358C0B9617D} + {4DCC86BE-72E1-420A-B161-C00F82158E56} = {98236459-4B02-47B6-AD28-A358C0B9617D} + {D6F6953F-87AD-45B4-9392-1BE9C02A9398} = {98236459-4B02-47B6-AD28-A358C0B9617D} + {814EAE3D-FF1E-4DB4-A09B-C06828B754EA} = {98236459-4B02-47B6-AD28-A358C0B9617D} EndGlobalSection EndGlobal diff --git a/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp b/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp index 2bddd97c61..33f6dcdafc 100644 --- a/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp +++ b/rpcs3/Emu/Cell/PPULLVMRecompiler.cpp @@ -50,12 +50,16 @@ PPULLVMRecompiler::~PPULLVMRecompiler() { static std::string module; static std::string registers; static u64 lastAddress; +static std::chrono::duration compilation_time; +static std::chrono::duration execution_time; u8 PPULLVMRecompiler::DecodeMemory(const u64 address) { auto function_name = fmt::Format("fn_0x%llx", address); auto function = m_module->getFunction(function_name); if (!function) { + std::chrono::high_resolution_clock::time_point compilation_start = std::chrono::high_resolution_clock::now(); + u64 offset = 0; function = cast(m_module->getOrInsertFunction(function_name, Type::getVoidTy(m_llvm_context), (Type *)nullptr)); auto block = BasicBlock::Create(m_llvm_context, "start", function); @@ -72,15 +76,22 @@ u8 PPULLVMRecompiler::DecodeMemory(const u64 address) { m_ir_builder.CreateRetVoid(); + m_execution_engine->runJITOnFunction(function); //module = ""; //raw_string_ostream stream(module); //stream << *m_module; + + std::chrono::high_resolution_clock::time_point compilation_end = std::chrono::high_resolution_clock::now(); + compilation_time += std::chrono::duration_cast>(compilation_end - compilation_start); } //lastAddress = address; //registers = m_ppu.RegsToString(); + std::chrono::high_resolution_clock::time_point execution_start = std::chrono::high_resolution_clock::now(); std::vector args; m_execution_engine->runFunction(function, args); + std::chrono::high_resolution_clock::time_point execution_end = std::chrono::high_resolution_clock::now(); + execution_time += std::chrono::duration_cast>(execution_end - execution_start); return 0; } diff --git a/rpcs3/Emu/Cell/PPULLVMRecompilerTests.cpp b/rpcs3/Emu/Cell/PPULLVMRecompilerTests.cpp index e8eb5bc286..1282458ce6 100644 --- a/rpcs3/Emu/Cell/PPULLVMRecompilerTests.cpp +++ b/rpcs3/Emu/Cell/PPULLVMRecompilerTests.cpp @@ -1,7 +1,7 @@ #include "stdafx.h" #include "Utilities/Log.h" #include "Emu/Cell/PPULLVMRecompiler.h" -#include "llvm/Analysis/Verifier.h" +#include "llvm/IR/Verifier.h" #include "llvm/CodeGen/MachineCodeInfo.h" #include "llvm/ExecutionEngine/GenericValue.h" #include "llvm/Support/raw_ostream.h"