Page MenuHomePhabricator

Anastasia (Anastasia Stulova)
Compiler Engineer at ARM / Code Owner of OpenCL in Clang

Projects

User does not belong to any projects.

User Details

User Since
Mar 5 2015, 8:05 AM (329 w, 12 h)

Recent Activity

Today

Anastasia accepted D104800: [OpenCL] Do not include default header for preprocessor output as input.
Thu, Jun 24, 10:43 AM
Anastasia added a comment to D104800: [OpenCL] Do not include default header for preprocessor output as input.

I agree we should have the same behavior for both options. Technically -finclude-default-header could be added in both steps but it is only effective in parsing the sources and does nothing otherwise. But it seems cleaner to align it with the header include option.

Thu, Jun 24, 10:43 AM
Anastasia requested review of D104858: Possible fix for PR50841.
Thu, Jun 24, 7:19 AM
Anastasia accepted D104118: [OpenCL] Use DW_LANG_OpenCL language tag for OpenCL C.

LGTM! Thanks!

Thu, Jun 24, 6:44 AM · debug-info, Restricted Project

Yesterday

Anastasia added a comment to D76636: [RFC] Added type trait to remove address space qualifier from type.

Anastasia, are you still looking at this? It looks like you have a fix for your bug, but the patch never got updated.

Wed, Jun 23, 3:09 AM

Tue, Jun 22

Anastasia accepted D103191: [OpenCL] Add support of __opencl_c_program_scope_global_variables feature macro.

LGTM! Thanks!

Tue, Jun 22, 7:59 AM · Restricted Project

Thu, Jun 17

Anastasia accepted D103962: [C++4OpenCL] Fix qualifiers check on binding references to temporaries.

LGTM! Yes it seems the only situation where the check would evaluate to a different value with and without your patch is when we have RefRelationship == Sema::Ref_Related as false while the address space is not a superset then we would get an incorrect diagnostic. But I feel this would be diagnosed elsewhere before we end up in this check.

Thu, Jun 17, 8:27 AM · Restricted Project
Anastasia accepted D104040: [OpenCL] Add TableGen emitter for OpenCL builtin header.

Do you think we could add any test for this yet? Or do we have to wait until we have other pieces in place for diffing to opencl-c.h? We could add a test for parsing the header but it is probably going to be very slow test?

Thu, Jun 17, 4:34 AM · Restricted Project
Anastasia accepted D102689: [C++] Ignore top-level qualifiers in casts.

I think the diagnostic wording can be improved separately if it's considered important as it seems this issue already existed.

Thu, Jun 17, 4:26 AM · Restricted Project

Thu, Jun 10

Anastasia accepted D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.

LGTM! Thanks! Please, amend the comment as suggested in the final commit

Thu, Jun 10, 10:00 AM · Restricted Project
Anastasia added a reviewer for D103962: [C++4OpenCL] Fix qualifiers check on binding references to temporaries: rjmccall.
Thu, Jun 10, 2:10 AM · Restricted Project

Wed, Jun 9

Anastasia added inline comments to D103911: [OpenCL] Add support of __opencl_c_images feature macro.
Wed, Jun 9, 8:24 AM · Restricted Project
Anastasia added inline comments to D103911: [OpenCL] Add support of __opencl_c_images feature macro.
Wed, Jun 9, 5:07 AM · Restricted Project
Anastasia added inline comments to D103401: [OpenCL] Add support of __opencl_c_generic_address_space feature macro.
Wed, Jun 9, 4:55 AM · Restricted Project
Anastasia added inline comments to D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.
Wed, Jun 9, 4:36 AM · Restricted Project
Anastasia added inline comments to D102689: [C++] Ignore top-level qualifiers in casts.
Wed, Jun 9, 4:33 AM · Restricted Project
Anastasia accepted D97869: [OpenCL] Add OpenCL builtin test generator.

LGTM! Thanks!

Wed, Jun 9, 3:56 AM · Restricted Project

Mon, Jun 7

Anastasia accepted D103241: [OpenCL] Add memory_scope_all_devices.

Considering that this patch doesn't add anything new to the design, I suggest we go ahead. But we should continue the discussion around -cl-ext etc elsewhere and then perhaps some follow up patches will be needed to fix this fully.

