[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-08-16 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan abandoned this revision. yvvan added a comment. In https://reviews.llvm.org/D34873#841624, @rnk wrote: > This shouldn't be necessary after https://reviews.llvm.org/rL310905. https://reviews.llvm.org/D34873 ___ cfe-commits mailing list

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-08-14 Thread Reid Kleckner via Phabricator via cfe-commits
rnk added a comment. This shouldn't be necessary after https://reviews.llvm.org/rL310905. https://reviews.llvm.org/D34873 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-08-14 Thread Reid Kleckner via Phabricator via cfe-commits
rnk added a subscriber: gbiv. rnk added a comment. I looked at the blame, and I added this alignment thing in https://reviews.llvm.org/rL289575 to deal with some PointerIntPair assertions. Those probably started in @gbiv's https://reviews.llvm.org/rL270781, which introduced a

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-08-04 Thread Martell Malone via Phabricator via cfe-commits
martell added a comment. @rnk isn't this related to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78936 Assuming this is in fact a gcc bug this will most likely cause a regression with the standalone clang mingw toolchains we are on the verge of having. This is of course assuming clang does not

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-08-04 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan added a comment. ping. Do you think this is ok now? https://reviews.llvm.org/D34873 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-31 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan updated this revision to Diff 108878. yvvan marked 2 inline comments as done. yvvan added a comment. Make safe solution without regression https://reviews.llvm.org/D34873 Files: lib/AST/ExprConstant.cpp Index: lib/AST/ExprConstant.cpp

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-31 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan added a comment. Ok, i will make safer solution... https://reviews.llvm.org/D34873 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-28 Thread Tim Northover via Phabricator via cfe-commits
t.p.northover added inline comments. Comment at: lib/AST/ExprConstant.cpp:583 +uint64_t& GetArrayInitIndex() { +return reinterpret_cast(ArrayInitIndex[0]); +} rnk wrote: > Surely this will fault on SPARC or ARM or other ISAs that care

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-28 Thread Reid Kleckner via Phabricator via cfe-commits
rnk added inline comments. Comment at: lib/AST/ExprConstant.cpp:583 +uint64_t& GetArrayInitIndex() { +return reinterpret_cast(ArrayInitIndex[0]); +} Surely this will fault on SPARC or ARM or other ISAs that care about alignment?

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-28 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan updated this revision to Diff 108620. yvvan added a comment. Provide a workaround without regression https://reviews.llvm.org/D34873 Files: lib/AST/ExprConstant.cpp Index: lib/AST/ExprConstant.cpp === ---

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-19 Thread Reid Kleckner via Phabricator via cfe-commits
rnk requested changes to this revision. rnk added a comment. This revision now requires changes to proceed. This doesn't seem like an acceptable workaround, surely this regresses functionality for arrays with more than UINT_MAX elements. https://reviews.llvm.org/D34873

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-18 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan added a comment. The same alignment in other places works fine. i don't know the source of that issue. Should be somewhere in gcc(mingw) but it's not my focus. So this is a workaround that we can make (probably only for mingw builds) https://reviews.llvm.org/D34873

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-07-18 Thread Hans Wennborg via Phabricator via cfe-commits
hans added a reviewer: rnk. hans added a comment. From the bug, this is related to Richard's "r289413 - Add two new AST nodes to represent initialization of an array in terms of initialization of each array element", which broke MSVC builds due to under-alignment, which Reid addressed with

[PATCH] D34873: Fix miscompiled 32bit binaries by mingw

2017-06-30 Thread Ivan Donchevskii via Phabricator via cfe-commits
yvvan created this revision. With that patch applied my 32-bit libclang.dll built with mingw does not crash anymore unit tests are not affected by that change https://reviews.llvm.org/D34873 Files: lib/AST/ExprConstant.cpp Index: lib/AST/ExprConstant.cpp