Page MenuHomePhabricator

vzakhari (Vyacheslav Zakharin)
User

Projects

User does not belong to any projects.

User Details

User Since
May 29 2018, 3:20 PM (68 w, 5 d)

Recent Activity

Aug 19 2019

vzakhari committed rGf7229ac7d88e: Fixed placement of llvm.global_dtors on Windows. (authored by vzakhari).
Fixed placement of llvm.global_dtors on Windows.
Aug 19 2019, 2:13 PM
vzakhari committed rL369299: Fixed placement of llvm.global_dtors on Windows..
Fixed placement of llvm.global_dtors on Windows.
Aug 19 2019, 2:10 PM
vzakhari closed D66373: Fixed placement of llvm.global_dtors on Windows..
Aug 19 2019, 2:10 PM · Restricted Project

Aug 16 2019

vzakhari added a comment to D64943: [Clang][OpenMP offload] Eliminate use of OpenMP linker script.

FYI, llvm.global_dtor fix is in https://reviews.llvm.org/D66373

Aug 16 2019, 4:52 PM
vzakhari created D66373: Fixed placement of llvm.global_dtors on Windows..
Aug 16 2019, 4:47 PM · Restricted Project
vzakhari added a comment to D64943: [Clang][OpenMP offload] Eliminate use of OpenMP linker script.

