[PATCH] Fix for Bug 5053
Reid Kleckner
rnk at google.com
Thu Oct 2 10:57:13 PDT 2014
Your test case already passes for me. Can you elaborate on when this fails and in what environment, i.e. VS version, LLVM version, MCJIT vs interpreter, etc?
================
Comment at: lib/Support/Windows/DynamicLibrary.inc:138
@@ -121,1 +137,3 @@
#undef EXPLICIT_SYMBOL2
+#undef INLINE_DEF_SYMBOL
+#undef INLINE_DEF_SYMBOL2
----------------
This should either be SYMBOL1 or the define should drop the trailing 1.
================
Comment at: lib/Support/Windows/explicit_symbols.inc:74
@@ +73,3 @@
+ INLINE_DEF_FLOAT_VERSION(ceil, 1)
+ INLINE_DEF_FLOAT_VERSION(copysign, 2)
+ INLINE_DEF_FLOAT_VERSION(cos, 1)
----------------
What version of VS are you testing with? I don't believe this will compile on VS 2012, because it only has _copysign. See the 2012 MSDN docs vs the 2013 docs:
http://msdn.microsoft.com/en-us/library/0yafk1hc(v=vs.110).aspx
http://msdn.microsoft.com/en-us/library/0yafk1hc(v=vs.120).aspx
Furthermore, with VS2013, I think we can simply use the EXPLICIT_SYMBOL mechanism instead of a new approach.
================
Comment at: test/CodeGen/X86/win_frem.ll:1
@@ +1,2 @@
+; This unit test tests LLI.exe crashes on Windows\X86 when certain single precession
+; floating point intrinsics are used
----------------
With the fix committed, this should be "used to crash" instead of "crashes".
Also, this test is an execution test that belongs in test/ExecutionEngine instead of test/CodeGen/X86.
http://reviews.llvm.org/D5387
More information about the llvm-commits
mailing list