Mon, Jun 7, 1:03 PM · Restricted Project

Tue, Jun 1

Anastasia added inline comments to D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.
Tue, Jun 1, 9:38 AM · Restricted Project
Anastasia accepted D103097: Add DWARF address spaces mapping for SPIR.

LGTM! Thanks!

Tue, Jun 1, 9:26 AM · Restricted Project
Anastasia added inline comments to D103401: [OpenCL] Add support of __opencl_c_generic_address_space feature macro.
Tue, Jun 1, 8:25 AM · Restricted Project
Anastasia added inline comments to D103241: [OpenCL] Add memory_scope_all_devices.
Tue, Jun 1, 5:07 AM · Restricted Project
Anastasia added inline comments to D103401: [OpenCL] Add support of __opencl_c_generic_address_space feature macro.
Tue, Jun 1, 4:55 AM · Restricted Project

Thu, May 27

Anastasia added inline comments to D103241: [OpenCL] Add memory_scope_all_devices.
Thu, May 27, 7:02 AM · Restricted Project
Anastasia added inline comments to D103241: [OpenCL] Add memory_scope_all_devices.
Thu, May 27, 5:31 AM · Restricted Project
Anastasia accepted D103175: [C++4OpenCL] Fix ICE with invalid use of half.

Yeah I think this is the only case where DefaultLvalueConversion exits with an error at present.

Thu, May 27, 4:19 AM · Restricted Project

Wed, May 26

Anastasia added a comment to D97869: [OpenCL] Add OpenCL builtin test generator.

I think this is a very good starting point for the testing of built-in functions. Btw should we now remove '[Draft]' from the title?

Wed, May 26, 8:27 AM · Restricted Project
Anastasia removed a reviewer for D103097: Add DWARF address spaces mapping for SPIR: cfe-commits.
Wed, May 26, 4:06 AM · Restricted Project
Anastasia added inline comments to D103097: Add DWARF address spaces mapping for SPIR.
Wed, May 26, 4:06 AM · Restricted Project
Anastasia added inline comments to D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.
Wed, May 26, 3:36 AM · Restricted Project

May 24 2021

Anastasia committed rG5ccc79dc38b2: [OpenCL][Docs] Minor update to OpenCL 3.0 (authored by Anastasia).
[OpenCL][Docs] Minor update to OpenCL 3.0
May 24 2021, 6:20 AM
Anastasia added a comment to rG237c6924bd46: [OpenCL] Add clang extension for bit-fields..

Build failure should be fixed by https://github.com/llvm/llvm-project/commit/626e9641a2f5fde638b86d4e043f82fc58b908f8

May 24 2021, 5:06 AM
Anastasia committed rG626e9641a2f5: [OpenCL] Fix test by adding SPIR triple (authored by Anastasia).
[OpenCL] Fix test by adding SPIR triple
May 24 2021, 5:04 AM
Anastasia committed rG237c6924bd46: [OpenCL] Add clang extension for bit-fields. (authored by Anastasia).
[OpenCL] Add clang extension for bit-fields.
May 24 2021, 4:43 AM
Anastasia closed D101843: [OpenCL] Add clang extension for bitfields.
May 24 2021, 4:42 AM · Restricted Project
Anastasia added inline comments to D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.
May 24 2021, 4:11 AM · Restricted Project

May 21 2021

Anastasia accepted D102853: [OpenCL] Align definition of __IMAGE_SUPPORT__ feature macro with OpenCL version and __opencl_c_images feature macro definition.

LGTM! Although I think it would be better if we set __IMAGE_SUPPORT__ conditionally also for earlier OpenCL versions.

May 21 2021, 8:32 AM · Restricted Project
Anastasia added inline comments to D102850: [C++4OpenCL] Fix overloading resolution of addrspace constructors.
May 21 2021, 8:29 AM · Restricted Project

May 20 2021

Anastasia added a comment to D102689: [C++] Ignore top-level qualifiers in casts.

Just to move the discussion from https://reviews.llvm.org/D101519 here. First of all I think this change should not be OpenCL specific i.e. there is not reason to do something different from C++ in general.

May 20 2021, 8:02 AM · Restricted Project

May 18 2021

Anastasia accepted D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64.

LGTM! Thanks!

