<html>
<head>
<base href="https://llvm.org/bugs/" />
</head>
<body><span class="vcard"><a class="email" href="mailto:swigger@gmail.com" title="swigger <swigger@gmail.com>"> <span class="fn">swigger</span></a>
</span> changed
<a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED --- - [x86-64] clang generate wrong instruction for cygwin"
href="https://llvm.org/bugs/show_bug.cgi?id=26389">bug 26389</a>
<br>
<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>What</th>
<th>Removed</th>
<th>Added</th>
</tr>
<tr>
<td style="text-align:right;">Status</td>
<td>RESOLVED
</td>
<td>REOPENED
</td>
</tr>
<tr>
<td style="text-align:right;">Resolution</td>
<td>INVALID
</td>
<td>---
</td>
</tr></table>
<p>
<div>
<b><a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED --- - [x86-64] clang generate wrong instruction for cygwin"
href="https://llvm.org/bugs/show_bug.cgi?id=26389#c2">Comment # 2</a>
on <a class="bz_bug_link
bz_status_REOPENED "
title="REOPENED --- - [x86-64] clang generate wrong instruction for cygwin"
href="https://llvm.org/bugs/show_bug.cgi?id=26389">bug 26389</a>
from <span class="vcard"><a class="email" href="mailto:swigger@gmail.com" title="swigger <swigger@gmail.com>"> <span class="fn">swigger</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=26389#c1">comment #1</a>)
<span class="quote">> Windows doesn't support executables or DLLs larger than 2GB, so cout must be
> coming from another DLL.
>
> In that case, data imported from another DLL must be annotated as dllimport.
> This is not required for functions as import libraries generally provide
> thunks to make sure things work out.</span >
NO!
The source code shipped with cygwin does not write a dllimport with cout.
Proof:
$ cat a.cpp
#include <iostream>
$ gcc -E a.cpp | grep cout
extern ostream cout;
extern wostream wcout;
$ uname -a
CYGWIN_NT-6.1 home-PC 2.2.1(0.289/5/3) 2015-08-20 11:42 x86_64 Cygwin
Neither cygwin nor msys2 likes dllimport since this will cause many problems
for building gnu world sources. A more posix likes way would be the best, but
needs help from the compiler.
I am talking the target x86_64-pc-cygwin not x64_64-pc-windows.
Assume extern data is in 2G range is not a bug on windows natively,
but it *IS* a *BUG* on cygwin/msys2.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>