Page MenuHomePhabricator

mati865 (Mateusz Mikuła)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 13 2016, 5:55 AM (239 w, 6 d)

Recent Activity

Mon, Jun 14

mati865 accepted D104214: [llvm-dlltool] [test] Remove superfluous --coff-exports option to llvm-readobj. NFC..

LGTM

Mon, Jun 14, 2:53 PM · Restricted Project
mati865 accepted D104215: [llvm-dlltool] [test] Add a testcase for all machine option types. NFC..

LGTM

Mon, Jun 14, 2:52 PM · Restricted Project
mati865 accepted D104213: [llvm-dlltool] [test] Test both short and long forms of options. NFC..

LGTM

Mon, Jun 14, 2:45 PM · Restricted Project
mati865 accepted D104212: [llvm-dlltool] Imply the target arch from a tool triple prefix.

Feels a bit like approving myself (which is only partially true) but I don't see any issues with the patch itself.

Mon, Jun 14, 2:43 PM · Restricted Project

Fri, May 28

mati865 added a comment to D102873: [clang] [MinGW] Fix gcc version detection/picking.

Ah, so that explains why everyone sends LGTM text.
I'll try to remember it next time.

Fri, May 28, 1:23 AM · Restricted Project

Thu, May 27

mati865 accepted D102873: [clang] [MinGW] Fix gcc version detection/picking.
Thu, May 27, 4:04 PM · Restricted Project

Sat, May 22

mati865 accepted D102970: [clang] [MinGW] Don't mark emutls variables as DSO local.

Wow, I haven't expected that.

Sat, May 22, 4:56 PM · Restricted Project

Fri, May 21

mati865 accepted D102946: [MinGW] Mark a number of library functions unavailable for mingw targets.
Fri, May 21, 5:09 PM · Restricted Project
mati865 accepted D102944: [Windows] Use TerminateProcess to exit without running destructors.

Feels like a heavy hammer to me but guess there is no better option.

Fri, May 21, 4:25 PM · Restricted Project
mati865 added a comment to D102684: [LLD] Allow disabling the early exit codepath as a build configuration.

FWIW at MSYS2 we build LLVM with both GNU and LLVM toolchains for different "subsystems".
GNU's LLD was deadlocking a lot so we have patched it to use TerminateProcess and it worked around all deadlocks except when running tests (the patch probably needs more work on it), we don't apply it for LLVM's LLD because I thought it's a bit overkill.

Fri, May 21, 10:25 AM · Restricted Project

May 18 2021

mati865 added a comment to D102684: [LLD] Allow disabling the early exit codepath as a build configuration.

Funny but I've hit this deadlock (LLVM_LINK_LLVM_DYLIB, LLD_DEFAULT_LD_LLD_IS_MINGW and shared libc++) last week in single LLD unit test. It never reproduced despite dozen of LLD testsuite runs.

May 18 2021, 9:10 AM · Restricted Project
mati865 added inline comments to D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.
May 18 2021, 8:54 AM · Restricted Project

May 14 2021

mati865 added a comment to D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.

When building with ninja, the output is buffered so the warnings appear directly after the specific build target that cause them.

May 14 2021, 4:30 PM · Restricted Project
mati865 added a comment to D102516: [LLD][MinGW] Ignore --no-undefined flag.

But I don't know if ld.bfd actually implements the -z options for PE targets?

May 14 2021, 4:27 PM · Restricted Project, lld
mati865 added inline comments to D102514: [LLD][MinGW] Add --fatal-warnings and --no-fatal-warnings flags.
May 14 2021, 4:22 PM · Restricted Project, lld
mati865 updated the diff for D102514: [LLD][MinGW] Add --fatal-warnings and --no-fatal-warnings flags.

Fix typo and the test

May 14 2021, 4:21 PM · Restricted Project, lld
mati865 requested review of D102516: [LLD][MinGW] Ignore --no-undefined flag.
May 14 2021, 10:53 AM · Restricted Project, lld
mati865 requested review of D102514: [LLD][MinGW] Add --fatal-warnings and --no-fatal-warnings flags.
May 14 2021, 10:49 AM · Restricted Project, lld
mati865 updated the summary of D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.
May 14 2021, 9:52 AM · Restricted Project
mati865 added a comment to D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.

I don't know when they exactly appear but look at my building log: https://reviews.llvm.org/P8263
The build was done with 16 threads so it's hard to tell which objects made it appear.

May 14 2021, 9:49 AM · Restricted Project

May 13 2021

mati865 added a comment to D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.

Sorry I thought it's simple enough on it's own.

