Page MenuHomePhabricator

Nicola (Nicola Zaghen)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 9 2017, 8:06 AM (127 w, 4 d)

Recent Activity

Jun 4 2019

Nicola added a comment to D60763: Prototype OpenCL BIFs using Tablegen.

A bit late to the review, but I've noticed a couple of issues with some of the implemented builtins:

  • The fmin/fmax builtins are defined twice for scalar types, does this create problems in overload resolution when using them?
  • The convert_ builtins don't have support for half types (which is present in the opencl-c.h header. Is that intended?
Jun 4 2019, 7:47 AM · Restricted Project, Restricted Project

Apr 25 2019

Nicola added inline comments to D60763: Prototype OpenCL BIFs using Tablegen.
Apr 25 2019, 5:04 AM · Restricted Project, Restricted Project

Mar 1 2019

Nicola committed rGa896756955fe: [Tablegen] Add support for the !mul operator. (authored by Nicola).
[Tablegen] Add support for the !mul operator.
Mar 1 2019, 1:46 AM

Feb 28 2019

Nicola created D58775: [Tablegen] Add support for the !mul operator..
Feb 28 2019, 4:08 AM · Restricted Project

Jan 2 2019

Nicola added a comment to D53023: Prototype OpenCL BIFs using Tablegen.

Since this review is just for a prototype, I'll leave some feedback after having played with it for a bit.
It seems to be quite trivial to add new builtins and fix existing ones (conversion builtins sat/rounding modes). One builtin that might have a small issue is the as_type builtin in which source and destination type need to have the same bitwidth. To get that to work I ended up patching TableGen to add !mul support for it (and set VectorSize to 1 for scalars).

Jan 2 2019, 7:26 AM

Dec 11 2018

Nicola added a comment to D53023: Prototype OpenCL BIFs using Tablegen.

This looks quite useful, thanks for taking time to do it! I can help verifying some of the tablegen'd builtins with internal tests too, if you decide to pursue this further.

Dec 11 2018, 8:00 AM

Oct 30 2018

Nicola updated the diff for D52609: [SROA] Use offset sizes from the DataLayout instead of the pointer siezes..

Changed the test to return a value and keep alive the interesting GEP

Oct 30 2018, 4:06 AM

Sep 27 2018

Nicola created D52609: [SROA] Use offset sizes from the DataLayout instead of the pointer siezes..
Sep 27 2018, 5:30 AM
Nicola created D52596: [InstCombine] Add combines of icmp (mul nsw/nuw X, C2), C when C % C2 == 0.
Sep 27 2018, 3:26 AM

Sep 5 2018

Nicola updated the diff for D51625: [InstCombine] Add new tests in preparation for a combine of icmp (mul nsw/nuw X, C2), C.

Added some negative tests

Sep 5 2018, 3:12 AM

Sep 4 2018

Nicola created D51625: [InstCombine] Add new tests in preparation for a combine of icmp (mul nsw/nuw X, C2), C.
Sep 4 2018, 6:09 AM

Aug 21 2018

Nicola updated the diff for D50972: [InstCombine] Fold icmp ugt/ult (add nuw X, C2), C --> icmp ugt/ult X, (C - C2).

Updated after I committed the new tests.

Aug 21 2018, 8:36 AM
Nicola created D51040: [InstCombine] Add new tests for icmp ugt/ult (add nuw X, C2), C.
Aug 21 2018, 8:07 AM
Nicola added inline comments to D50972: [InstCombine] Fold icmp ugt/ult (add nuw X, C2), C --> icmp ugt/ult X, (C - C2).
Aug 21 2018, 1:04 AM

Aug 20 2018

Nicola added inline comments to D50972: [InstCombine] Fold icmp ugt/ult (add nuw X, C2), C --> icmp ugt/ult X, (C - C2).
Aug 20 2018, 8:28 AM
Nicola created D50972: [InstCombine] Fold icmp ugt/ult (add nuw X, C2), C --> icmp ugt/ult X, (C - C2).
Aug 20 2018, 7:41 AM

May 30 2018

Nicola created D47528: [Release Notes] Add release note for the new LLVM_DEBUG.
May 30 2018, 3:34 AM

May 24 2018

Nicola added inline comments to D47323: FastMathFlags: Make it easier to unset individual ones..
May 24 2018, 8:13 AM
Nicola created D47323: FastMathFlags: Make it easier to unset individual ones..
May 24 2018, 6:45 AM

May 16 2018

Nicola created D46952: Remove the DEBUG macro..
May 16 2018, 8:31 AM

Apr 5 2018

Nicola added reviewers for D44976: Change DEBUG() macro to LLVM_DEBUG() in clang-tools-extra: rnk, jyknight.
Apr 5 2018, 8:28 AM
Nicola added reviewers for D44975: Change DEBUG() macro to LLVM_DEBUG(): rnk, jyknight.
Apr 5 2018, 8:28 AM

Apr 4 2018

Nicola added a comment to D44975: Change DEBUG() macro to LLVM_DEBUG().

Ping? I'm not sure who to add as reviewers as it's generic change.

