Page MenuHomePhabricator

w2yehia (wael yehia)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 8 2014, 1:20 PM (344 w, 12 h)

Recent Activity

Yesterday

w2yehia requested review of D100350: [AIX] Diagnose thinLTO usage in clang on AIX..
Mon, Apr 12, 4:55 PM

Tue, Mar 30

w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

Thanks @steven_wu

Tue, Mar 30, 2:13 PM · Restricted Project
w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

Is there a problem if both APIs are called (providing they don't conflict with each other or duplicate arguments?)

Tue, Mar 30, 1:54 PM · Restricted Project
w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

@steven_wu thanks for your review. Is this good to be merged then?

Can you just revert to use parsedOptions as boolean? The state you used right now doesn't add anything. You can just leave lto_set_debug_options not guarded right?

Tue, Mar 30, 12:45 PM · Restricted Project
w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

@steven_wu thanks for your review. Is this good to be merged then?

Tue, Mar 30, 9:45 AM · Restricted Project
w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

@steven_wu ping. thanks

Tue, Mar 30, 9:03 AM · Restricted Project

Thu, Mar 25

w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

@steven_wu please take a look when you have a chance. Thanks

Thu, Mar 25, 9:01 AM · Restricted Project

Wed, Mar 24

w2yehia updated the diff for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

renamed lto_codegen_debug_options_early to lto_set_debug_options, and add an entry to lto.exports

Wed, Mar 24, 8:09 AM · Restricted Project
w2yehia added inline comments to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.
Wed, Mar 24, 5:46 AM · Restricted Project

Mon, Mar 22

w2yehia added a comment to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

@steven_wu I've addressed your comment. Please review when you have a chance.

Mon, Mar 22, 1:04 PM · Restricted Project
w2yehia updated the summary of D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.
Mon, Mar 22, 1:04 PM · Restricted Project

Fri, Mar 19

w2yehia updated the diff for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

changes made:

  • use _array interface in lto_codegen_debug_options_early
  • replace parsedOptionsEarly and parsedOptions with a single enum variable.
Fri, Mar 19, 6:01 PM · Restricted Project
w2yehia added inline comments to D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.
Fri, Mar 19, 1:29 PM · Restricted Project

Thu, Mar 18

w2yehia updated the diff for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.
Thu, Mar 18, 5:50 PM · Restricted Project
w2yehia added a reviewer for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator: fhahn.
Thu, Mar 18, 5:49 PM · Restricted Project
w2yehia updated the diff for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.

in this patch we add a new libLTO API to specify debug options independent of an lto_code_gen_t.
This allows clients to pass codegen flags (through libLTO) which otherwise today are ignored.

Thu, Mar 18, 5:21 PM · Restricted Project

Sun, Mar 14

w2yehia added a comment to D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..

Shouldn't the test be in llvm/test/... instead of test/...? This seems like a mistake.

Sun, Mar 14, 9:41 AM · Restricted Project

Mar 10 2021

w2yehia added inline comments to D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..
Mar 10 2021, 8:13 AM · Restricted Project
w2yehia updated the diff for D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..
Mar 10 2021, 8:13 AM · Restricted Project

Mar 9 2021

w2yehia updated the diff for D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..

@daltenty provided a reduced testcase that would fail without this fix.

Mar 9 2021, 7:21 PM · Restricted Project

Mar 8 2021

w2yehia added a comment to D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..

@fhahn do you mean a negative test to make sure the assertion that got tripped in llvm/test/LTO/X86/remangle_intrinsics.ll does not happen anymore? Or test that llvm-lto delegates the relocation model property to the TargetMachine?

Mar 8 2021, 8:01 AM · Restricted Project

Feb 26 2021

w2yehia added a reviewer for D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine.: fhahn.
Feb 26 2021, 8:08 AM · Restricted Project

Feb 25 2021

w2yehia added reviewers for D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine.: daltenty, hubert.reinterpretcast, steven_wu.
Feb 25 2021, 4:28 PM · Restricted Project
w2yehia updated the summary of D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..
Feb 25 2021, 4:10 PM · Restricted Project
w2yehia requested review of D97507: llvm-lto: default Relocation Model should be selected by the TargetMachine..
Feb 25 2021, 3:57 PM · Restricted Project

Dec 3 2020

w2yehia added a reviewer for D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator: steven_wu.
Dec 3 2020, 2:54 PM · Restricted Project
w2yehia requested review of D92611: [LTO][Legacy] Decouple option parsing from LTOCodeGenerator.
Dec 3 2020, 2:43 PM · Restricted Project

Sep 26 2020

w2yehia added a comment to D88309: [LTO][Legacy] Add API to set result type to assembly.

Thanks Steven and Teresa.

Sep 26 2020, 12:19 AM · Restricted Project

Sep 25 2020

w2yehia added a comment to D88309: [LTO][Legacy] Add API to set result type to assembly.

@steven_wu what about the alternative solution where we make libLTO query the --filetype command line option. This will not require adding a new function to the API, but it does change the behavior of existing functions (lto_codegen_write_merged_modules, lto_codegen_compile, lto_codegen_optimize, lto_codegen_compile_optimized, lto_codegen_compile_to_file)

Sep 25 2020, 10:29 AM · Restricted Project
w2yehia added a comment to D88309: [LTO][Legacy] Add API to set result type to assembly.

Can you clarify your motivation for this? libLTO is used as an interface for linker and linkers, in general, do not understand assembly files.

Sep 25 2020, 8:41 AM · Restricted Project
w2yehia updated subscribers of D88309: [LTO][Legacy] Add API to set result type to assembly.
Sep 25 2020, 8:18 AM · Restricted Project
w2yehia requested review of D88309: [LTO][Legacy] Add API to set result type to assembly.
Sep 25 2020, 8:14 AM · Restricted Project

Sep 21 2020

w2yehia added inline comments to D84999: dynamic_cast optimization in LTO.
Sep 21 2020, 10:12 PM · Restricted Project
w2yehia updated the diff for D84999: dynamic_cast optimization in LTO.
Sep 21 2020, 9:52 PM · Restricted Project

Sep 16 2020

w2yehia added a reviewer for D84999: dynamic_cast optimization in LTO: hubert.reinterpretcast.
Sep 16 2020, 8:52 AM · Restricted Project
w2yehia added a comment to D84999: dynamic_cast optimization in LTO.

Teresa and Steven, thanks for the comments.

Sep 16 2020, 8:52 AM · Restricted Project

Aug 31 2020

w2yehia added a comment to D84999: dynamic_cast optimization in LTO.

Hi Teresa(@tejohnson ) and Peter (@pcc )
This is the patch for the C++ dynamic_cast optimization that I emailed llvm-dev in April and got a reply from Teresa.
ThinLTO enablement for this optimization is not implemented yet (sorry have been trying read on thinLTO and fix this but haven't had any time yet)
Will it be possible to do a round of review for the current implementation and add thinLTO support later?
Thanks.

Aug 31 2020, 7:02 AM · Restricted Project
w2yehia added reviewers for D84999: dynamic_cast optimization in LTO: tejohnson, pcc.
Aug 31 2020, 6:50 AM · Restricted Project

Aug 14 2020

w2yehia added reviewers for D85978: [clang-tools-extra] Added missing comma: xbolva00, nridge, jsji.
Aug 14 2020, 10:49 AM · Restricted Project

Jul 31 2020

w2yehia updated the summary of D84999: dynamic_cast optimization in LTO.
Jul 31 2020, 9:02 AM · Restricted Project

Jul 30 2020

w2yehia requested review of D84999: dynamic_cast optimization in LTO.
Jul 30 2020, 8:38 PM · Restricted Project

Jun 17 2020

w2yehia added a comment to D80618: Extend InvokeInst !prof branch_weights metadata to unwind branches.

Hi @yrouban
this commit breaks the following testcase. If you agree this is a regression, then can you please revert your commit until this is addressed.

Jun 17 2020, 6:22 PM · Restricted Project

May 11 2020

w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

gentle ping.
Just to summarize. The testcase demonstrating the issue is added to llvm/unittests/Analysis/ScalarEvolutionTest.cpp.
The description of what the issue is, is in the "The problem" section in the description of this review.
The solution implemented in this review is to detect when an "incomplete" PHI is being createSCEV'ed and return a SCEVUnknown.
Feedback is greatly appreciated.

May 11 2020, 10:11 AM · Restricted Project

May 4 2020

w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

gentle ping. Thanks

May 4 2020, 7:27 AM · Restricted Project

Apr 27 2020

w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

gentle ping. Thanks

Apr 27 2020, 10:43 AM · Restricted Project

Apr 20 2020

w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

gentle ping. Thanks

Apr 20 2020, 8:37 AM · Restricted Project

Apr 13 2020

w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

Thanks Zheng !! Your testcase is indeed more focused on the exact issue in getSCEV.
I will wait to get more feedback on the correctness of the fix. Once it's decided that it's the correct fix, I will post an NFC review that adds your testcase with the "old behavior" expectations, and then this patch will amend the testcase.

Apr 13 2020, 10:11 AM · Restricted Project
w2yehia added a comment to D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

Any chance this can get reviewed today. Thanks.

Apr 13 2020, 5:52 AM · Restricted Project

Apr 8 2020

w2yehia updated the diff for D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.

unit test added

Apr 8 2020, 8:30 PM · Restricted Project

Apr 6 2020

w2yehia added a reviewer for D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs: shchenz.
Apr 6 2020, 9:44 AM · Restricted Project
w2yehia added reviewers for D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs: reames, ebrevnov, nikic, apilipenko.
Apr 6 2020, 9:44 AM · Restricted Project
w2yehia updated the summary of D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.
Apr 6 2020, 9:11 AM · Restricted Project
w2yehia updated the summary of D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.
Apr 6 2020, 9:11 AM · Restricted Project
w2yehia updated the summary of D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.
Apr 6 2020, 9:11 AM · Restricted Project
w2yehia created D77560: [SCEV] don't try to query getSCEV() for incomplete PHIs.
Apr 6 2020, 8:40 AM · Restricted Project

Dec 9 2019

w2yehia added a comment to D70976: [zorg] Add LNT testing to clang-ppc64le-rhel.

Hi Galina (@gkistanova ). This is just a friendly ping. Thanks.

Dec 9 2019, 6:31 AM

Dec 3 2019

w2yehia added reviewers for D70976: [zorg] Add LNT testing to clang-ppc64le-rhel: gkistanova, stefanp.
Dec 3 2019, 1:21 PM
w2yehia updated the diff for D70976: [zorg] Add LNT testing to clang-ppc64le-rhel.
Dec 3 2019, 1:21 PM
w2yehia created D70976: [zorg] Add LNT testing to clang-ppc64le-rhel.
Dec 3 2019, 12:16 PM

Nov 26 2019

w2yehia updated the summary of D70688: [PGO] Add Value Profiling for Loop Trip Count (WIP).
Nov 26 2019, 8:54 AM · Restricted Project
w2yehia updated the summary of D70688: [PGO] Add Value Profiling for Loop Trip Count (WIP).
Nov 26 2019, 7:30 AM · Restricted Project

Nov 25 2019

w2yehia updated the summary of D70688: [PGO] Add Value Profiling for Loop Trip Count (WIP).
Nov 25 2019, 11:23 AM · Restricted Project
w2yehia created D70688: [PGO] Add Value Profiling for Loop Trip Count (WIP).
Nov 25 2019, 11:04 AM · Restricted Project
w2yehia added a comment to D70543: [zorg] Add Clang PPC buildbot on Red Hat.

@gkistanova Hi Galina, I sent you an email on Thursday, November 21, 2019 requesting access for the new build bot.
Can you please confirm that you received it. Thanks.

Nov 25 2019, 10:07 AM

Nov 21 2019

w2yehia added a comment to D70543: [zorg] Add Clang PPC buildbot on Red Hat.

Hi Galina (@gkistanova), how do I get this patch into the zorg repo? Thanks

Nov 21 2019, 2:21 PM
w2yehia created D70543: [zorg] Add Clang PPC buildbot on Red Hat.
Nov 21 2019, 8:19 AM

Oct 9 2019

w2yehia accepted D68718: [llvm-profdata] Make "malformed-ptr-to-counter-array.test" textual.
Oct 9 2019, 6:50 PM · Restricted Project
w2yehia added a comment to D68718: [llvm-profdata] Make "malformed-ptr-to-counter-array.test" textual.

Hi Vedant, thanks for the quick fix.
The test file works, and I'm able to patch it when I add more value profiles.
I think the comments should be rearranged like so (basically I fixed the placement of the Counter and Name sections):

// Header
//
// INSTR_PROF_RAW_HEADER(uint64_t, Magic, __llvm_profile_get_magic())
// INSTR_PROF_RAW_HEADER(uint64_t, Version, __llvm_profile_get_version())
// INSTR_PROF_RAW_HEADER(uint64_t, DataSize, DataSize)
// INSTR_PROF_RAW_HEADER(uint64_t, CountersSize, CountersSize)
// INSTR_PROF_RAW_HEADER(uint64_t, NamesSize,  NamesSize)
// INSTR_PROF_RAW_HEADER(uint64_t, CountersDelta, (uintptr_t)CountersBegin)
// INSTR_PROF_RAW_HEADER(uint64_t, NamesDelta, (uintptr_t)NamesBegin)
// INSTR_PROF_RAW_HEADER(uint64_t, ValueKindLast, IPVK_Last)
Oct 9 2019, 3:43 PM · Restricted Project
w2yehia added a comment to D66979: [InstrProf] Tighten a check for malformed data records in raw profiles.

@vsk thanks

Oct 9 2019, 12:23 PM · Restricted Project
w2yehia added a comment to D66979: [InstrProf] Tighten a check for malformed data records in raw profiles.

Hi @vsk can you provide a description/script on how to recreate the malformed-ptr-to-counter-array.profraw file when someone is changing the profile layout (for example by adding new value profiling kinds).
I'm thinking something like llvm/test/tools/llvm-profdata/raw-two-profiles.test would be nice
Thanks.

Oct 9 2019, 4:27 AM · Restricted Project

Oct 1 2019

w2yehia added inline comments to D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..
Oct 1 2019, 5:36 PM · Restricted Project
w2yehia added a comment to D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..

Thanks Rong.
Let me know what you think.

Oct 1 2019, 1:31 PM · Restricted Project

Sep 30 2019

w2yehia added a comment to D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..

Teresa and David, thanks for reviewing.
Rong Xu, I'll wait for your approval.

Sep 30 2019, 8:40 AM · Restricted Project

Sep 27 2019

w2yehia updated the diff for D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..
  1. Renamed Plugin_t to PluginT, and checked that no other type name has an underscore.
  2. Renamed VPCPluginChain to PluginChain
Sep 27 2019, 12:36 PM · Restricted Project
w2yehia updated the diff for D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..

Renamed ValueProfileOracle to ValueProfileCollector. I agree that at the moment, this utility class has a single purpose and that's to collect value profiling candidates; so the new name makes sense.

Sep 27 2019, 11:59 AM · Restricted Project
w2yehia updated the diff for D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..

I enclosed the VPOPluginChain template class in an unnamed namespace so that all instantiated member functions (and constructors) get internal linkage rather than external weak, which will hopefully give more reason to inline them and eliminate their definitions. Thanks to Hubert Tong for this suggestion.

Sep 27 2019, 11:10 AM · Restricted Project

Sep 26 2019

w2yehia updated the diff for D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..

Changed 'VPOPluginChain_t' to 'VPOPluginChainFinal` based on Teresa's comment.

Sep 26 2019, 7:26 AM · Restricted Project

Sep 23 2019

w2yehia created D67920: [PGO] Refactor Value Profiling into a plugin based oracle and create a well defined API for the plugins..
Sep 23 2019, 8:38 AM · Restricted Project

Sep 11 2019

w2yehia added a comment to D65026: [Bugpoint redesign] Added pass to reduce Metadata.

Just FYI, that our (IBM's) internal bots are also breaking because the following tests are not cleaning the build/test/Reduce/tmp folder:

LLVM :: Reduce/remove-funcs.ll
LLVM :: Reduce/remove-metadata.ll

And we're forced to sometimes do a clean build.

Sep 11 2019, 11:48 AM · Restricted Project