Page MenuHomePhabricator

mnadeem (Usman Nadeem)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 29 2020, 10:02 PM (89 w, 2 d)

Recent Activity

Fri, Aug 12

mnadeem committed rG405ad847931f: Update hwasan test to fix failure on older Android API versions. (authored by mnadeem).
Update hwasan test to fix failure on older Android API versions.
Fri, Aug 12, 4:31 PM · Restricted Project, Restricted Project
mnadeem closed D131806: Update hwasan test to fix failure on older Android API versions..
Fri, Aug 12, 4:31 PM · Restricted Project, Restricted Project
mnadeem updated the diff for D131806: Update hwasan test to fix failure on older Android API versions..

Update to use the same triple as MEMTAG

Fri, Aug 12, 4:19 PM · Restricted Project, Restricted Project
mnadeem requested review of D131806: Update hwasan test to fix failure on older Android API versions..
Fri, Aug 12, 1:35 PM · Restricted Project, Restricted Project

Thu, Aug 11

mnadeem added inline comments to D131533: [Flang][Driver] Enable PIC in the frontend.
Thu, Aug 11, 12:56 PM · Restricted Project, Restricted Project, Restricted Project

Tue, Aug 9

mnadeem requested review of D131533: [Flang][Driver] Enable PIC in the frontend.
Tue, Aug 9, 5:12 PM · Restricted Project, Restricted Project, Restricted Project

Jul 15 2022

mnadeem committed rGa560eea8bb4d: [Flang] Set constructExit for Where and Forall constructs (authored by jpenix-quic).
[Flang] Set constructExit for Where and Forall constructs
Jul 15 2022, 12:35 PM · Restricted Project, Restricted Project
mnadeem closed D129879: [Flang] Set constructExit for Where and Forall constructs.
Jul 15 2022, 12:34 PM · Restricted Project, Restricted Project

Jun 14 2022

mnadeem added inline comments to D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.
Jun 14 2022, 5:33 PM · Restricted Project, Restricted Project, Restricted Project
mnadeem updated the diff for D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.
  • Update tests
  • Check for TargetTriple.supportsCOMDAT() and use the any comdat by default
Jun 14 2022, 5:30 PM · Restricted Project, Restricted Project, Restricted Project

Jun 10 2022

mnadeem added a comment to D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.

Does the MLIR LLVM dialect not have comdats? That seems like a missing feature, a lack of fidelity that would prevent lossless conversion from LLVM IR to MLIR & back. Clang uses comdat groups for some esoteric features, the D5 destructor alias group, and MSVC RTTI.

Jun 10 2022, 12:36 PM · Restricted Project, Restricted Project, Restricted Project

Jun 9 2022

mnadeem requested review of D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.
Jun 9 2022, 4:19 PM · Restricted Project, Restricted Project, Restricted Project

Apr 22 2022

mnadeem added a comment to D120682: [CMake][compiler-rt] Make CRT separately buildable.

Seeing this cmake error for ARM32 after this patch.

Apr 22 2022, 1:02 PM · Restricted Project, Restricted Project

Feb 11 2022

mnadeem added a comment to D112617: [AArch64][SVE] Use TargetFrameIndex in more SVE load/store addressing modes.

Seeing a crash after this. Created a bug report here: https://github.com/llvm/llvm-project/issues/53781

Feb 11 2022, 2:32 PM · Restricted Project

Nov 2 2021

mnadeem added a reviewer for D112950: [OpenMP] Fix some non-determinism causing test failures in reverse iterator builds: protze.joachim.
Nov 2 2021, 1:31 PM · Restricted Project, Restricted Project

Nov 1 2021

mnadeem requested review of D112950: [OpenMP] Fix some non-determinism causing test failures in reverse iterator builds.
Nov 1 2021, 12:28 PM · Restricted Project, Restricted Project

Oct 28 2021

mnadeem added a reviewer for D112675: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/sub/selects (part 1): efriedma.

I'm still not clear if the FMF propagation is behaving as well as it could. For example, if the select has nsz, then can it always be added to the fneg?
https://alive2.llvm.org/ce/z/2Qq6Pz

Oct 28 2021, 10:29 AM · Restricted Project

Oct 27 2021