Apr 4 2018, 6:37 AM
Nicola added a comment to D44976: Change DEBUG() macro to LLVM_DEBUG() in clang-tools-extra.

Ping? I'm not sure who to add as reviewers as it's generic change.

Apr 4 2018, 6:37 AM

Apr 3 2018

Nicola updated the diff for D44978: Change DEBUG() macro to LLVM_DEBUG() in Polly.

Updated diff with the latest clang-format. Thanks!

Apr 3 2018, 7:02 AM

Mar 29 2018

Nicola updated the diff for D44978: Change DEBUG() macro to LLVM_DEBUG() in Polly.

I uploaded the wrong patch, sorry about that. I mixed up the patch file selection. This is the correct one for Polly.

Mar 29 2018, 2:27 PM

Mar 28 2018

Nicola updated the diff for D43624: Change DEBUG() macro to LLVM_DEBUG().
Mar 28 2018, 3:50 AM
Nicola added a comment to D43624: Change DEBUG() macro to LLVM_DEBUG().

Submitted separate reviews for the other projects that use the macro:
clang: https://reviews.llvm.org/D44975
clang-tools-extra: https://reviews.llvm.org/D44976
lld: https://reviews.llvm.org/D44977
Polly: https://reviews.llvm.org/D44978

Mar 28 2018, 3:47 AM
Nicola created D44978: Change DEBUG() macro to LLVM_DEBUG() in Polly.
Mar 28 2018, 3:39 AM
Nicola created D44977: Change DEBUG() macro to LLVM_DEBUG() in lld.
Mar 28 2018, 3:39 AM
Nicola created D44976: Change DEBUG() macro to LLVM_DEBUG() in clang-tools-extra.
Mar 28 2018, 3:37 AM
Nicola created D44975: Change DEBUG() macro to LLVM_DEBUG().
Mar 28 2018, 3:36 AM

Mar 26 2018

Nicola updated the diff for D43624: Change DEBUG() macro to LLVM_DEBUG().

Rebased up to trunk@328503. Addressed comments about formatting on Debug.h (comment formatting is now fixed up manually)
This is still mostly with the commands I posted earlier (aside of Debug.h, DIASupport.h and APInt.cpp).

Mar 26 2018, 9:51 AM

Mar 16 2018

Nicola added a comment to D43624: Change DEBUG() macro to LLVM_DEBUG().

Updated the patch to trunk@327699. I don't have commit rights so I cannot submit it, can you do it?

Should I open a review to change the DEBUG() macro in clang too? They use the LLVM one, so not having it will introduce build breaks. The patch for them should be quite small.

Note that there are much more (sub)projects within LLVM that use the DEBUG macro the patch shouldn't break. There are also countless downstream projects that will be affected and some other people will have to refactor them.

I understand the concern, that's why I checked the "main" projects: libcxx, lld, compiler-rt and lldb and none of them use the macro. clang is the only one that does (as far as I can tell)
Which other projects should I be checking?

The DEBUG() macro is too generic so it might clash with other projects.

I understand the argument and agree in general, but are there some known problems with such clashes? I think this patch is going to cause quite a hassle to many users and I would like to understand the motivation better. Maybe it would be a better idea to explain the situation in more detail and post it as an RFC on llvm-dev.

There are (were, at least?) clashes with other open source projects, such as MESA: https://lists.freedesktop.org/archives/mesa-dev/2016-July/124111.html and they ended up renaming DEBUG into MESA_DEBUG to avoid clashing with LLVM.
Thanks for pointing out about the RFC, I didn't think about it. I'll write up a post for llvm-dev in the coming days.

Have you thought of leaving the old DEBUG macro around and making it an alias for the new LLVM_DEBUG? The old macro can be considered deprecated for some time before it gets completely removed, but this way the could give users some time to transition instead of breaking everything at once.

Mar 16 2018, 9:02 AM
Nicola updated the diff for D43624: Change DEBUG() macro to LLVM_DEBUG().

Updated the patch to trunk@327699. I don't have commit rights so I cannot submit it, can you do it?

Mar 16 2018, 8:15 AM

Mar 15 2018

Nicola added a comment to D43624: Change DEBUG() macro to LLVM_DEBUG().

Ping ping?
clang is also using the DEBUG() macro and other projects might be doing the same. Any suggestion on how to proceed?

Mar 15 2018, 8:30 AM

Mar 8 2018

Nicola added a comment to D43624: Change DEBUG() macro to LLVM_DEBUG().

Ping

Mar 8 2018, 2:34 AM

Mar 1 2018

Nicola updated the diff for D43624: Change DEBUG() macro to LLVM_DEBUG().

Reformatted the patch with clang-format-diff. Also rebased against latest LLVM master.

Mar 1 2018, 3:30 AM

Feb 22 2018

Nicola created D43624: Change DEBUG() macro to LLVM_DEBUG().
Feb 22 2018, 8:29 AM

Feb 10 2017

Nicola added a comment to D29764: [OpenCL] Blocks cannot capture/reference another block.

Looking at "Example 4" in the standard it looks like this should also be illegal.

Feb 10 2017, 8:15 AM