Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Half-fixes #4131

Merged
merged 14 commits into from
Feb 8, 2018
5 changes: 3 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
ignore = dirty
[submodule "llvm"]
path = llvm
url = https://github.com/llvm-mirror/llvm
branch = release_40
url = https://github.com/RPCS3/llvm
branch = release_60
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you leave that ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's required, look at the fork

Copy link
Contributor

@Zangetsu38 Zangetsu38 Feb 2, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No required for moment, submdule is not updated with this URL, using actually llvm 4.0 same master, don't changed, so don't need change that, juste causing problem here

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It shouldn't be building right now ¯_(ツ)_/¯but it will be required to use the fork

Copy link
Contributor

@Zangetsu38 Zangetsu38 Feb 2, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you don't understund, for moment neko don't have updated submodule with this url, using old llvm4, so why changed that ? This just broken git for clone submodule.

Update this only after update LLVM Submodule, not before, just broken git.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What happens at clone submodule? I thought it still would be able to fetch the 4.0 commit.

Copy link
Contributor

@Zangetsu38 Zangetsu38 Feb 2, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm after Verification Test with try update submodule is good.
Using "Git submodule sync" for update url with folder already exist, and "git submodule update --init" for update works.
So finaly no have problem, sorry for that.
I have just thinked set diferent url broken git cloe submodule but anyway, can get good commit, just strange set this now, and no after update llvm ^^

[submodule "GSL"]
path = 3rdparty/GSL
url = https://github.com/Microsoft/GSL.git
Expand All @@ -35,6 +35,7 @@
path = 3rdparty/hidapi
url = https://github.com/RPCS3/hidapi
branch = master
ignore = dirty
[submodule "3rdparty/Optional"]
path = 3rdparty/Optional
url = https://github.com/akrzemi1/Optional.git
Expand Down
16 changes: 13 additions & 3 deletions Utilities/bin_patch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,23 @@ void patch_engine::append(const std::string& patch)
{
if (fs::file f{patch})
{
auto root = YAML::Load(f.to_string());
YAML::Node root;

try
{
root = YAML::Load(f.to_string());
}
catch (const std::exception& e)
{
LOG_FATAL(GENERAL, "Failed to load patch file %s\n%s thrown: %s", patch, typeid(e).name(), e.what());
return;
}

for (auto pair : root)
{
auto& name = pair.first.Scalar();
auto& data = m_map[name];

for (auto patch : pair.second)
{
u64 type64 = 0;
Expand Down Expand Up @@ -91,7 +101,7 @@ void patch_engine::append(const std::string& patch)
break;
}
}

data.emplace_back(info);
}
}
Expand Down
11 changes: 11 additions & 0 deletions Utilities/sysinfo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,12 @@ bool utils::has_512()
return g_value;
}

bool utils::has_xop()
{
static const bool g_value = has_avx() && get_cpuid(0x80000001, 0)[2] & 0x800;
return g_value;
}

std::string utils::get_system_info()
{
std::string result;
Expand Down Expand Up @@ -92,6 +98,11 @@ std::string utils::get_system_info()
{
result += '+';
}

if (has_xop())
{
result += 'x';
}
}

if (has_rtm())
Expand Down
2 changes: 2 additions & 0 deletions Utilities/sysinfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@ namespace utils

bool has_512();

bool has_xop();

inline bool transaction_enter()
{
while (true)
Expand Down
12 changes: 12 additions & 0 deletions rpcs3/Emu/CPU/CPUTranslator.cpp
Original file line number Diff line number Diff line change
@@ -1 +1,13 @@
#ifdef LLVM_AVAILABLE

#include "CPUTranslator.h"

cpu_translator::cpu_translator(llvm::LLVMContext& context, llvm::Module* module, bool is_be)
: m_context(context)
, m_module(module)
, m_is_be(is_be)
{

}

#endif
Loading