Page MenuHomePhabricator

myhsu (Min-Yih Hsu)
PhD Student in UC Irvine

Projects

User does not belong to any projects.

User Details

User Since
Sep 1 2017, 5:24 AM (159 w, 2 h)

Recent Activity

Wed, Sep 16

myhsu added a reviewer for D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2): vsk.
Wed, Sep 16, 11:15 PM · Restricted Project
myhsu added a reviewer for D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2): vsk.
Wed, Sep 16, 11:14 PM · Restricted Project

Mon, Sep 14

myhsu added a comment to D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).

Ping. Just want to check out if we all agree to flush out this patch series first before supporting optsize / minsize as per our discussions in the RFC thread

Mon, Sep 14, 4:11 PM · Restricted Project

Thu, Sep 10

myhsu updated the diff for D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).
  • Fix wording (NFC)
  • Add 50% test and restructure the test file
Thu, Sep 10, 12:08 PM · Restricted Project
myhsu added a comment to D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).

Implementation-wise, this looks good, but I wonder if we could join minsize with this using the same (or very similar) controls.

Thu, Sep 10, 10:26 AM · Restricted Project

Wed, Sep 9

myhsu added a reviewer for D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2): rengolin.
Wed, Sep 9, 8:04 PM · Restricted Project
myhsu added a reviewer for D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2): rengolin.
Wed, Sep 9, 8:03 PM · Restricted Project
myhsu updated the diff for D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2).

Unified driver options from "-fprofile-deopt-cold-*" into "-fprofile-omit-cold-opt" and "-fprofile-omit-cold-opt=<percentage>". Where the former one is just a shorthand of "-fprofile-omit-cold-opt=0"

Wed, Sep 9, 5:16 PM · Restricted Project
myhsu updated the diff for D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).
  1. Fix minor formatting issues (NFC)
  2. Rename "profile-deopt-cold-*" into "profile-omit-cold-func-opt-*"
Wed, Sep 9, 5:09 PM · Restricted Project
myhsu added a comment to D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).

As per https://llvm.org/docs/LangRef.html, deopt term appears to be already coined.

Yeah, I think deopt already means something else in the JIT compiler. I'd avoid the term.

Wed, Sep 9, 11:20 AM · Restricted Project
myhsu updated the diff for D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2).

Fix a bug in driver that accidentally made this feature turn on by default

Wed, Sep 9, 10:47 AM · Restricted Project

Tue, Sep 8

myhsu added a reviewer for D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2): davidxl.
Tue, Sep 8, 5:15 PM · Restricted Project
myhsu updated the summary of D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).
Tue, Sep 8, 5:14 PM · Restricted Project
myhsu requested review of D87338: [Driver][PGO] Driver support for de-Optimizing cold functions (PATCH 2/2).
Tue, Sep 8, 5:14 PM · Restricted Project
myhsu requested review of D87337: [PGO] De-Optimizing cold functions based on PGO info (PATCH 1/2).
Tue, Sep 8, 5:07 PM · Restricted Project

Jul 22 2020

myhsu accepted D84133: [profile][test] Add -fuse-ld=bfd to make instrprof-lto-pgogen.c robust.

Thank you!
LGTM

Jul 22 2020, 9:06 AM · Restricted Project

Jul 21 2020

myhsu added inline comments to D84133: [profile][test] Add -fuse-ld=bfd to make instrprof-lto-pgogen.c robust.
Jul 21 2020, 8:42 PM · Restricted Project
myhsu added inline comments to D84133: [profile][test] Add -fuse-ld=bfd to make instrprof-lto-pgogen.c robust.
Jul 21 2020, 8:24 AM · Restricted Project

Jul 20 2020

myhsu added a comment to D83967: [profile] Move __llvm_profile_raw_version into a separate file.

Thanks. Sent D84133