May 18 2021, 2:25 AM · Restricted Project
Anastasia accepted D100396: [SYCL] Enable `opencl_global_[host,device]` attributes for SYCL.

LGTM! Thanks!

May 18 2021, 2:13 AM · Restricted Project
Anastasia added a comment to D102248: [C++4OpenCL] Fix initialization of __constant constructors without arguments.

LGTM! Thanks!

May 18 2021, 2:10 AM · Restricted Project

May 17 2021

Anastasia committed rG3549466ac05e: [OpenCL] Drop pragma handling for extension types/decls. (authored by Anastasia).
[OpenCL] Drop pragma handling for extension types/decls.
May 17 2021, 4:12 AM
Anastasia closed D101043: [OpenCL] Drop extension pragma handling for extension types/declarations.
May 17 2021, 4:12 AM · Restricted Project

May 14 2021

Anastasia added inline comments to D100396: [SYCL] Enable `opencl_global_[host,device]` attributes for SYCL.
May 14 2021, 10:15 AM · Restricted Project
Anastasia added inline comments to D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64.
May 14 2021, 10:07 AM · Restricted Project
Anastasia committed rG769cc335e6e6: [OpenCL] Simplify use of C11 atomic types. (authored by Anastasia).
[OpenCL] Simplify use of C11 atomic types.
May 14 2021, 9:43 AM
Anastasia closed D100976: [OpenCL] Simplify use of C11 atomic types.
May 14 2021, 9:43 AM · Restricted Project
Anastasia accepted D101519: [C++4OpenCL] Fix reinterpret_cast of vectors.

Just remember to reflect your final change in the commit message description. :)

May 14 2021, 7:56 AM · Restricted Project
Anastasia accepted D102248: [C++4OpenCL] Fix initialization of __constant constructors without arguments.

LGTM! Thanks!

May 14 2021, 7:54 AM · Restricted Project

May 12 2021

Anastasia committed rG58d18dde5cca: [OpenCL] Remove pragma requirement from Arm dot extension. (authored by Anastasia).
[OpenCL] Remove pragma requirement from Arm dot extension.
May 12 2021, 8:26 AM
Anastasia closed D100985: [OpenCL] Remove pragma requirement for functions from Arm dot extension.
May 12 2021, 8:26 AM · Restricted Project
Anastasia added inline comments to D102248: [C++4OpenCL] Fix initialization of __constant constructors without arguments.
May 12 2021, 8:21 AM · Restricted Project
Anastasia added inline comments to D101843: [OpenCL] Add clang extension for bitfields.
May 12 2021, 5:43 AM · Restricted Project
Anastasia updated the diff for D101843: [OpenCL] Add clang extension for bitfields.

Added suggestions from Sven.

May 12 2021, 5:42 AM · Restricted Project
Anastasia added inline comments to D100976: [OpenCL] Simplify use of C11 atomic types.
May 12 2021, 5:33 AM · Restricted Project
Anastasia updated the diff for D100976: [OpenCL] Simplify use of C11 atomic types.

Added a comment in the test.

May 12 2021, 5:31 AM · Restricted Project
Anastasia added inline comments to D102248: [C++4OpenCL] Fix initialization of __constant constructors without arguments.
May 12 2021, 5:11 AM · Restricted Project
Anastasia added inline comments to D101519: [C++4OpenCL] Fix reinterpret_cast of vectors.
May 12 2021, 4:46 AM · Restricted Project

May 11 2021

Anastasia committed rG13ea238b1e1d: [OpenCL] Allow use of double type without extension pragma. (authored by Anastasia).
[OpenCL] Allow use of double type without extension pragma.
May 11 2021, 4:55 AM
Anastasia closed D100980: [OpenCL] Allow use of double type without extension pragma.
May 11 2021, 4:55 AM · Restricted Project
Anastasia added inline comments to D100980: [OpenCL] Allow use of double type without extension pragma.
May 11 2021, 2:31 AM · Restricted Project

May 10 2021

Anastasia added inline comments to D96524: [OpenCL] Add support of OpenCL C 3.0 __opencl_c_fp64.
May 10 2021, 7:56 AM · Restricted Project
Anastasia added inline comments to D101519: [C++4OpenCL] Fix reinterpret_cast of vectors.
May 10 2021, 5:15 AM · Restricted Project

May 7 2021