May 13 2021, 4:29 PM · Restricted Project
mati865 requested review of D102425: [OpenMP] Use more compatible flags format.
May 13 2021, 10:52 AM · Restricted Project
mati865 requested review of D102419: [MinGW] Always enable -mbig-obj for LLVM build unless using Clang.
May 13 2021, 10:05 AM · Restricted Project

May 11 2021

mati865 added inline comments to D102138: [LLD] [COFF] Fix including the personality function for DWARF EH when linking with --gc-sections.
May 11 2021, 4:32 PM · Restricted Project

Apr 30 2021

mati865 accepted D101615: [LLD] [COFF] Actually include the exported comdat symbols.

The change itself looks correct but cannot speak for the test.

Apr 30 2021, 5:08 PM · Restricted Project

Apr 29 2021

mati865 accepted D101568: [cmake] Use -ffunction-sections and -Wl,--gc-sections on MinGW targets.

If compiling with GCC or linking with ld.bfd, these options have little

effect

Apr 29 2021, 4:37 PM · Restricted Project

Apr 6 2021

mati865 added a comment to D99406: RFC [lit] Detect if processes to execute are MSys based, apply custom quoting logic.

I saw https://github.com/msys2/msys2-runtime/issues/36 but I have never worked with MSYS2 runtime internals so you probably know more than I do at this point.
https://github.com/dscho who maintains Git for Windows might have some insights.

Apr 6 2021, 10:25 AM · Restricted Project

Mar 5 2021

mati865 accepted D98023: [clang] Don't default to a specifically shared libunwind on mingw with a g++ driver.
Mar 5 2021, 2:48 PM · Restricted Project
mati865 added a comment to D98023: [clang] Don't default to a specifically shared libunwind on mingw with a g++ driver.

It's clear overlook from D79995, that part is perfectly reasonable to me.

Mar 5 2021, 8:58 AM · Restricted Project

Oct 25 2020

mati865 accepted D90021: [libcxx] [libcxxabi] Set flags for visibility when statically linking libcxxabi into libcxx for windows.

Sorry for the delay.
LGTM from MinGW point of view.

Oct 25 2020, 3:55 AM · Restricted Project, Restricted Project

Oct 12 2020

mati865 abandoned D87547: [MinGW][clang-shlib] Build by default on MinGW.

Opened https://reviews.llvm.org/D89225

Oct 12 2020, 2:57 AM · Restricted Project
mati865 requested review of D89225: [MinGW][clang-shlib] Build only when LLVM_LINK_LLVM_DYLIB is enabled.
Oct 12 2020, 2:57 AM · Restricted Project

Oct 10 2020

mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

Or maybe even make it into a cmake option?

Oct 10 2020, 12:08 PM · Restricted Project
mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

Older versions of lld didn't error out if exceeding the limit, this is fixed in D86701, unfortunately after the 11 branch.

Oct 10 2020, 6:06 AM · Restricted Project

Oct 9 2020

mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

With -DLLVM_ENABLE_ASSERTIONS=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_RANLIB_COMPILER=llvm-ranlib -DCMAKE_AR_COMPILER=llvm-ar -DCMAKE_LINKER=ld.lld -DLLVM_ENABLE_LLD=ON libclang-cpp.dll has 65535 exports, seems it got truncated?

Oct 9 2020, 3:47 PM · Restricted Project
mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

Reproduced by adding -DLLVM_ENABLE_ASSERTIONS=ON.

Oct 9 2020, 3:09 PM · Restricted Project
mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

How many exports does your DLL end up with - is it close to the 64k limit, or far from it? Is there maybe some other library that is linked in, that increases the number of exported symbols (=all), or does this DLL only export explicitly intended symbols with dllexport?

Oct 9 2020, 1:14 PM · Restricted Project
mati865 added a comment to D87547: [MinGW][clang-shlib] Build by default on MinGW.

@ASDenysPetrov what CMake options do you use?
I'm unable to reproduce this error with Clang+LLD and GCC+Binutils from MSYS2.

Oct 9 2020, 10:52 AM · Restricted Project

Oct 7 2020

mati865 retitled D89009: Add version to libLLVM also on non-UNIX from Add version to libLLVM also on non UNIX to Add version to libLLVM also on non-UNIX.
Oct 7 2020, 3:06 PM · Restricted Project
mati865 added a comment to D88991: [LLD] Ignore ELF tests when ld.lld defaults to MinGW.

I wonder if it'd be possible to add some custom substitution in the lit config, to have it replace ld.lld with ld.lld -m <some-elf> in this case...

