Page MenuHomePhabricator

aqjune (Juneyoung Lee)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 17 2017, 8:49 PM (196 w, 2 d)

Recent Activity

Fri, Oct 16

aqjune added inline comments to D89050: Add support for !noundef metatdata on loads.
Fri, Oct 16, 9:58 PM · Restricted Project
aqjune added a comment to D89050: Add support for !noundef metatdata on loads.

Changes in LangRef other than the name rewrite didn't seem very critical, so undid them.

Fri, Oct 16, 9:57 PM · Restricted Project
aqjune committed rG62a0ec1612bd: Add support for !noundef metatdata on loads (authored by aqjune).
Add support for !noundef metatdata on loads
Fri, Oct 16, 9:50 PM
aqjune closed D89050: Add support for !noundef metatdata on loads.
Fri, Oct 16, 9:50 PM · Restricted Project
aqjune updated the diff for D89050: Add support for !noundef metatdata on loads.

Remove .rej

Fri, Oct 16, 9:45 PM · Restricted Project
aqjune updated the diff for D89050: Add support for !noundef metatdata on loads.

Rebase

Fri, Oct 16, 9:44 PM · Restricted Project
aqjune committed rG701cf4b5a59c: [LangRef] Rename the names of metadata in load/store's syntax (NFC) (authored by aqjune).
[LangRef] Rename the names of metadata in load/store's syntax (NFC)
Fri, Oct 16, 9:31 PM

Thu, Oct 15

aqjune added a comment to D89050: Add support for !noundef metatdata on loads.

Seems like the word index isn't conveying helpful information, so I renamed it into empty_node

Thu, Oct 15, 4:47 PM · Restricted Project
aqjune updated the diff for D89050: Add support for !noundef metatdata on loads.

Undo unnecessary changes

Thu, Oct 15, 4:43 PM · Restricted Project
aqjune updated the diff for D89050: Add support for !noundef metatdata on loads.

Update wording of LangRef

Thu, Oct 15, 4:29 PM · Restricted Project
aqjune added inline comments to D89050: Add support for !noundef metatdata on loads.
Thu, Oct 15, 4:10 PM · Restricted Project

Wed, Oct 14

aqjune added a comment to D89050: Add support for !noundef metatdata on loads.

Sorry for my change in stance.
May I proceed with this patch?

Wed, Oct 14, 7:58 PM · Restricted Project
aqjune accepted D89417: [LangRef] Clarify `dereferenceable` -> `nonnull` implication.

As discussed in D17993, it looks fine.

Wed, Oct 14, 7:51 PM · Restricted Project
aqjune committed rG9b3c2a72e4cb: [ValueTracking] Use assume's noundef operand bundle (authored by aqjune).
[ValueTracking] Use assume's noundef operand bundle
Wed, Oct 14, 4:17 AM
aqjune closed D89219: [ValueTracking] Use assume's noundef operand bundle.
Wed, Oct 14, 4:16 AM · Restricted Project

Tue, Oct 13

aqjune added inline comments to D89219: [ValueTracking] Use assume's noundef operand bundle.
Tue, Oct 13, 6:50 PM · Restricted Project
aqjune updated the diff for D89219: [ValueTracking] Use assume's noundef operand bundle.

Add a test

Tue, Oct 13, 6:49 PM · Restricted Project
aqjune added inline comments to D89219: [ValueTracking] Use assume's noundef operand bundle.
Tue, Oct 13, 4:16 AM · Restricted Project
aqjune updated the diff for D89219: [ValueTracking] Use assume's noundef operand bundle.

Add NoUndef to isUsefullToPreserve

Tue, Oct 13, 4:00 AM · Restricted Project
aqjune updated the diff for D89219: [ValueTracking] Use assume's noundef operand bundle.

Use getKnowledgeValidInContext

Tue, Oct 13, 3:55 AM · Restricted Project

Mon, Oct 12

aqjune added a comment to D89050: Add support for !noundef metatdata on loads.

I made D89219 that updates relevant functions to exploit llvm.assume's noundef operand bundle.

Mon, Oct 12, 2:40 AM · Restricted Project
aqjune requested review of D89219: [ValueTracking] Use assume's noundef operand bundle.
Mon, Oct 12, 12:29 AM · Restricted Project

Sun, Oct 11

aqjune added a comment to D88979: [InstCombine] combineLoadToOperationType(): don't fold int<->ptr cast into load.

+1 for this patch!

Sun, Oct 11, 9:58 PM · Restricted Project, Restricted Project

Thu, Oct 8

aqjune added a comment to D81678: Introduce noundef attribute at call sites for stricter poison analysis.

I think it makes sense - IIUC, for most of the clang tests, noundef won't be the attribute of interest.
For brevity of tests, I think the change is fine.