Anastasia added inline comments to D101843: [OpenCL] Add clang extension for bitfields.
May 7 2021, 7:17 AM · Restricted Project
Anastasia added inline comments to D100976: [OpenCL] Simplify use of C11 atomic types.
May 7 2021, 6:52 AM · Restricted Project
Anastasia added inline comments to D100976: [OpenCL] Simplify use of C11 atomic types.
May 7 2021, 6:51 AM · Restricted Project
Anastasia committed rG76f1de10f43e: [OpenCL] Fix optional image types. (authored by Anastasia).
[OpenCL] Fix optional image types.
May 7 2021, 5:31 AM
Anastasia closed D100983: [OpenCL] Fix optional image types.
May 7 2021, 5:31 AM · Restricted Project

May 6 2021

Anastasia committed rGc28a602329a7: [OpenCL] Remove subgroups pragma in enqueue kernel and pipe builtins. (authored by Anastasia).
[OpenCL] Remove subgroups pragma in enqueue kernel and pipe builtins.
May 6 2021, 6:00 AM
Anastasia closed D100984: [OpenCL] Remove the need for subgroups extension pragma in enqueue kernel and pipe builtins.
May 6 2021, 6:00 AM · Restricted Project
Anastasia closed D101168: [C++4OpenCL] Add clang extension for non-portable kernel parameters.

Closed by https://reviews.llvm.org/rGe994e74bca49831eb649e7c67955e9de7a1784b6

May 6 2021, 5:33 AM · Restricted Project

May 5 2021

Anastasia committed rGe994e74bca49: [OpenCL] Add clang extension for non-portable kernel parameters. (authored by Anastasia).
[OpenCL] Add clang extension for non-portable kernel parameters.
May 5 2021, 6:59 AM
Anastasia added inline comments to D100980: [OpenCL] Allow use of double type without extension pragma.
May 5 2021, 5:36 AM · Restricted Project
Anastasia added inline comments to D101519: [C++4OpenCL] Fix reinterpret_cast of vectors.
May 5 2021, 5:04 AM · Restricted Project

May 4 2021

Anastasia requested review of D101843: [OpenCL] Add clang extension for bitfields.
May 4 2021, 9:23 AM · Restricted Project
Anastasia committed rG64911eec75bb: [OpenCL] Allow pipe as a valid identifier prior to OpenCL 2.0. (authored by Anastasia).
[OpenCL] Allow pipe as a valid identifier prior to OpenCL 2.0.
May 4 2021, 6:31 AM
Anastasia closed D101052: [OpenCL] Allow pipe as a valid identifier prior to OpenCL 2.0.
May 4 2021, 6:31 AM · Restricted Project

Apr 30 2021

Anastasia committed rG3ec82e519513: [OpenCL] Prevent adding vendor extensions for all targets (authored by Anastasia).
[OpenCL] Prevent adding vendor extensions for all targets
Apr 30 2021, 6:44 AM
Anastasia closed D92244: [OpenCL] Prevent adding vendor extensions for all targets.
Apr 30 2021, 6:43 AM · Restricted Project
Anastasia added inline comments to D100396: [SYCL] Enable `opencl_global_[host,device]` attributes for SYCL.
Apr 30 2021, 6:37 AM · Restricted Project
Anastasia updated subscribers of D101519: [C++4OpenCL] Fix reinterpret_cast of vectors.
Apr 30 2021, 6:19 AM · Restricted Project
Anastasia accepted D101168: [C++4OpenCL] Add clang extension for non-portable kernel parameters.

LGTM! Thanks!

Apr 30 2021, 4:38 AM · Restricted Project
Anastasia accepted D101549: [Doc] Fix sphynx warnings about wrong code-block format.

LGTM!

Apr 30 2021, 4:26 AM · Restricted Project
Anastasia updated the diff for D100983: [OpenCL] Fix optional image types.

Improved negative testing for cl_khr_gl_msaa_sharing

Apr 30 2021, 4:26 AM · Restricted Project
Anastasia added inline comments to D100983: [OpenCL] Fix optional image types.
Apr 30 2021, 4:06 AM · Restricted Project
Anastasia updated the diff for D100983: [OpenCL] Fix optional image types.

Test all image types as identifiers

