<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
Hello Richard,<br>
<br>
The diff is reverted:<br>
<br>
<a class="moz-txt-link-freetext" href="http://reviews.llvm.org/rL213450">http://reviews.llvm.org/rL213450</a><br>
<br>
I will propose another patch by Mon and there will address your
questions about background and possible workarounds. Will let you
know.<br>
<br>
Thanks.<br>
<br>
<br>
<div class="moz-cite-prefix">On 07/19/2014 12:29 AM, Richard Smith
wrote:<br>
</div>
<blockquote
cite="mid:CAOfiQqk91DhSPeihrq874c0Rm66a-yjP91gRCj=Jm1z9uhpS0w@mail.gmail.com"
type="cite">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Thu, Jul 10, 2014 at 1:43 AM,
Viktor Kutuzov <span dir="ltr"><<a
moz-do-not-send="true"
href="mailto:vkutuzov@accesssoftek.com" target="_blank">vkutuzov@accesssoftek.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Author:
vkutuzov<br>
Date: Thu Jul 10 03:43:39 2014<br>
New Revision: 212689<br>
<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project?rev=212689&view=rev"
target="_blank">http://llvm.org/viewvc/llvm-project?rev=212689&view=rev</a><br>
Log:<br>
Add clang headers that fix machine-dependent definitions
on FreeBSD 9.2<br>
</blockquote>
<div><br>
</div>
<div>This change has broken Darwin:</div>
<div><br>
</div>
<div><a moz-do-not-send="true"
href="http://lists.cs.uiuc.edu/pipermail/cfe-dev/2014-July/038129.html">http://lists.cs.uiuc.edu/pipermail/cfe-dev/2014-July/038129.html</a><br>
</div>
<div><br>
</div>
<div>Please revert for now, and we can discuss a way to get
this to work for both platforms.</div>
<div><br>
</div>
<div>I'm also not sure why this patch makes any sense: it
seems you're trying to work around FreeBSD's broken
/usr/include files? That doesn't seem like something we
should be doing to me, but maybe I'm missing some
background here?</div>
<div><br>
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Differential
Revision: <a moz-do-not-send="true"
href="http://reviews.llvm.org/D3908" target="_blank">http://reviews.llvm.org/D3908</a><br>
<br>
Added:<br>
cfe/trunk/lib/Headers/machine/<br>
cfe/trunk/lib/Headers/machine/_stdint.h<br>
cfe/trunk/lib/Headers/machine/_types.h<br>
Modified:<br>
cfe/trunk/lib/Headers/CMakeLists.txt<br>
<br>
Modified: cfe/trunk/lib/Headers/CMakeLists.txt<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/CMakeLists.txt?rev=212689&r1=212688&r2=212689&view=diff"
target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/CMakeLists.txt?rev=212689&r1=212688&r2=212689&view=diff</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Headers/CMakeLists.txt (original)<br>
+++ cfe/trunk/lib/Headers/CMakeLists.txt Thu Jul 10
03:43:39 2014<br>
@@ -1,4 +1,6 @@<br>
set(files<br>
+ machine/_stdint.h<br>
+ machine/_types.h<br>
altivec.h<br>
ammintrin.h<br>
arm_acle.h<br>
<br>
Added: cfe/trunk/lib/Headers/machine/_stdint.h<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/machine/_stdint.h?rev=212689&view=auto"
target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/machine/_stdint.h?rev=212689&view=auto</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Headers/machine/_stdint.h (added)<br>
+++ cfe/trunk/lib/Headers/machine/_stdint.h Thu Jul 10
03:43:39 2014<br>
@@ -0,0 +1,71 @@<br>
+/*===---- _stdint.h - C99 type-related definitions on
FreeBSD -------------===*\<br>
+ *<br>
+ * Permission is hereby granted, free of charge, to any
person obtaining a copy<br>
+ * of this software and associated documentation files
(the "Software"), to deal<br>
+ * in the Software without restriction, including without
limitation the rights<br>
+ * to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell<br>
+ * copies of the Software, and to permit persons to whom
the Software is<br>
+ * furnished to do so, subject to the following
conditions:<br>
+ *<br>
+ * The above copyright notice and this permission notice
shall be included in<br>
+ * all copies or substantial portions of the Software.<br>
+ *<br>
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR<br>
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY,<br>
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE<br>
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER<br>
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM,<br>
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
OR OTHER DEALINGS IN<br>
+ * THE SOFTWARE.<br>
+ *<br>
+\*===----------------------------------------------------------------------===*/<br>
+<br>
+#ifndef __MACHINE_XSTDINT_H<br>
+#define __MACHINE_XSTDINT_H<br>
+<br>
+#include_next <machine/_stdint.h><br>
+<br>
+/* Fix some definitions on x86-64 FreeBSD 9.2 in 32-bit
mode. */<br>
+#if defined(__FreeBSD__) && defined(__i386__)<br>
+# include <osreldate.h><br>
+# if __FreeBSD_version <= 902001 // v9.2<br>
+# if !defined(__cplusplus) ||
defined(__STDC_CONSTANT_MACROS)<br>
+# undef INT64_C<br>
+# define INT64_C(c) (c ## LL)<br>
+<br>
+# undef UINT64_C<br>
+# define UINT64_C(c) (c ## ULL)<br>
+# endif /* !defined(__cplusplus) ||
defined(__STDC_CONSTANT_MACROS) */<br>
+<br>
+# if !defined(__cplusplus) ||
defined(__STDC_LIMIT_MACROS)<br>
+# undef INT64_MIN<br>
+# define INT64_MIN (-0x7fffffffffffffffLL-1)<br>
+<br>
+# undef INT64_MAX<br>
+# define INT64_MAX 0x7fffffffffffffffLL<br>
+<br>
+# undef UINT64_MAX<br>
+# define UINT64_MAX 0xffffffffffffffffULL<br>
+<br>
+# undef INTPTR_MIN<br>
+# define INTPTR_MIN INT32_MIN<br>
+<br>
+# undef INTPTR_MAX<br>
+# define INTPTR_MAX INT32_MAX<br>
+<br>
+# undef UINTPTR_MAX<br>
+# define UINTPTR_MAX UINT32_MAX<br>
+<br>
+# undef PTRDIFF_MIN<br>
+# define PTRDIFF_MIN INT32_MIN<br>
+<br>
+# undef PTRDIFF_MAX<br>
+# define PTRDIFF_MAX INT32_MAX<br>
+<br>
+# undef SIZE_MAX<br>
+# define SIZE_MAX UINT32_MAX<br>
+# endif /* !defined(__cplusplus) ||
defined(__STDC_LIMIT_MACROS) */<br>
+# endif /* __FreeBSD_version <= 902001 */<br>
+#endif /* defined(__FreeBSD__) &&
defined(__i386__) */<br>
+<br>
+#endif /* !__MACHINE_XSTDINT_H */<br>
<br>
Added: cfe/trunk/lib/Headers/machine/_types.h<br>
URL: <a moz-do-not-send="true"
href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/machine/_types.h?rev=212689&view=auto"
target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Headers/machine/_types.h?rev=212689&view=auto</a><br>
==============================================================================<br>
--- cfe/trunk/lib/Headers/machine/_types.h (added)<br>
+++ cfe/trunk/lib/Headers/machine/_types.h Thu Jul 10
03:43:39 2014<br>
@@ -0,0 +1,145 @@<br>
+/*===---- _types.h - Machine-dependent type definitions
on FreeBSD --------===*\<br>
+ *<br>
+ * Permission is hereby granted, free of charge, to any
person obtaining a copy<br>
+ * of this software and associated documentation files
(the "Software"), to deal<br>
+ * in the Software without restriction, including without
limitation the rights<br>
+ * to use, copy, modify, merge, publish, distribute,
sublicense, and/or sell<br>
+ * copies of the Software, and to permit persons to whom
the Software is<br>
+ * furnished to do so, subject to the following
conditions:<br>
+ *<br>
+ * The above copyright notice and this permission notice
shall be included in<br>
+ * all copies or substantial portions of the Software.<br>
+ *<br>
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF
ANY KIND, EXPRESS OR<br>
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY,<br>
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE<br>
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER<br>
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM,<br>
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
OR OTHER DEALINGS IN<br>
+ * THE SOFTWARE.<br>
+ *<br>
+\*===----------------------------------------------------------------------===*/<br>
+<br>
+#ifndef __MACHINE_XTYPES_H<br>
+#define __MACHINE_XTYPES_H<br>
+<br>
+/* Fix some definitions on x86-64 FreeBSD 9.2 in 32-bit
mode. */<br>
+#if defined(__FreeBSD__) && defined(__i386__)<br>
+# include <osreldate.h><br>
+# if __FreeBSD_version <= 902001 // v9.2<br>
+# define __FIX_FREEBSD_9_2_DEFINITIONS<br>
+# endif /* __FreeBSD_version <= 902001 */<br>
+#endif /* defined(__FreeBSD__) &&
defined(__i386__) */<br>
+<br>
+#if defined(__FIX_FREEBSD_9_2_DEFINITIONS)<br>
+#define __int64_t __broken_int64_t<br>
+#define __uint64_t __broken_uint64_t<br>
+#define __critical_t __broken_critical_t<br>
+#define __intfptr_t __broken_intfptr_t<br>
+#define __intptr_t __broken_intptr_t<br>
+#define __intmax_t __broken_intmax_t<br>
+#define __int_fast64_t __broken_int_fast64_t<br>
+#define __int_least64_t __broken_int_least64_t<br>
+#define __ptrdiff_t __broken_ptrdiff_t<br>
+#define __register_t __broken_register_t<br>
+#define __segsz_t __broken_segsz_t<br>
+#define __size_t __broken_size_t<br>
+#define __ssize_t __broken_ssize_t<br>
+#define __time_t __broken_time_t<br>
+#define __uintfptr_t __broken_uintfptr_t<br>
+#define __uintptr_t __broken_uintptr_t<br>
+#define __uintmax_t __broken_uintmax_t<br>
+#define __uint_fast64_t __broken_uint_fast64_t<br>
+#define __uint_least64_t __broken_uint_least64_t<br>
+#define __u_register_t __broken_u_register_t<br>
+#define __vm_offset_t __broken_vm_offset_t<br>
+#define __vm_paddr_t __broken_vm_paddr_t<br>
+#define __vm_size_t __broken_vm_size_t<br>
+#define __vm_ooffset_t __broken_vm_ooffset_t<br>
+#define __vm_pindex_t __broken_vm_pindex_t<br>
+#endif // defined(__FIX_FREEBSD_9_2_DEFINITIONS)<br>
+<br>
+#include_next <machine/_types.h><br>
+<br>
+#if defined(__FIX_FREEBSD_9_2_DEFINITIONS)<br>
+#undef __int64_t<br>
+typedef long long __int64_t;<br>
+<br>
+#undef __uint64_t<br>
+typedef unsigned long long __uint64_t;<br>
+<br>
+#undef __critical_t<br>
+typedef __int32_t __critical_t;<br>
+<br>
+#undef __intfptr_t<br>
+typedef __int32_t __intfptr_t;<br>
+<br>
+#undef __intptr_t<br>
+typedef __int32_t __intptr_t;<br>
+<br>
+#undef __intmax_t<br>
+typedef __int64_t __intmax_t;<br>
+<br>
+#undef __int_fast64_t<br>
+typedef __int64_t __int_fast64_t;<br>
+<br>
+#undef __int_least64_t<br>
+typedef __int64_t __int_least64_t;<br>
+<br>
+#undef __ptrdiff_t<br>
+typedef __int32_t __ptrdiff_t;<br>
+<br>
+#undef __register_t<br>
+typedef __int64_t __register_t;<br>
+<br>
+#undef __segsz_t<br>
+typedef __int32_t __segsz_t;<br>
+<br>
+#undef __size_t<br>
+typedef __uint32_t __size_t;<br>
+<br>
+#undef __ssize_t<br>
+typedef __int32_t __ssize_t;<br>
+<br>
+#undef __time_t<br>
+typedef __int32_t __time_t;<br>
+<br>
+#undef __uintfptr_t<br>
+typedef __uint32_t __uintfptr_t;<br>
+<br>
+#undef __uintptr_t<br>
+typedef __uint32_t __uintptr_t;<br>
+<br>
+#undef __uintmax_t<br>
+typedef __uint64_t __uintmax_t;<br>
+<br>
+#undef __uint_fast64_t<br>
+typedef __uint64_t __uint_fast64_t;<br>
+<br>
+#undef __uint_least64_t<br>
+typedef __uint64_t __uint_least64_t;<br>
+<br>
+#undef __u_register_t<br>
+typedef __uint32_t __u_register_t;<br>
+<br>
+#undef __vm_offset_t<br>
+typedef __uint32_t __vm_offset_t;<br>
+<br>
+#undef __vm_paddr_t<br>
+#ifdef PAE<br>
+typedef __uint64_t __vm_paddr_t;<br>
+#else<br>
+typedef __uint32_t __vm_paddr_t;<br>
+#endif<br>
+<br>
+#undef __vm_size_t<br>
+typedef __uint32_t __vm_size_t;<br>
+<br>
+#undef __vm_ooffset_t<br>
+typedef __int64_t __vm_ooffset_t;<br>
+<br>
+#undef __vm_pindex_t<br>
+typedef __uint64_t __vm_pindex_t;<br>
+#endif // defined(__FIX_FREEBSD_9_2_DEFINITIONS)<br>
+<br>
+#endif /* !__MACHINE_XTYPES_H */<br>
<br>
<br>
_______________________________________________<br>
cfe-commits mailing list<br>
<a moz-do-not-send="true"
href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a><br>
<a moz-do-not-send="true"
href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits"
target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><br>
</blockquote>
</div>
<br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
cfe-commits mailing list
<a class="moz-txt-link-abbreviated" href="mailto:cfe-commits@cs.uiuc.edu">cfe-commits@cs.uiuc.edu</a>
<a class="moz-txt-link-freetext" href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a>
</pre>
</blockquote>
<br>
-- <br>
<br>
</body>
</html>