Thu, Oct 8, 9:25 AM · Restricted Project, Restricted Project
aqjune added a comment to D89050: Add support for !noundef metatdata on loads.

Oops, just saw the reply after sending the mail to llvm-dev.
Yes, I agree that llvm.assume can encode the noundef information more precisely and it's a benefit. I'm also happy to hear other's opinions.

Thu, Oct 8, 9:16 AM · Restricted Project
aqjune requested review of D89050: Add support for !noundef metatdata on loads.
Thu, Oct 8, 8:40 AM · Restricted Project

Wed, Oct 7

aqjune added a comment to D71126: Adding PoisonValue for representing poison value explicitly in IR.

I would recommend making PoisonValue a subclass of UndefValue. Poison can always be relaxed to undef, and this will prevents lots of regressions when replacing undef with poison values.

Wed, Oct 7, 3:32 AM · Restricted Project

Tue, Oct 6

aqjune added a comment to D88217: [GVN] Make propagateEquality look into the operand of freeze.

ping

Tue, Oct 6, 12:03 AM · Restricted Project
aqjune added a comment to D88432: [InstCombine] Fix pr47668.

Did my explanation make sense?
The message was that it was needed to check the shift bitwidth as well, which slightly made the code longer.

Tue, Oct 6, 12:02 AM · Restricted Project

Mon, Oct 5

aqjune added inline comments to D88860: [LangRef] Describe why the pointer aliasing rules are currently unsound..
Mon, Oct 5, 11:56 PM · Restricted Project
aqjune added inline comments to D88860: [LangRef] Describe why the pointer aliasing rules are currently unsound..
Mon, Oct 5, 11:37 PM · Restricted Project

Wed, Sep 30

aqjune added inline comments to D86841: [clang] Add mustprogress and llvm.loop.mustprogress attribute deduction.
Wed, Sep 30, 3:22 PM · Restricted Project
aqjune added a comment to D88432: [InstCombine] Fix pr47668.
  • if the shift amount is a variable, check that it is not undef
  • if it is a constant, sanitize undef elts to 0
Wed, Sep 30, 3:14 PM · Restricted Project
aqjune updated the diff for D88432: [InstCombine] Fix pr47668.

Soothe clang-format warning

Wed, Sep 30, 2:22 PM · Restricted Project
aqjune added a comment to D88432: [InstCombine] Fix pr47668.

Hi, I'm back!

Wed, Sep 30, 2:15 PM · Restricted Project
aqjune updated the summary of D88432: [InstCombine] Fix pr47668.
Wed, Sep 30, 2:12 PM · Restricted Project

Tue, Sep 29

aqjune added a comment to D87984: [BuildLibCalls] Add noundef to the returned pointers of allocators and argument of free.

Thanks!

Tue, Sep 29, 10:17 AM · Restricted Project
aqjune committed rG67aac915ba94: [BuildLibCalls] Add noundef to the returned pointers of allocators and argument… (authored by aqjune).
[BuildLibCalls] Add noundef to the returned pointers of allocators and argument…
Tue, Sep 29, 10:14 AM
aqjune closed D87984: [BuildLibCalls] Add noundef to the returned pointers of allocators and argument of free.
Tue, Sep 29, 10:14 AM · Restricted Project

Mon, Sep 28

aqjune requested review of D88432: [InstCombine] Fix pr47668.
Mon, Sep 28, 10:31 AM · Restricted Project
aqjune committed rGba8911d560ef: [ValueTracking] Fix analyses to update CxtI to be phi's incoming edges'… (authored by aqjune).
[ValueTracking] Fix analyses to update CxtI to be phi's incoming edges'…
Mon, Sep 28, 7:27 AM
aqjune closed D88360: [ValueTracking] Fix analyses to update CxtI to be phi's incoming edges' terminators.
Mon, Sep 28, 7:26 AM · Restricted Project

Sun, Sep 27

aqjune added inline comments to D88360: [ValueTracking] Fix analyses to update CxtI to be phi's incoming edges' terminators.
Sun, Sep 27, 6:34 PM · Restricted Project
aqjune updated the diff for D88360: [ValueTracking] Fix analyses to update CxtI to be phi's incoming edges' terminators.

Address comments

Sun, Sep 27, 6:32 PM · Restricted Project

Sat, Sep 26

aqjune added a comment to D87984: [BuildLibCalls] Add noundef to the returned pointers of allocators and argument of free.

If it is desirable to clarify the behavior of malloc and free in LangRef as well, I'm willing to do it.