Oct 7 2020, 3:05 PM · Restricted Project, lld
mati865 requested review of D89009: Add version to libLLVM also on non-UNIX.
Oct 7 2020, 2:25 PM · Restricted Project
mati865 requested review of D88991: [LLD] Ignore ELF tests when ld.lld defaults to MinGW.
Oct 7 2020, 11:03 AM · Restricted Project, lld

Oct 5 2020

mati865 accepted D88804: [LLD] [MinGW] Support setting the subsystem version via the subsystem argument.
Oct 5 2020, 5:39 AM · Restricted Project
mati865 added a comment to D88804: [LLD] [MinGW] Support setting the subsystem version via the subsystem argument.

With BFD (tested version 2.35) the latter specified option takes precedence:

Oct 5 2020, 4:11 AM · Restricted Project
mati865 accepted D88803: [LLD] [MinGW] Simplify handling of os/subsystem version.

Nit: according to https://docs.microsoft.com/en-us/cpp/build/reference/subsystem-specify-subsystem?view=vs-2019 the minimal and the default subsystem for ARM should be 6.02.

Oct 5 2020, 4:01 AM · Restricted Project

Sep 26 2020

mati865 updated subscribers of D86091: [cmake] Fix build of attribute plugin example on Windows.

@hans sorry for not spotting it earlier but is it possible to still backport it to LLVM 11?
It's totally OK if it's too late. I can easily keep it as a patch in MSYS2 repository.

Sep 26 2020, 11:28 AM · Restricted Project

Sep 22 2020

mati865 abandoned D87521: [MinGW][llvm-config] Use unversioned library name.
Sep 22 2020, 3:08 PM · Restricted Project

Sep 21 2020

mati865 added a comment to D88005: [clang] [MinGW] Add an implicit .exe suffix even when crosscompiling.

LGTM
Confirmed that GCC 9 still adds .exe.

Sep 21 2020, 3:12 AM · Restricted Project

Sep 14 2020

mati865 added a comment to D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows.

Sounds great, could you commit it? I don't have the permission.

Sep 14 2020, 9:57 AM · Restricted Project, Restricted Project
mati865 retitled D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows from [Windows][Polly] Disable loadable modules to [Windows][Polly] Disable LLVMPolly module for all compilers on Windows.
Sep 14 2020, 9:56 AM · Restricted Project, Restricted Project

Sep 13 2020

mati865 added a comment to D87521: [MinGW][llvm-config] Use unversioned library name.

Cygwin seems to be the only Windows target that adds version to the library names.

Sep 13 2020, 12:25 AM · Restricted Project

Sep 12 2020

mati865 added a comment to D87539: [MinGW][libclang] Allow simultaneous shared and static lib.

Thanks.

Sep 12 2020, 12:36 PM · Restricted Project
mati865 added a comment to D87539: [MinGW][libclang] Allow simultaneous shared and static lib.

Sorry, pasted wrong command. I was curious if import library has it (since static one did not) but in the end neither import nor static library shows any export.

Sep 12 2020, 6:39 AM · Restricted Project
mati865 added a comment to D87521: [MinGW][llvm-config] Use unversioned library name.

what code appends a version number in dynamic libs when built for other platforms, but decides not to, when targeting windows in general, or mingw specifically?

Sep 12 2020, 6:23 AM · Restricted Project
mati865 added a comment to D87539: [MinGW][libclang] Allow simultaneous shared and static lib.

bin/llvm-readobj --coff-directives lib/liblibclang.dll.a | grep -i export shows nothing.

Sep 12 2020, 6:14 AM · Restricted Project
mati865 added a comment to D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows.

Could you fix the title+description?

Sep 12 2020, 1:55 AM · Restricted Project, Restricted Project
mati865 retitled D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows from [MinGW][Polly] Disable loadable modules to [Windows][Polly] Disable loadable modules.
Sep 12 2020, 1:51 AM · Restricted Project, Restricted Project
mati865 updated the diff for D87521: [MinGW][llvm-config] Use unversioned library name.
Sep 12 2020, 1:48 AM · Restricted Project
mati865 added a comment to D87539: [MinGW][libclang] Allow simultaneous shared and static lib.

We had this patch at MSYS2 for years and I'm not aware of any issues with the static library.
I think the library looks fine:

$ nm lib/liblibclang.a | grep __imp_
                 U __imp___acrt_iob_func
                 U __imp___acrt_iob_func
                 U __imp_GetModuleFileNameA
                 U __imp_VirtualQuery
                 U __imp___acrt_iob_func
                 U __imp___acrt_iob_func
                 U __imp___acrt_iob_func
Sep 12 2020, 1:46 AM · Restricted Project
mati865 added a comment to D87521: [MinGW][llvm-config] Use unversioned library name.