Apr 30 2021, 4:00 AM · Restricted Project
Anastasia updated the diff for D100980: [OpenCL] Allow use of double type without extension pragma.
  • Added a pedantic warning about use of double even if the extension is in disabled state wrt pragma.
Apr 30 2021, 3:56 AM · Restricted Project

Apr 29 2021

Anastasia added a comment to D99488: [SYCL][Doc] Add design document for SYCL mode.

If I build docs now I get the following output:

llvm-project/build-doc/tools/clang/docs/SYCLSupport.rst:102: WARNING: Error in "code-block" directive:
1 argument(s) required, 0 supplied.

.. code-block::

   TODO: add support for `__attribute__((opencl_global_host))` and
   `__attribute__((opencl_global_device))`.

Is this something already being looked at?

It looks like it can be fixed by adding language parameter:

.. code-block:: c++

Unfortunately, I can't verify this fix locally. I see other types of warnings, which are treated as errors.

tools/clang/docs/ClangCommandLineReference.rst:22:Duplicate explicit target name: "cmdoption-clang--prefix".

Does anyone know how to avoid this issue?

Apr 29 2021, 8:55 AM · Restricted Project
Anastasia added inline comments to D101168: [C++4OpenCL] Add clang extension for non-portable kernel parameters.
Apr 29 2021, 7:07 AM · Restricted Project
Anastasia committed rG1ed6e87ab02d: [OpenCL][Docs] Misc updates to C++ for OpenCL and offline compilation (authored by Anastasia).
[OpenCL][Docs] Misc updates to C++ for OpenCL and offline compilation
Apr 29 2021, 6:15 AM
Anastasia closed D101092: [OpenCL][Docs] Misc updates about C++ for OpenCL and offline compilation.
Apr 29 2021, 6:15 AM · Restricted Project
Anastasia committed rG8fb0d6df11e4: [OpenCL][Docs] Describe extension for legacy atomics with generic addr space. (authored by Anastasia).
[OpenCL][Docs] Describe extension for legacy atomics with generic addr space.
Apr 29 2021, 6:07 AM
Anastasia closed D101089: [OpenCL] Document legacy atomics with generic address space.
Apr 29 2021, 6:07 AM · Restricted Project
Anastasia added a comment to D99488: [SYCL][Doc] Add design document for SYCL mode.

If I build docs now I get the following output:

Apr 29 2021, 6:00 AM · Restricted Project

Apr 28 2021

Anastasia added a comment to D100980: [OpenCL] Allow use of double type without extension pragma.

Not sure what do we want to achieve with this? Do you want to point out that the code might be somehow less portable let's say between clang revisions, etc?

My main worry is that you are changing the behaviour here: kernels which fail to compile will compile successfully. I suggest not to do it silently but issue a warning/note instead.

Apr 28 2021, 4:04 AM · Restricted Project
Anastasia accepted D101087: [OpenCL] Introduce new method for validating OpenCL target.

Cool! Thanks!

Apr 28 2021, 3:55 AM · Restricted Project
Anastasia added a comment to D100980: [OpenCL] Allow use of double type without extension pragma.

When the pragma is parsed we can't know why it is in the code to be able to issue any warning.

I mean diagnose once when, for example in your particular case, double type is parsed. Does it require much effort? I think this warning might be useful for developers who already rely on pragma usage in their kernels.

I am not sure I understand your suggestion. Could you show an example perhaps?

All right. Currently, what we do have for OpenCL C < 1.2 (https://godbolt.org/z/rjYWMj7v1):

<source>:6:5: error: use of type 'double' requires cl_khr_fp64 support
    double d;
    ^
1 error generated.

What I suggest is to have:

<source>:6:5: warning: pragma enable is no longer required for use of type 'double'
    double d;
    ^
1 warning generated.

We can issue the warning if certain flag is provided for example. Does it make sense?

Apr 28 2021, 3:33 AM · Restricted Project

Apr 27 2021

Anastasia added inline comments to D100983: [OpenCL] Fix optional image types.
Apr 27 2021, 6:37 AM · Restricted Project
Anastasia committed rG6a92c19f3bbc: [C++4OpenCL] Add diagnostics for OpenCL types in templates. (authored by Anastasia).
[C++4OpenCL] Add diagnostics for OpenCL types in templates.
Apr 27 2021, 5:06 AM