mnadeem added inline comments to D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Oct 27 2021, 7:20 PM · Restricted Project
mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Oct 27 2021, 7:20 PM · Restricted Project
mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Oct 27 2021, 6:54 PM · Restricted Project
mnadeem added inline comments to D112675: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/sub/selects (part 1).
Oct 27 2021, 5:03 PM · Restricted Project
mnadeem added a comment to D112509: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/selects.

This seems ok, but I'm having a hard time keeping all of the variations straight (predicates, fsub vs fneg, FMF propagation).

Can you make a patch for just the first code block (that's 4 variations by itself?) and include Alive2 links to show it agrees?

Oct 27 2021, 4:22 PM · Restricted Project
mnadeem added inline comments to D112675: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/sub/selects (part 1).
Oct 27 2021, 4:21 PM · Restricted Project
mnadeem requested review of D112675: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/sub/selects (part 1).
Oct 27 2021, 4:15 PM · Restricted Project
mnadeem updated the diff for D112666: [NFC] Rewrite some tests..
Oct 27 2021, 4:07 PM · Restricted Project
mnadeem updated the diff for D112666: [NFC] Rewrite some tests..
Oct 27 2021, 4:03 PM · Restricted Project
mnadeem removed a project from D112666: [NFC] Rewrite some tests.: Restricted Project.
Oct 27 2021, 3:15 PM · Restricted Project
mnadeem requested review of D112666: [NFC] Rewrite some tests..
Oct 27 2021, 3:04 PM · Restricted Project

Oct 26 2021

mnadeem updated the diff for D112509: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/selects.

precommitted the tests and some cleanup as suggested

Oct 26 2021, 10:29 AM · Restricted Project
mnadeem committed rG560dd1cdada2: [NFC][Instcombine] Pre-commit some tests for negative fabs (authored by mnadeem).
[NFC][Instcombine] Pre-commit some tests for negative fabs
Oct 26 2021, 10:24 AM
mnadeem committed rGda1318cccac3: [NFC][Instcombine] Cleanup some obsolete matches in visitSelectInstr (authored by mnadeem).
[NFC][Instcombine] Cleanup some obsolete matches in visitSelectInstr
Oct 26 2021, 10:09 AM

Oct 25 2021

mnadeem requested review of D112509: [Instcombine] Add patterns to generate fneg(fabs(x)) instead of fcmp/selects.
Oct 25 2021, 8:42 PM · Restricted Project

Oct 21 2021

mnadeem requested review of D112283: [Instcombine] Try to get select's FMFs from its operands.
Oct 21 2021, 5:06 PM · Restricted Project

Oct 18 2021

mnadeem abandoned D108065: [InstSimplify][AArch64] Eliminate vector reverse of ptrue/dupx intrinsics.
Oct 18 2021, 2:38 PM · Restricted Project

Oct 8 2021

mnadeem added inline comments to D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Oct 8 2021, 9:59 PM · Restricted Project
mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.

Added more tests as per comments.

Oct 8 2021, 9:49 PM · Restricted Project

Oct 4 2021

mnadeem added inline comments to D111032: Testing instcombine/licm pass order....
Oct 4 2021, 4:08 PM · Restricted Project

Oct 3 2021

mnadeem added a comment to D102002: [PassManager] unify vector passes between regular and LTO pipelines.

I was looking at the LICM Fdiv hoisting issue when I came across this patch but this seems to be stuck.

Oct 3 2021, 3:34 PM · Restricted Project
mnadeem requested review of D111032: Testing instcombine/licm pass order....
Oct 3 2021, 2:50 PM · Restricted Project

Sep 22 2021

mnadeem committed rG3b12282b0ed7: [AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set (authored by mnadeem).
[AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set
Sep 22 2021, 9:28 PM
mnadeem closed D109667: [AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set.
Sep 22 2021, 9:27 PM · Restricted Project

Sep 21 2021

mnadeem added inline comments to D109665: [AArch64][SVE] Add patterns to generate ADR instruction.
Sep 21 2021, 3:57 PM · Restricted Project
mnadeem committed rG645b8f5365de: [AArch64][SVE] Add patterns to generate ADR instruction (authored by mnadeem).
[AArch64][SVE] Add patterns to generate ADR instruction
Sep 21 2021, 3:51 PM
mnadeem closed D109665: [AArch64][SVE] Add patterns to generate ADR instruction.
Sep 21 2021, 3:51 PM · Restricted Project
mnadeem committed rG248342b7c729: [OpenMP][OMPD] Fix compile error when OMPD is not supported (authored by mnadeem).
[OpenMP][OMPD] Fix compile error when OMPD is not supported
Sep 21 2021, 12:46 PM
mnadeem closed D110120: [OpenMP][OMPD] Fix compile error when OMPD is not supported.
Sep 21 2021, 12:46 PM · Restricted Project
mnadeem planned changes to D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Sep 21 2021, 10:07 AM · Restricted Project

Sep 20 2021

mnadeem added a comment to D109807: [InstCombine] Narrow type of logical operation chains in certain cases.

I think I looked at this as a problem for -reassociate a long time ago. It makes changes on larger patterns like:
https://alive2.llvm.org/ce/z/UD56tJ
...but misses the shorter sequences.

(and this patch would not help match that example in -instcombine alone IIUC)

I think this patch also misses cases where we have a logic op with a wide constant:
https://alive2.llvm.org/ce/z/Ls8hXZ

Do you plan to extend it to deal with those patterns too?

Sep 20 2021, 7:25 PM · Restricted Project
mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.

remove base instruction's check for one use

Sep 20 2021, 7:24 PM · Restricted Project
mnadeem committed rGf417d9d82111: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction… (authored by mnadeem).
[InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction…
Sep 20 2021, 6:42 PM
mnadeem closed D109808: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses.
Sep 20 2021, 6:42 PM · Restricted Project
mnadeem added inline comments to D110120: [OpenMP][OMPD] Fix compile error when OMPD is not supported.
Sep 20 2021, 6:12 PM · Restricted Project
mnadeem requested review of D110120: [OpenMP][OMPD] Fix compile error when OMPD is not supported.
Sep 20 2021, 6:06 PM · Restricted Project

Sep 18 2021

mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.

rebase on precommited tests

Sep 18 2021, 11:41 AM · Restricted Project
mnadeem committed rGd841c72e09c8: Precommit tests for D109807 "[InstCombine] Narrow type of logical operation… (authored by mnadeem).
Precommit tests for D109807 "[InstCombine] Narrow type of logical operation…
Sep 18 2021, 11:30 AM

Sep 17 2021

mnadeem added a reviewer for D109808: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses: majnemer.
Sep 17 2021, 5:35 PM · Restricted Project
mnadeem updated the diff for D109665: [AArch64][SVE] Add patterns to generate ADR instruction.

Use SVEAllActive

Sep 17 2021, 5:00 PM · Restricted Project
mnadeem updated the diff for D109807: [InstCombine] Narrow type of logical operation chains in certain cases.

Address comments.

Sep 17 2021, 4:43 PM · Restricted Project
mnadeem updated the diff for D109808: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses.

Address comments, handle cases where either side of the binary op is a splat and the other is a reverse.

Sep 17 2021, 4:03 PM · Restricted Project
mnadeem added inline comments to D109666: [AArch64][SVE][InstCombine] Fold redundant zip(unzip) operations.
Sep 17 2021, 3:26 PM · Restricted Project
mnadeem committed rG757384abff38: [AArch64][SVE][InstCombine] Fold redundant zip1/2(uzp1/2) operations (authored by mnadeem).
[AArch64][SVE][InstCombine] Fold redundant zip1/2(uzp1/2) operations
Sep 17 2021, 3:25 PM
mnadeem closed D109666: [AArch64][SVE][InstCombine] Fold redundant zip(unzip) operations.
Sep 17 2021, 3:25 PM · Restricted Project

Sep 16 2021

mnadeem added inline comments to D109808: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses.
Sep 16 2021, 1:46 PM · Restricted Project

Sep 14 2021

mnadeem requested review of D109808: [InstCombine] Eliminate vector reverse if all inputs/outputs to an instruction are reverses.
Sep 14 2021, 10:15 PM · Restricted Project
mnadeem updated the summary of D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Sep 14 2021, 8:39 PM · Restricted Project
mnadeem requested review of D109807: [InstCombine] Narrow type of logical operation chains in certain cases.
Sep 14 2021, 8:33 PM · Restricted Project
mnadeem planned changes to D108065: [InstSimplify][AArch64] Eliminate vector reverse of ptrue/dupx intrinsics.

dup.x is now canonicalized to IR splat so reverse shouldn't be an issue now.
Reverses of ptrue can still be optimized, will get back to it when I get time.

Sep 14 2021, 6:47 PM · Restricted Project

Sep 12 2021

mnadeem requested review of D109667: [AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set.
Sep 12 2021, 4:32 PM · Restricted Project
mnadeem requested review of D109666: [AArch64][SVE][InstCombine] Fold redundant zip(unzip) operations.
Sep 12 2021, 3:51 PM · Restricted Project
mnadeem requested review of D109665: [AArch64][SVE] Add patterns to generate ADR instruction.
Sep 12 2021, 3:21 PM · Restricted Project
mnadeem committed rGfb7fbe4314f5: [NFC][SVE] Precommit tests for adr instruction (authored by mnadeem).
[NFC][SVE] Precommit tests for adr instruction
Sep 12 2021, 3:07 PM

Sep 10 2021

mnadeem added a reverting change for rGeee7d225ded9: Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to…: rGab111e982fd1: Revert "Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x….
Sep 10 2021, 6:24 PM
mnadeem committed rGab111e982fd1: Revert "Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x… (authored by mnadeem).
Revert "Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x…
Sep 10 2021, 6:24 PM
mnadeem added a reverting change for rG98c37247d81d: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR…: rGeee7d225ded9: Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to….
Sep 10 2021, 1:02 PM
mnadeem committed rGeee7d225ded9: Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to… (authored by mnadeem).
Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to…
Sep 10 2021, 1:02 PM
mnadeem added a reverting change for D109118: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR splat operation: rGeee7d225ded9: Revert "[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to….
Sep 10 2021, 1:02 PM · Restricted Project, Restricted Project
mnadeem committed rG98c37247d81d: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR… (authored by mnadeem).
[AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR…
Sep 10 2021, 12:53 PM
mnadeem closed D109118: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR splat operation.
Sep 10 2021, 12:53 PM · Restricted Project, Restricted Project

Sep 8 2021

mnadeem committed rG0a9d740c232e: [clang][Driver] Update/cleanup LTO logic to ensure that the last lto argument… (authored by mnadeem).
[clang][Driver] Update/cleanup LTO logic to ensure that the last lto argument…
Sep 8 2021, 3:54 PM
mnadeem closed D108881: [clang][driver] Honor the last -flto(=.*)? argument.
Sep 8 2021, 3:54 PM · Restricted Project
mnadeem added a reverting change for rGd2d2e5ea480f: [clang][Driver] Update/cleanup LTO logic to ensure that the last lto argument…: rG54612a037aff: Revert "[clang][Driver] Update/cleanup LTO logic to ensure that the last lto….
Sep 8 2021, 3:50 PM
mnadeem committed rG54612a037aff: Revert "[clang][Driver] Update/cleanup LTO logic to ensure that the last lto… (authored by mnadeem).
Revert "[clang][Driver] Update/cleanup LTO logic to ensure that the last lto…
Sep 8 2021, 3:50 PM
mnadeem committed rGd2d2e5ea480f: [clang][Driver] Update/cleanup LTO logic to ensure that the last lto argument… (authored by mnadeem).
[clang][Driver] Update/cleanup LTO logic to ensure that the last lto argument…
Sep 8 2021, 3:49 PM

Sep 7 2021

mnadeem updated the diff for D108881: [clang][driver] Honor the last -flto(=.*)? argument.
Sep 7 2021, 8:15 PM · Restricted Project
mnadeem added inline comments to D108881: [clang][driver] Honor the last -flto(=.*)? argument.
Sep 7 2021, 8:10 PM · Restricted Project
mnadeem updated the diff for D108881: [clang][driver] Honor the last -flto(=.*)? argument.
  • - Make flto an alias of flto=full.
  • - Make foffload-lto an alias of foffload-lto=full.
  • - Make flto_EQ_jobserver, flto_EQ_auto aliases of flto=full, since they are being treated as full lto right now.
  • - Clean up the code for parseLTOMode and setLTOMode.
  • - Replace uses of OPT_flto with OPT_flto_EQ.
Sep 7 2021, 8:08 PM · Restricted Project
mnadeem added a reverting change for rG61ddc3d3db9b: Revert "[NFC] Recommit "Regenerate SVE ACLE intrinsics tests"": rG9f5993d110d6: [NFC] Recommit "Regenerate SVE ACLE intrinsics tests"" 2nd try.
Sep 7 2021, 5:23 PM
mnadeem committed rG9f5993d110d6: [NFC] Recommit "Regenerate SVE ACLE intrinsics tests"" 2nd try (authored by mnadeem).
[NFC] Recommit "Regenerate SVE ACLE intrinsics tests"" 2nd try
Sep 7 2021, 5:23 PM
mnadeem added a comment to D108881: [clang][driver] Honor the last -flto(=.*)? argument.

I will do a cleanup of parseLTOMode function since we don't need a OptPos parameter anymore. There are few minor places references OPT_flto or OPT_foffload_lto can be cleaned up too.

Will you incorporate the functional changes in this patch? Or is there still a need for this change?

The current change set in this review is functional change while the cleanup I want is not functional after the rewrite the old option as Alias. Once flto is the alias, there is no need to handle that in the driver and those might actually become source of bug in the future.

I think it would be good to do the cleanup in the same commit unless you have compelling reason not to.

Sep 7 2021, 2:47 PM · Restricted Project

Sep 2 2021

mnadeem updated the diff for D109118: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR splat operation.

Updated acle tests and added an explicit test.

Sep 2 2021, 6:36 PM · Restricted Project, Restricted Project
mnadeem committed rG91eda9c30f33: [NFC] Recommit "Regenerate SVE ACLE intrinsics tests" (authored by mnadeem).
[NFC] Recommit "Regenerate SVE ACLE intrinsics tests"
Sep 2 2021, 6:30 PM
mnadeem added a reverting change for rG8749a556da96: [NFC] Regenerate SVE ACLE intrinsics tests: rG353b1cdf688a: Revert "[NFC] Regenerate SVE ACLE intrinsics tests".
Sep 2 2021, 6:30 PM
mnadeem committed rG353b1cdf688a: Revert "[NFC] Regenerate SVE ACLE intrinsics tests" (authored by mnadeem).
Revert "[NFC] Regenerate SVE ACLE intrinsics tests"
Sep 2 2021, 6:30 PM
mnadeem committed rG8749a556da96: [NFC] Regenerate SVE ACLE intrinsics tests (authored by mnadeem).
[NFC] Regenerate SVE ACLE intrinsics tests
Sep 2 2021, 2:31 PM

Sep 1 2021

mnadeem added reviewers for D109118: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR splat operation: david-arm, paulwalker-arm, sdesmalen.
Sep 1 2021, 6:18 PM · Restricted Project, Restricted Project
mnadeem requested review of D109118: [AArch64][SVE][InstCombine] Canonicalize aarch64_sve_dup_x intrinsic to IR splat operation.
Sep 1 2021, 6:17 PM · Restricted Project, Restricted Project

Aug 30 2021

mnadeem added a comment to D108881: [clang][driver] Honor the last -flto(=.*)? argument.

I will do a cleanup of parseLTOMode function since we don't need a OptPos parameter anymore. There are few minor places references OPT_flto or OPT_foffload_lto can be cleaned up too.

Aug 30 2021, 6:14 PM · Restricted Project
mnadeem updated the diff for D108881: [clang][driver] Honor the last -flto(=.*)? argument.

Update Options.td as suggested by steven_wu

Aug 30 2021, 2:51 PM · Restricted Project
mnadeem updated subscribers of D108881: [clang][driver] Honor the last -flto(=.*)? argument.
Aug 30 2021, 1:37 PM · Restricted Project
mnadeem added a comment to D108881: [clang][driver] Honor the last -flto(=.*)? argument.

Combined with the code in else if (Triple.isAMDGPU()) since the code is identical.
Removed the code to add -flto in favour of -flto=full since both are equivalent: https://clang.llvm.org/docs/CommandGuide/clang.html#cmdoption-flto

Aug 30 2021, 11:30 AM · Restricted Project