summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorShawn Hoffman <godisgovernment@gmail.com>2011-02-25 04:00:16 +0000
committerShawn Hoffman <godisgovernment@gmail.com>2011-02-25 04:00:16 +0000
commitef63bccfc12cc17f2c104215717fbec204c8471a (patch)
tree89791322ac32dd70fdc5d80e8bc94820266a4332 /Source/Core
parent1f33fc1a48243bb9b4717196aaf71ff4ea645f11 (diff)
vs2010: make -d be passed to debugfast builds launched from vs
revert r7200. instead, wrap the Interpreter_FloatingPoint.cpp in fp:precise for msvc git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7238 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp12
-rw-r--r--Source/Core/DolphinWX/Dolphin.vcxproj.user2
2 files changed, 11 insertions, 3 deletions
diff --git a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp
index b29b7dad35..3b0ae602cd 100644
--- a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp
+++ b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp
@@ -42,6 +42,10 @@ using namespace MathUtil;
void UpdateSSEState();
+#ifdef _MSC_VER
+#pragma float_control(precise, on, push)
+#endif
+
// Extremely rare - actually, never seen.
// Star Wars : Rogue Leader spams that at some point :|
void Interpreter::Helper_UpdateCR1(double _fValue)
@@ -242,9 +246,7 @@ void Interpreter::fnegx(UGeckoInstruction _inst)
void Interpreter::fselx(UGeckoInstruction _inst)
{
- // D = (A >= 0) ? C : B
- rPS0(_inst.FD) = (rPS0(_inst.FA) < 0.0 || riPS0(_inst.FA) == PPC_NAN_U64) ?
- rPS0(_inst.FB) : rPS0(_inst.FC);
+ rPS0(_inst.FD) = (rPS0(_inst.FA) >= -0.0) ? rPS0(_inst.FC) : rPS0(_inst.FB);
// This is a binary instruction. Does not alter FPSCR
if (_inst.Rc) Helper_UpdateCR1(rPS0(_inst.FD));
}
@@ -517,3 +519,7 @@ void Interpreter::fsqrtx(UGeckoInstruction _inst)
UpdateFPRF(rPS0(_inst.FD));
if (_inst.Rc) Helper_UpdateCR1(rPS0(_inst.FD));
}
+
+#ifdef _MSC_VER
+#pragma float_control(pop)
+#endif
diff --git a/Source/Core/DolphinWX/Dolphin.vcxproj.user b/Source/Core/DolphinWX/Dolphin.vcxproj.user
index ac6cafaf98..ac67ec629b 100644
--- a/Source/Core/DolphinWX/Dolphin.vcxproj.user
+++ b/Source/Core/DolphinWX/Dolphin.vcxproj.user
@@ -3,6 +3,7 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|Win32'">
<LocalDebuggerWorkingDirectory>$(TargetDir)</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+ <LocalDebuggerCommandArguments>-d</LocalDebuggerCommandArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LocalDebuggerWorkingDirectory>$(TargetDir)</LocalDebuggerWorkingDirectory>
@@ -15,6 +16,7 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DebugFast|x64'">
<LocalDebuggerWorkingDirectory>$(TargetDir)</LocalDebuggerWorkingDirectory>
<DebuggerFlavor>WindowsLocalDebugger</DebuggerFlavor>
+ <LocalDebuggerCommandArguments>-d</LocalDebuggerCommandArguments>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LocalDebuggerWorkingDirectory>$(TargetDir)</LocalDebuggerWorkingDirectory>