Sat, Sep 26, 5:04 PM · Restricted Project
aqjune added inline comments to D88276: [IsKnownNonZero] Handle the case with non-constant phi nodes.
Sat, Sep 26, 8:13 AM · Restricted Project
aqjune requested review of D88360: [ValueTracking] Fix analyses to update CxtI to be phi's incoming edges' terminators.
Sat, Sep 26, 8:13 AM · Restricted Project
aqjune added inline comments to D88217: [GVN] Make propagateEquality look into the operand of freeze.
Sat, Sep 26, 5:21 AM · Restricted Project
aqjune updated the diff for D88217: [GVN] Make propagateEquality look into the operand of freeze.

Do not replace freeze's operand with rhs if rhs is also freeze

Sat, Sep 26, 5:17 AM · Restricted Project

Fri, Sep 25

aqjune added a comment to D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.

MSan will complain about any undefined bits in a pointer.
We have not seen a false positive caused by this so far, but it sounds like we should relax the requirement. Does it make sense for MSan to allow undef in the lower bits up to the known dereferenceable range of the pointer?

Fri, Sep 25, 4:26 PM · Restricted Project
aqjune committed rG8bd205bf1de4: [LangRef] Clarify the behavior of memory access instructions when… (authored by aqjune).
[LangRef] Clarify the behavior of memory access instructions when…
Fri, Sep 25, 4:14 PM
aqjune closed D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Fri, Sep 25, 4:13 PM · Restricted Project
aqjune added inline comments to D88276: [IsKnownNonZero] Handle the case with non-constant phi nodes.
Fri, Sep 25, 12:40 AM · Restricted Project
aqjune accepted D88276: [IsKnownNonZero] Handle the case with non-constant phi nodes.

LGTM

Fri, Sep 25, 12:09 AM · Restricted Project

Thu, Sep 24

aqjune added inline comments to D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 5:52 PM · Restricted Project
aqjune committed rG92106641ae29: [ValueTracking] Make isGuaranteedNotToBeUndefOrPoison exit early when… (authored by aqjune).
[ValueTracking] Make isGuaranteedNotToBeUndefOrPoison exit early when…
Thu, Sep 24, 5:51 PM
aqjune added inline comments to D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Thu, Sep 24, 5:22 PM · Restricted Project
aqjune updated the diff for D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.

Add a link, remove a sentence

Thu, Sep 24, 5:19 PM · Restricted Project
aqjune added inline comments to D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 5:03 PM · Restricted Project
aqjune committed rG1c45220028a8: [ValueTracking] Check uses of Argument if it is given to… (authored by aqjune).
[ValueTracking] Check uses of Argument if it is given to…
Thu, Sep 24, 4:58 PM
aqjune closed D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 4:58 PM · Restricted Project
aqjune added inline comments to D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 12:43 PM · Restricted Project
aqjune updated the diff for D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.

Address comments

Thu, Sep 24, 12:40 PM · Restricted Project
aqjune added a comment to D88217: [GVN] Make propagateEquality look into the operand of freeze.

About pointer equality propagation - @fhahn added canReplacePointersIfEqual at https://reviews.llvm.org/D85524. Would it be good if I update GVN to use this function?

Thu, Sep 24, 12:12 PM · Restricted Project
aqjune added inline comments to D88217: [GVN] Make propagateEquality look into the operand of freeze.
Thu, Sep 24, 12:08 PM · Restricted Project
aqjune added inline comments to D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 12:01 PM · Restricted Project
aqjune added inline comments to D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Thu, Sep 24, 11:57 AM · Restricted Project
aqjune updated the summary of D88217: [GVN] Make propagateEquality look into the operand of freeze.
Thu, Sep 24, 4:32 AM · Restricted Project
aqjune requested review of D88217: [GVN] Make propagateEquality look into the operand of freeze.
Thu, Sep 24, 4:32 AM · Restricted Project
aqjune updated the summary of D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 2:56 AM · Restricted Project
aqjune requested review of D88207: [ValueTracking] Check uses of Argument if it is given to isGuaranteedNotToBeUndefOrPoison.
Thu, Sep 24, 2:56 AM · Restricted Project

Wed, Sep 23

aqjune updated the diff for D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.

Update the definition of a well-defined value to show that it is defined per a program execution

Wed, Sep 23, 11:30 AM · Restricted Project

Sep 21 2020