I know little about PGO and its runtime. Do you know what will happen if Instrumentation level: Front-end is used? (I added a comment to https://sourceware.org/bugzilla/show_bug.cgi?id=26262#c2 )

Jul 20 2020, 9:13 AM · Restricted Project
myhsu added a comment to D84133: [profile][test] Add -fuse-ld=bfd to make instrprof-lto-pgogen.c robust.

According your problem statement, I think the correct way to approach it is to fix the environment (i.e. use the correct version of LLD) because apparently the root of cause is outdated linkers. In other words, your original argument can be extrapolated to outdated GNU as, outdated objdump, or even outdated shell. But I don't think it's a good idea to put version constrains on every of these items, or say "because it's possible that users are using an old version of bash shell, so let's use sh shell"

Jul 20 2020, 9:09 AM · Restricted Project

Jul 18 2020

myhsu added a comment to D83967: [profile] Move __llvm_profile_raw_version into a separate file.

Can you elaborate a bit how the previous behavior was broken? The test %clang_pgogen=%t.profraw -flto %s -o %t works with me with the code change reverted. By passing -Wl,-plugin-opt=save-temps, I get:

This patch is a workaround for exactly the same binutils bug you mentioned below. I'm happy to see it got fixed in binutils, but I think this patch is still necessary given the fact that many users are still using unfixed version of binutils.

I'm not sure why you could not reproduce the bug with this changes reverted, because the compile command is nearly identical to what you attached in the binutils bug report:

./bin/clang   -m64  -ldl  -fprofile-generate=build/projects/compiler-rt/test/profile/Profile-x86_64/Output/instrprof-lto-pgogen.c.tmp.profraw -flto llvm-project/compiler-rt/test/profile/instrprof-lto-pgogen.c -o llvm-project/build/projects/compiler-rt/test/profile/Profile-x86_64/Output/instrprof-lto-pgogen.c.tmp

My ld in PATH is a slightly older one.

% /usr/local/bin/ld --version 
LLD 11.0.0 (https://github.com/llvm/llvm-project/ 4e813bbdf335626a741398314709a535ef52fe8e) (compatible with GNU linkers)
Jul 18 2020, 9:21 PM · Restricted Project
myhsu added inline comments to D83967: [profile] Move __llvm_profile_raw_version into a separate file.
Jul 18 2020, 8:58 PM · Restricted Project
myhsu added inline comments to D83967: [profile] Move __llvm_profile_raw_version into a separate file.
Jul 18 2020, 8:54 PM · Restricted Project
myhsu added a comment to D83967: [profile] Move __llvm_profile_raw_version into a separate file.

Can you elaborate a bit how the previous behavior was broken? The test %clang_pgogen=%t.profraw -flto %s -o %t works with me with the code change reverted. By passing -Wl,-plugin-opt=save-temps, I get:

Jul 18 2020, 8:44 PM · Restricted Project

Jul 16 2020

myhsu added a comment to D83967: [profile] Move __llvm_profile_raw_version into a separate file.

I've disabled the test https://reviews.llvm.org/rGb128f719a4c826e8f723eaa9b42b607c81f563a5
Please could you take a look and fix it or add comment explaining why it can't be done?

Jul 16 2020, 10:53 PM · Restricted Project
myhsu committed rG0f6220ddd6c7: [profile] Move __llvm_profile_raw_version into a separate file (authored by myhsu).
[profile] Move __llvm_profile_raw_version into a separate file
Jul 16 2020, 4:02 PM
myhsu closed D83967: [profile] Move __llvm_profile_raw_version into a separate file.
Jul 16 2020, 4:02 PM · Restricted Project
myhsu added a comment to D83967: [profile] Move __llvm_profile_raw_version into a separate file.
In D83967#2156952, @vsk wrote:

Separate from this patch: perhaps it's worth renaming compiler-rt/test/profile/Linux to compiler-rt/test/profile/LinuxWithGoldLinker (or similar).

I don't have any particularly insight on it but I guess that makes sense since the config implicitly uses gold linker for some lit substitutions like %clang_profgen.

Jul 16 2020, 2:00 PM · Restricted Project
myhsu updated the diff for D83967: [profile] Move __llvm_profile_raw_version into a separate file.
Jul 16 2020, 1:46 PM · Restricted Project
Herald added a project to D83967: [profile] Move __llvm_profile_raw_version into a separate file: Restricted Project.
Jul 16 2020, 10:26 AM · Restricted Project

Jun 2 2020

myhsu committed rG4431d64c10cb: Support ExtVectorType conditional operator (authored by myhsu).
Support ExtVectorType conditional operator
Jun 2 2020, 9:53 AM
myhsu closed D80574: [ExtVector] Support ExtVectorType conditional operator.
Jun 2 2020, 9:53 AM · Restricted Project
myhsu added a comment to D80574: [ExtVector] Support ExtVectorType conditional operator.

Btw does your change fix this bug:
https://bugs.llvm.org/show_bug.cgi?id=33103

Jun 2 2020, 9:52 AM · Restricted Project
myhsu added a comment to D80574: [ExtVector] Support ExtVectorType conditional operator.

Thank you @Anastasia !

Jun 2 2020, 9:52 AM · Restricted Project

May 29 2020

myhsu updated the diff for D80574: [ExtVector] Support ExtVectorType conditional operator.

Use full set of OpenCL semantic rules for ext_vector_type

May 29 2020, 10:21 AM · Restricted Project
myhsu added inline comments to D80574: [ExtVector] Support ExtVectorType conditional operator.
May 29 2020, 9:45 AM · Restricted Project

May 28 2020

myhsu updated the diff for D80574: [ExtVector] Support ExtVectorType conditional operator.
May 28 2020, 2:17 PM · Restricted Project
myhsu updated the diff for D80574: [ExtVector] Support ExtVectorType conditional operator.

Fix document section

May 28 2020, 1:45 PM · Restricted Project
myhsu added inline comments to D80574: [ExtVector] Support ExtVectorType conditional operator.
May 28 2020, 1:45 PM · Restricted Project

May 26 2020

myhsu created D80574: [ExtVector] Support ExtVectorType conditional operator.
May 26 2020, 10:16 AM · Restricted Project

Dec 21 2019

myhsu closed D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.

Actually, are you seeing this bug on ORC? Or just on MCJIT?

ORC, specifically ORCv2.

Oh -- That's an ORCv2 bug. I have fixed that in 9f4f237e29e7. Would you be able to apply that patch to your branch and see if it fixes your issue?

Dec 21 2019, 12:24 AM · Restricted Project

Dec 20 2019

myhsu added a comment to D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.

Actually, are you seeing this bug on ORC? Or just on MCJIT?

ORC, specifically ORCv2. I did see deregistration called in LegacyRTDyldObjectLinkingLayer, but well, it’s legacy v1. I didn’t see any deregistration in v2.

Looking at the code again, if you're using ORC this should be handled automatically. If you're using MCJIT it is (unfortunately) contract that you're responsible for calling this yourself. It would be safe to add this call to SectionMemoryManager as redundant calls (from existing clients) are no-ops, but it introduces a hazard: Anyone who brings up a JIT successfully with SectionMemoryManager is suddenly going to discover that their code fails when they try to use a custom memory manager.

Dec 20 2019, 7:30 PM · Restricted Project
myhsu added a comment to D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.

@myhsu Now that you have three accepted commits to LLVM, you can ask for commit access! Follow these instructions

Dec 20 2019, 5:01 PM · Restricted Project
myhsu added a comment to D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.

Hi myhsu -- This looks good to me. Do you have commit access? If so please feel free to commit. If not just let me know and I will commit on your behalf.

Dec 20 2019, 3:46 AM · Restricted Project

Dec 18 2019

myhsu created D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.
Dec 18 2019, 5:59 PM · Restricted Project
myhsu updated the summary of D71683: [ORC][EH] Deregister EH frames in MemoryManager dtor.
Dec 18 2019, 5:59 PM · Restricted Project

Oct 19 2019

myhsu added a comment to D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.

@myhsu do you need me to land this for you? I presume you don't yet have commit privileges.

That would be great. Thank you very much

Oct 19 2019, 1:50 PM · Restricted Project

Oct 16 2019

myhsu updated the summary of D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.
Oct 16 2019, 9:41 AM · Restricted Project
myhsu added a comment to D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.

Ping on this review.
Also, the compiler for the Pony Programming Language bumped into the same bug. Since MemCpyOpt will run by default in O3, it would be a little bit hard for a downstream user to avoid this bug without changing the LLVM source tree.

Oct 16 2019, 9:41 AM · Restricted Project

Aug 21 2019

myhsu added reviewers for D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values: dneilson, t.p.northover, lattner.
Aug 21 2019, 7:27 PM · Restricted Project

Aug 11 2019

myhsu updated the summary of D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.
Aug 11 2019, 7:08 AM · Restricted Project
myhsu updated the summary of D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.
Aug 11 2019, 7:07 AM · Restricted Project

Aug 10 2019

myhsu created D66060: [MemCpyOpt] Fixing Incorrect Code Motion while Handling Aggregate Type Values.
Aug 10 2019, 9:42 PM · Restricted Project

Jul 31 2019

myhsu added inline comments to D65350: [DDG] Data Dependence Graph Basics.
Jul 31 2019, 8:50 AM · Restricted Project

Jul 4 2019

myhsu added a comment to D64088: [DDG] DirectedGraph as a base class for various dependence graphs such as DDG and PDG..

Is there any plan on supporting GraphTraits in this patch? I understand that sometimes it probably will be more suitable for derived class of DirectedGraph to implement GraphTraits. But I see no problem on providing a basic implementation of GraphTraits for DirectedGraph here.

Jul 4 2019, 7:26 AM · Restricted Project

Jun 17 2019

myhsu added a comment to D63449: [GN] Generation failure caused by trailing space in file name.

Thanks for the review. I don't have commit permission, can you help me to commit?

Jun 17 2019, 10:10 PM · Restricted Project
myhsu created D63449: [GN] Generation failure caused by trailing space in file name.
Jun 17 2019, 11:05 AM · Restricted Project

Oct 5 2017

myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

Remove 'FindPhiPredForUsedInBlock' function

Oct 5 2017, 6:16 PM
myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

Rebase to master

Oct 5 2017, 8:28 AM
myhsu added a comment to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@chandlerc @kuhar
I'm not pretty familiar the procedure yet, could someone help me commit the patch or merge it?
Thanks

If you have commit access, you can go ahead and submit the patch. Otherwise, I can submit it for you.
Please take a look here: Obtaining Commit Access.

Oct 5 2017, 7:58 AM
myhsu added a comment to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@chandlerc @kuhar
I'm not pretty familiar the procedure yet, could someone help me commit the patch or merge it?
Thanks

Oct 5 2017, 5:22 AM

Oct 4 2017

myhsu added a comment to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

Other than the two minor nits, the patch looks good to me.

Oct 4 2017, 5:16 AM
myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

Fix comment

Oct 4 2017, 5:14 AM

Oct 3 2017

myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@kuhar
Fix typos

Oct 3 2017, 2:13 PM

Oct 2 2017

myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

Fix typo

Oct 2 2017, 10:34 AM
myhsu added inline comments to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.
Oct 2 2017, 10:29 AM
myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@kuhar
Fix things mentioned in the inline comments

Oct 2 2017, 10:25 AM

Sep 22 2017

myhsu updated the summary of D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.
Sep 22 2017, 5:23 AM
myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@chandlerc
Temporarily revert to version before applying clang-format

Sep 22 2017, 5:20 AM

Sep 21 2017

myhsu added a comment to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

@kuhar @dberlin
Could you help reviewing my update?
Thanks : )

Sep 21 2017, 12:48 PM

Sep 18 2017

myhsu added a comment to D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.

It turn out that the DomTree updating issue has actually been fixed in D32308
The unittest also pass after I applying that change
Sorry I didn't work incrementally on master branch at first place

Sep 18 2017, 7:51 AM
myhsu updated the diff for D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.
Sep 18 2017, 7:46 AM

Sep 15 2017

myhsu created D37902: [CodeExtractor] Fix multiple bugs under certain shape of extracted region.
Sep 15 2017, 7:06 AM