I don't use MSVC but apparently there is no libLLVM there: https://github.com/llvm/llvm-project/blob/9c651c231f3144f53e13cd0a1747589e1b2edccd/llvm/tools/llvm-shlib/CMakeLists.txt#L15

Sep 12 2020, 1:37 AM · Restricted Project

Sep 11 2020

mati865 updated the diff for D87521: [MinGW][llvm-config] Use unversioned library name.
Sep 11 2020, 3:14 PM · Restricted Project
mati865 added a comment to D87517: [MinGW] Use lib prefix for libraries.

-DLLVM_ENABLE_PROJECTS="clang;lldb" -DLLVM_BUILD_LLVM_DYLIB=1 with only this patch applied (< is before, > is after):

$ diff <(cd ../build && find ./ | sort) <(cd ../build2/ && find ./ | sort)
38a39,41
> ./bin/libLLVM.dll
> ./bin/libLTO.dll
> ./bin/libRemarks.dll
51d53
< ./bin/LLVM.dll
119d120
< ./bin/LTO.dll
123d123
< ./bin/Remarks.dll
1460a1461
> ./lib/libclang.dll.a
1500,1501c1501
< ./lib/liblibclang.dll.a
< ./lib/libliblldb.dll.a
---
> ./lib/liblldb.dll.a
Sep 11 2020, 3:07 PM · Restricted Project, Restricted Project, Restricted Project
mati865 added inline comments to D87521: [MinGW][llvm-config] Use unversioned library name.
Sep 11 2020, 1:16 PM · Restricted Project
mati865 added a comment to D87517: [MinGW] Use lib prefix for libraries.

I haven't tried BUILD_SHARED_LIBS=TRUE TBH.

Sep 11 2020, 1:06 PM · Restricted Project, Restricted Project, Restricted Project
mati865 updated the summary of D87547: [MinGW][clang-shlib] Build by default on MinGW.
Sep 11 2020, 12:59 PM · Restricted Project
mati865 requested review of D87547: [MinGW][clang-shlib] Build by default on MinGW.
Sep 11 2020, 12:59 PM · Restricted Project
mati865 requested review of D87539: [MinGW][libclang] Allow simultaneous shared and static lib.
Sep 11 2020, 12:05 PM · Restricted Project
mati865 updated the summary of D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows.
Sep 11 2020, 9:53 AM · Restricted Project, Restricted Project
mati865 requested review of D87524: [Windows][Polly] Disable LLVMPolly module for all compilers on Windows.
Sep 11 2020, 9:52 AM · Restricted Project, Restricted Project
mati865 requested review of D87521: [MinGW][llvm-config] Use unversioned library name.
Sep 11 2020, 9:16 AM · Restricted Project
mati865 updated the diff for D87517: [MinGW] Use lib prefix for libraries.

Also adjusted llvm-config.

Sep 11 2020, 8:10 AM · Restricted Project, Restricted Project, Restricted Project
mati865 updated the summary of D87517: [MinGW] Use lib prefix for libraries.
Sep 11 2020, 7:57 AM · Restricted Project, Restricted Project, Restricted Project
mati865 requested review of D87517: [MinGW] Use lib prefix for libraries.
Sep 11 2020, 7:57 AM · Restricted Project, Restricted Project, Restricted Project
mati865 updated the diff for D87418: [LLD] Allow configuring default ld.lld backend.

Updated the diff.

Sep 11 2020, 3:54 AM · Restricted Project, lld

Sep 10 2020

mati865 added a comment to D87418: [LLD] Allow configuring default ld.lld backend.