aqjune retitled D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined from [LangRef] State that pointers and/or sizes of memory access instructions are well-defined to [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Sep 21 2020, 11:27 PM · Restricted Project
aqjune updated the diff for D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.

Update the contents to follow the conclusion of the discussion at llvm-dev.

Sep 21 2020, 11:18 PM · Restricted Project

Sep 20 2020

aqjune updated the summary of D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Sep 20 2020, 3:52 PM · Restricted Project
aqjune updated the diff for D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.

Fix typo

Sep 20 2020, 3:52 PM · Restricted Project
aqjune added inline comments to D87965: [InstCombine] replace phi values from unreachable blocks with 'undef'.
Sep 20 2020, 3:34 PM · Restricted Project
aqjune updated the summary of D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Sep 20 2020, 3:28 PM · Restricted Project
aqjune requested review of D87994: [LangRef] Clarify the behavior of memory access instructions when pointers/sizes aren't well-defined.
Sep 20 2020, 3:27 PM · Restricted Project
aqjune requested review of D87984: [BuildLibCalls] Add noundef to the returned pointers of allocators and argument of free.
Sep 20 2020, 2:13 AM · Restricted Project

Sep 12 2020

aqjune accepted D87445: [InstCombine] Fix incorrect SimplifyWithOpReplaced transform (PR47322).

LGTM

Sep 12 2020, 3:55 AM · Restricted Project

Sep 11 2020

aqjune added a comment to D87445: [InstCombine] Fix incorrect SimplifyWithOpReplaced transform (PR47322).

The change makes sense to me.

Sep 11 2020, 1:15 AM · Restricted Project

Sep 10 2020

aqjune committed rG1b9884df8d2d: Enable InsertFreeze flag of JumpThreading when used in LTO (authored by aqjune).
Enable InsertFreeze flag of JumpThreading when used in LTO
Sep 10 2020, 3:06 AM
aqjune closed D85534: Enable InsertFreeze flag of JumpThreading when used in LTO.
Sep 10 2020, 3:06 AM · Restricted Project
aqjune added a comment to D85534: Enable InsertFreeze flag of JumpThreading when used in LTO.

D84940 has landed; if this patch looks good, I'll merge this patch too.

Sep 10 2020, 12:02 AM · Restricted Project

Sep 9 2020

aqjune committed rG39c1653b3dbb: [JumpThreading] Conditionally freeze its condition when unfolding select (authored by aqjune).
[JumpThreading] Conditionally freeze its condition when unfolding select
Sep 9 2020, 11:50 PM
aqjune closed D84940: [JumpThreading] Conditionally freeze its condition when unfolding select.
Sep 9 2020, 11:50 PM · Restricted Project
aqjune updated the summary of D84940: [JumpThreading] Conditionally freeze its condition when unfolding select.
Sep 9 2020, 11:47 PM · Restricted Project
aqjune added a comment to D84940: [JumpThreading] Conditionally freeze its condition when unfolding select.

Shall we do the full insertion of freeze after noundef-relevant patches (D81678 and a few patches adding noundef to library functions) are fully landed?
Until then, I think limiting this to LTO is necessary because this will introduce many instructions that will interact with many optimizations in O3.

Sep 9 2020, 4:40 PM · Restricted Project
aqjune committed rGa6183d0f028c: [ValueTracking] isKnownNonZero, computeKnownBits for freeze (authored by aqjune).
[ValueTracking] isKnownNonZero, computeKnownBits for freeze
Sep 9 2020, 4:08 PM
aqjune closed D75808: [ValueTracking] isKnownNonZero, computeKnownBits for freeze.
Sep 9 2020, 4:08 PM · Restricted Project
aqjune updated the diff for D75808: [ValueTracking] isKnownNonZero, computeKnownBits for freeze.

Address comments

Sep 9 2020, 4:07 PM · Restricted Project
aqjune added a comment to D75808: [ValueTracking] isKnownNonZero, computeKnownBits for freeze.

It depends on whether SelDag has a poison value - does anyone know whether it has one?

We have nsw/nuw/exact flags on nodes, so that means poison exists?

Sep 9 2020, 10:58 AM · Restricted Project
aqjune updated the diff for D75808: [ValueTracking] isKnownNonZero, computeKnownBits for freeze.

Rebase

Sep 9 2020, 10:55 AM · Restricted Project
aqjune committed rG36c8621638d1: [BuildLibCalls] Add more noundef to library functions (authored by aqjune).
[BuildLibCalls] Add more noundef to library functions
Sep 9 2020, 4:34 AM
aqjune closed D85894: [BuildLibCalls] Add more noundef to library functions.
Sep 9 2020, 4:33 AM · Restricted Project
aqjune committed rG25ce1e049725: [ValueTracking] Add UndefOrPoison/Poison-only version of relevant functions (authored by aqjune).
[ValueTracking] Add UndefOrPoison/Poison-only version of relevant functions
Sep 9 2020, 4:01 AM
aqjune closed D84242: [ValueTracking] Add UndefOrPoison/Poison-only version of relevant functions.
Sep 9 2020, 4:01 AM · Restricted Project
aqjune updated the summary of D84242: [ValueTracking] Add UndefOrPoison/Poison-only version of relevant functions.
Sep 9 2020, 3:59 AM · Restricted Project
aqjune updated the diff for D84242: [ValueTracking] Add UndefOrPoison/Poison-only version of relevant functions.

Typos

Sep 9 2020, 3:58 AM · Restricted Project