As I understand ‘atexit’ solution would be target dependent (‘__cxa_atexit’ on Linux and ‘atexit’ on Windows) whereas @llvm.global_ctors/dtors variables offer similar and platform neutral functionality (http://llvm.org/docs/LangRef.html#the-llvm-global-ctors-global-variable). Why do you think that ‘atexit’ is a better choice?

Because it does not work on Windows, better to have portable solution, if possible.

Is there a bug # ?

@vzakhari?

I do not have bug #, but the issue was introduced with the following commit:
commit f803b23879d9e1d9415ec1875713534dcc203df5
Author: Reid Kleckner <rnk@google.com>
Date: Fri Sep 7 23:07:55 2018 +0000

[COFF] Implement llvm.global_ctors priorities for MSVC COFF targets
 
Summary:
MSVC and LLD sort sections ASCII-betically, so we need to use section
names that sort between .CRT$XCA (the start) and .CRT$XCU (the default
priority).
 
In the general case, use .CRT$XCT12345 as the section name, and let the
linker sort the zero-padded digits.
 
Users with low priorities typically want to initialize as early as
possible, so use .CRT$XCA00199 for prioties less than 200. This number
is arbitrary.
 
Implements PR38552.
 
Reviewers: majnemer, mstorsjo
 
Subscribers: hiraditya, llvm-commits
 
Differential Revision: https://reviews.llvm.org/D51820
 
llvm-svn: 341727

The destructors are still in .CRT$XT for default priority (65535) now, but for non-default priority they will go into .CRT$XC. I will upload a fixing patch with a LIT test shortly.

This clang-offload-wrapper commit will work properly, if we use default priority for the destructors.

'IMHO' if there is a problem with lowering of LLVM IR constructs for some
particular targets, that problem must be resolved instead of adding workarounds.

Aug 16 2019, 10:37 AM
vzakhari added a comment to D64943: [Clang][OpenMP offload] Eliminate use of OpenMP linker script.

As I understand ‘atexit’ solution would be target dependent (‘__cxa_atexit’ on Linux and ‘atexit’ on Windows) whereas @llvm.global_ctors/dtors variables offer similar and platform neutral functionality (http://llvm.org/docs/LangRef.html#the-llvm-global-ctors-global-variable). Why do you think that ‘atexit’ is a better choice?

Because it does not work on Windows, better to have portable solution, if possible.

Is there a bug # ?

@vzakhari?

Aug 16 2019, 10:17 AM

Aug 7 2019

vzakhari added inline comments to D64943: [Clang][OpenMP offload] Eliminate use of OpenMP linker script.
Aug 7 2019, 11:43 AM

Aug 6 2019

vzakhari added inline comments to D64943: [Clang][OpenMP offload] Eliminate use of OpenMP linker script.
Aug 6 2019, 10:51 PM

Jul 10 2019

vzakhari committed rGde811d1f51c9: [clang] Preserve names of addrspacecast'ed values. (authored by vzakhari).
[clang] Preserve names of addrspacecast'ed values.
Jul 10 2019, 10:12 AM
vzakhari committed rL365666: [clang] Preserve names of addrspacecast'ed values..
[clang] Preserve names of addrspacecast'ed values.
Jul 10 2019, 10:10 AM
vzakhari closed D63846: [clang] Preserve names of addrspacecast'ed values..
Jul 10 2019, 10:10 AM · Restricted Project, Restricted Project

Jul 8 2019

vzakhari added a comment to D63846: [clang] Preserve names of addrspacecast'ed values..

I changed the tests to use FileCheck variables whenever possible.

Jul 8 2019, 6:16 PM · Restricted Project, Restricted Project
vzakhari updated the diff for D63846: [clang] Preserve names of addrspacecast'ed values..
Jul 8 2019, 6:14 PM · Restricted Project, Restricted Project
vzakhari added a comment to D63846: [clang] Preserve names of addrspacecast'ed values..

I don't know what I think about widespread use of -fno-discard-value-names for now; please continue to use FileCheck variables, and we can make a holistic decision about that flag later.

Jul 8 2019, 1:33 PM · Restricted Project, Restricted Project
vzakhari added a comment to D63846: [clang] Preserve names of addrspacecast'ed values..

Please don't check IR names in test output. That actually includes anonymous names like %2; these should always be tested with FileCheck variables. I suggest using %.* as the pattern; if you're matching the LHS of an LLVM assignment, that shouldn't have problems with accidentally matching too much.

Jul 8 2019, 1:21 PM · Restricted Project, Restricted Project
vzakhari added a comment to D63846: [clang] Preserve names of addrspacecast'ed values..

ping

Jul 8 2019, 10:52 AM · Restricted Project, Restricted Project

Jul 1 2019

vzakhari added reviewers for D63846: [clang] Preserve names of addrspacecast'ed values.: erichkeane, rsmith.

Adding more reviewers.

Jul 1 2019, 11:29 AM · Restricted Project, Restricted Project

Jun 28 2019

vzakhari added a comment to D63846: [clang] Preserve names of addrspacecast'ed values..

ping

Jun 28 2019, 6:11 PM · Restricted Project, Restricted Project

Jun 26 2019

vzakhari created D63846: [clang] Preserve names of addrspacecast'ed values..
Jun 26 2019, 3:13 PM · Restricted Project, Restricted Project

May 17 2019

vzakhari added inline comments to D61425: Install import libraries.
May 17 2019, 1:41 PM · Restricted Project

Apr 29 2019

vzakhari accepted D61220: lib/Header: Fix Visual Studio builds try #2.
Apr 29 2019, 5:49 PM · Restricted Project, Restricted Project
vzakhari added a comment to D61220: lib/Header: Fix Visual Studio builds try #2.

OK, this should work while clang_generate_header() is used for plain files.

Apr 29 2019, 5:49 PM · Restricted Project, Restricted Project
vzakhari added inline comments to D61220: lib/Header: Fix Visual Studio builds try #2.
Apr 29 2019, 11:41 AM · Restricted Project, Restricted Project

Apr 27 2019

vzakhari added inline comments to D61220: lib/Header: Fix Visual Studio builds try #2.
Apr 27 2019, 6:24 PM · Restricted Project, Restricted Project

Apr 24 2019

vzakhari added a comment to D58537: lib/Header: Simplify CMakeLists.txt.

Can you test D61054?

Apr 24 2019, 10:11 AM · Restricted Project, Restricted Project

Apr 23 2019

vzakhari added inline comments to D58537: lib/Header: Simplify CMakeLists.txt.
Apr 23 2019, 10:29 AM · Restricted Project, Restricted Project

Apr 1 2019

vzakhari added inline comments to D58537: lib/Header: Simplify CMakeLists.txt.
Apr 1 2019, 2:02 PM · Restricted Project, Restricted Project

Jan 21 2019

vzakhari added a comment to D56112: [clang-offload-bundler] Added install component.

ping

Jan 21 2019, 8:29 PM

Jan 4 2019

vzakhari committed rL350436: Update the pr_datasz of .note.gnu.property section..
Update the pr_datasz of .note.gnu.property section.
Jan 4 2019, 1:28 PM
vzakhari closed D56080: update the pr_datasz of .note.gnu.property section.
Jan 4 2019, 1:28 PM

Jan 3 2019

vzakhari accepted D56080: update the pr_datasz of .note.gnu.property section.
Jan 3 2019, 11:20 AM
vzakhari added a comment to D56080: update the pr_datasz of .note.gnu.property section.

I think I got it, finally, after talking with HJ. As defined in https://github.com/hjl-tools/x86-psABI/blob/hjl/master/dl.tex, the pr_data field consists of 4-byte integers for GNU_PROPERTY_X86_FEATURE_1_AND program property type (pr_type). At the same time, the program property array must be a multiple of 8 bytes on x86-64 (as stated in https://github.com/hjl-tools/linux-abi/blob/hjl/master/object-files.tex), thus, the alignment is computed properly.

Jan 3 2019, 11:18 AM

Jan 2 2019

vzakhari added inline comments to D56080: update the pr_datasz of .note.gnu.property section.
Jan 2 2019, 9:46 PM
vzakhari added a comment to D56080: update the pr_datasz of .note.gnu.property section.

Please submit your patch with full context according to LLVM's documentation: https://www.llvm.org/docs/Phabricator.html#requesting-a-review-via-the-web-interface

Jan 2 2019, 1:15 PM
vzakhari committed rOMP350254: [libomptarget] Added install component for libomptarget.
[libomptarget] Added install component for libomptarget
Jan 2 2019, 11:51 AM
vzakhari committed rL350254: [libomptarget] Added install component for libomptarget.
[libomptarget] Added install component for libomptarget
Jan 2 2019, 11:43 AM
vzakhari closed D56108: [libomptarget] Added install component for libomptarget.
Jan 2 2019, 11:43 AM · Restricted Project

Dec 28 2018

vzakhari added a comment to D56108: [libomptarget] Added install component for libomptarget.

Can you explain the benefit of this change? I would have expected a target like install-omptarget, but applying this patch locally didn't change anything visible.

Dec 28 2018, 10:02 AM · Restricted Project
vzakhari updated the diff for D56108: [libomptarget] Added install component for libomptarget.
Dec 28 2018, 9:57 AM · Restricted Project

Dec 27 2018

vzakhari created D56112: [clang-offload-bundler] Added install component.
Dec 27 2018, 2:36 PM
vzakhari created D56108: [libomptarget] Added install component for libomptarget.
Dec 27 2018, 11:28 AM · Restricted Project

Nov 27 2018

vzakhari committed rL347686: [TableGen] Preprocessing support.
[TableGen] Preprocessing support
Nov 27 2018, 11:00 AM
vzakhari closed D54926: [TableGen] Preprocessing support.
Nov 27 2018, 11:00 AM

Nov 26 2018

vzakhari updated the diff for D54926: [TableGen] Preprocessing support.

The incremenetal fix.

Nov 26 2018, 7:07 PM
vzakhari created D54926: [TableGen] Preprocessing support.
Nov 26 2018, 7:07 PM

Nov 16 2018

vzakhari committed rL347129: Reverted r347092 due to the following build fails:.
Reverted r347092 due to the following build fails:
Nov 16 2018, 6:29 PM
vzakhari committed rL347092: Preprocessing support in tablegen..
Preprocessing support in tablegen.
Nov 16 2018, 1:06 PM
vzakhari closed D53840: Preprocessing support in tablegen.
Nov 16 2018, 1:06 PM

Nov 12 2018

vzakhari added a comment to D53840: Preprocessing support in tablegen.

ping

Nov 12 2018, 10:42 PM

Nov 6 2018

vzakhari updated the diff for D53840: Preprocessing support in tablegen.
Nov 6 2018, 9:59 AM
vzakhari added inline comments to D53840: Preprocessing support in tablegen.
Nov 6 2018, 9:37 AM

Nov 5 2018

vzakhari updated the diff for D53840: Preprocessing support in tablegen.

The new EOF handling looks much better to me. I added a couple of negative tests for C-style comments and code blocks crossing the file boundary. I also renamed include files from .td to .inc so that they are not considered as real tablegen tests.

Nov 5 2018, 3:22 PM

Oct 31 2018

vzakhari updated the diff for D53840: Preprocessing support in tablegen.
Oct 31 2018, 2:25 PM
vzakhari updated the diff for D53840: Preprocessing support in tablegen.
Oct 31 2018, 2:19 PM
vzakhari added a comment to D53840: Preprocessing support in tablegen.

I have to say I'm feeling a bit ambivalent about this. I'd say it would be nicer to have a mechanism that integrates with the rest of the TableGen language, but that's admittedly non-trivial. So I guess this approach is okay.

Thank you for the prompt reply, Nikolai! Yes, I decided to keep the preprocessing aside to minimize changes in the actual lexing.

Oct 31 2018, 2:14 PM

Oct 29 2018

vzakhari created D53840: Preprocessing support in tablegen.
Oct 29 2018, 3:28 PM

Sep 25 2018

vzakhari committed rL343054: Remove LoopID metadata from the branch instruction.
Remove LoopID metadata from the branch instruction
Sep 25 2018, 6:04 PM
vzakhari closed D52176: Remove LoopID metadata from the branch instruction that follows the peeled iterations..
Sep 25 2018, 6:04 PM

Sep 21 2018

vzakhari committed rL342792: Test commit..
Test commit.
Sep 21 2018, 6:03 PM

Sep 18 2018

vzakhari updated the diff for D52176: Remove LoopID metadata from the branch instruction that follows the peeled iterations..
Sep 18 2018, 10:49 AM
vzakhari added inline comments to D52176: Remove LoopID metadata from the branch instruction that follows the peeled iterations..
Sep 18 2018, 9:49 AM

Sep 17 2018

vzakhari updated the diff for D52176: Remove LoopID metadata from the branch instruction that follows the peeled iterations..

Updated diff with the context.

Sep 17 2018, 6:42 PM
vzakhari created D52176: Remove LoopID metadata from the branch instruction that follows the peeled iterations..
Sep 17 2018, 9:56 AM