How widespread are these build systems that parse help output? (Given that it took until now to discover them, I'd venture "not very".)

Sep 10 2020, 2:39 PM · Restricted Project, lld
mati865 updated the diff for D87418: [LLD] Allow configuring default ld.lld backend.
Sep 10 2020, 12:12 PM · Restricted Project, lld
mati865 added a comment to D87418: [LLD] Allow configuring default ld.lld backend.

Thanks for the explanation.

Sep 10 2020, 12:11 PM · Restricted Project, lld
mati865 updated the diff for D87418: [LLD] Allow configuring default ld.lld backend.
Sep 10 2020, 12:11 PM · Restricted Project, lld
mati865 added inline comments to D87418: [LLD] Allow configuring default ld.lld backend.
Sep 10 2020, 9:39 AM · Restricted Project, lld
mati865 updated the diff for D87418: [LLD] Allow configuring default ld.lld backend.
Sep 10 2020, 7:52 AM · Restricted Project, lld
mati865 added inline comments to D87418: [LLD] Allow configuring default ld.lld backend.
Sep 10 2020, 3:10 AM · Restricted Project, lld

Sep 9 2020

mati865 updated the summary of D87418: [LLD] Allow configuring default ld.lld backend.
Sep 9 2020, 2:58 PM · Restricted Project, lld
mati865 added a reviewer for D87418: [LLD] Allow configuring default ld.lld backend: lld.
Sep 9 2020, 2:57 PM · Restricted Project, lld
mati865 requested review of D87418: [LLD] Allow configuring default ld.lld backend.
Sep 9 2020, 2:56 PM · Restricted Project, lld

Aug 27 2020

mati865 added a comment to D86521: Revert "Use find_library for ncurses".

FYI this doesn't fully fix MinGW issue:

$ cat tools/llvm-config/BuildVariables.inc | grep LLVM_SYSTEM_LIBS
#define LLVM_SYSTEM_LIBS "-lpsapi -lshell32 -lole32 -luuid -ladvapi32 -lz.dll"

It's because libraries are found by their import library which is libz.dll.a in this case.
libz.dll.a matches if in line 213 and gets stripped to z.dll which doesn't match shared library regex lib.*\.dll.

Aug 27 2020, 8:52 AM · Restricted Project, Restricted Project, Restricted Project

Aug 26 2020

mati865 accepted D86654: [LLD] [MinGW] Enable dynamicbase by default.

This really should have been the default for years but it didn't work properly with ld.bfd: https://github.com/msys2/MINGW-packages/issues/6674
Since it already work good with COFF backend when targeting MSVC I'm strongly in favour of enabling it for MinGW as well.

Aug 26 2020, 2:57 PM · Restricted Project
mati865 added a comment to D86552: [OpenMP] Fix import library installation with MinGW.

I don't have write permission, could somebody commit it for me?
Thanks in advance.

Aug 26 2020, 11:21 AM · Restricted Project

Aug 25 2020

mati865 added a comment to D85210: [OpenMP] Don't use MSVC workaround with MinGW.

@mstorsjo @hans I apologize but we will have to backport https://reviews.llvm.org/D86552 (should affect only MinGW so it's rather low risk) or revert this cherry-pick on LLVM 11 branch.

Aug 25 2020, 10:35 AM · Restricted Project
mati865 requested review of D86552: [OpenMP] Fix import library installation with MinGW.
Aug 25 2020, 10:24 AM · Restricted Project
mati865 requested review of D86512: [LLD][MinGW] Handle allow-multiple-definition flag.
Aug 25 2020, 1:42 AM · Restricted Project, lld
mati865 requested review of D86509: [LLD][MinGW] Cleanup Options.td file.
Aug 25 2020, 12:40 AM · Restricted Project, lld
mati865 updated the diff for D85195: Add Z3 to system libraries list if enabled.

Indeed, hardcoding z3 was stupid oversight from my side.

Aug 25 2020, 12:19 AM · Restricted Project

Aug 24 2020

mati865 added a comment to D86448: [OpenMP] Check if `_MSC_VER` is defined before using it.

Could you commit it for me please? I don't have write permission to the repo.

Aug 24 2020, 7:08 AM · Restricted Project
mati865 added a comment to D85195: Add Z3 to system libraries list if enabled.

Could you commit it for me please? I don't have write permission to the repo.

Aug 24 2020, 5:25 AM · Restricted Project
mati865 updated the diff for D85195: Add Z3 to system libraries list if enabled.

Updated the diff.

Aug 24 2020, 5:21 AM · Restricted Project
mati865 requested review of D86448: [OpenMP] Check if `_MSC_VER` is defined before using it.
Aug 24 2020, 5:15 AM · Restricted Project
mati865 updated the summary of D86405: [Compiler-RT] Fix profiler building with MinGW GCC.
Aug 24 2020, 5:08 AM · Restricted Project
mati865 updated the diff for D86405: [Compiler-RT] Fix profiler building with MinGW GCC.

Updated diff to remove _MSC_VER change.

Aug 24 2020, 4:59 AM · Restricted Project
mati865 accepted D86434: Fix ncurses/zlib in LLVM_SYSTEM_LIBS for Windows GNU.

Thank you, now it works as expected:

$ cat tools/llvm-config/BuildVariables.inc | grep LLVM_SYSTEM_LIBS
#define LLVM_SYSTEM_LIBS "-lpsapi -lshell32 -lole32 -luuid -ladvapi32 -lz"
Aug 24 2020, 1:51 AM · Restricted Project
mati865 added a comment to D86405: [Compiler-RT] Fix profiler building with MinGW GCC.

Only if weak works properly with GCC as well.

Aug 24 2020, 12:18 AM · Restricted Project