Page MenuHomePhabricator

lebedev.ri (Roman Lebedev)
User

Projects

User does not belong to any projects.

User Details

User Since
Oct 27 2012, 6:35 AM (451 w, 4 d)

Recent Activity

Today

lebedev.ri added a comment to D75981: [LV] Allow large RT checks, if they are a fraction of the scalar cost..

Reverse ping, thanks.

Wed, Jun 23, 7:31 AM · Restricted Project
lebedev.ri added a comment to D101290: [LV] Try to sink and hoist inside candidate loops for vectorization..

The alternative solution landed some time ago.
Abandon this?

Wed, Jun 23, 7:31 AM · Restricted Project
lebedev.ri updated the diff for D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.

@rnk done, all tests updated.

Wed, Jun 23, 7:22 AM · Restricted Project
lebedev.ri accepted D104472: [ValueTracking] look through bitcast of vector in computeKnownBits.

LG, thank you.

Wed, Jun 23, 6:55 AM · Restricted Project
lebedev.ri committed rG707224ea16f6: [NFC] Update arm_function_name.ll after 4de0c400317e5a92d57f2c76545061a9e7de22f8 (authored by lebedev.ri).
[NFC] Update arm_function_name.ll after 4de0c400317e5a92d57f2c76545061a9e7de22f8
Wed, Jun 23, 6:42 AM
lebedev.ri updated the diff for D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.

I think this is reasonable: later cfg simplifications will tail merge the preceding instructions and delete dbg.values appropriately. I didn't hit "accept" since the tests don't all pass yet.

Wed, Jun 23, 6:42 AM · Restricted Project
lebedev.ri committed rGeb7ce97870d9: [NFC][ARM] Fix update_llc_test_checks for thumbv7-apple-darwin, autogenerate… (authored by lebedev.ri).
[NFC][ARM] Fix update_llc_test_checks for thumbv7-apple-darwin, autogenerate…
Wed, Jun 23, 6:35 AM
lebedev.ri committed rGb77972ac4f05: [NFC][AArch64] Autogenerate a few more tests (authored by lebedev.ri).
[NFC][AArch64] Autogenerate a few more tests
Wed, Jun 23, 6:35 AM
lebedev.ri committed rG3c94869632d3: [NFC][ARM] Fix update_llc_test_checks for aarch64-apple-ios/thumbv7s-apple… (authored by lebedev.ri).
[NFC][ARM] Fix update_llc_test_checks for aarch64-apple-ios/thumbv7s-apple…
Wed, Jun 23, 6:35 AM
lebedev.ri committed rG15be15073ef6: [NFC][ARM] Fix update_llc_test_checks for thumbv7-apple-ios, autogenerate… (authored by lebedev.ri).
[NFC][ARM] Fix update_llc_test_checks for thumbv7-apple-ios, autogenerate…
Wed, Jun 23, 6:35 AM
lebedev.ri committed rG4de0c400317e: [NFC][ARM] Fix update_llc_test_checks for armv7-apple-ios, autogenerate ifcvt5. (authored by lebedev.ri).
[NFC][ARM] Fix update_llc_test_checks for armv7-apple-ios, autogenerate ifcvt5.
Wed, Jun 23, 6:35 AM
lebedev.ri added a comment to D104363: [llvm] Mark more internal command line optins as cl::Hidden.

Something like this yes.
I think someone attempted this previously, and i don't recall why that didn't proceed.
It may be better to do this per-tool.

Wed, Jun 23, 4:47 AM · Restricted Project
lebedev.ri committed rGff4b1d379f3f: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging (authored by lebedev.ri).
[NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging
Wed, Jun 23, 4:34 AM
lebedev.ri closed D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.
Wed, Jun 23, 4:34 AM · Restricted Project
lebedev.ri added a comment to D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.

lgtm

Wed, Jun 23, 4:29 AM · Restricted Project
lebedev.ri added a comment to D104679: [LoopUnrolling] Add flag to restrict the unroll with large loop size.

Let me take a look, i might have an idea how to un-recurse it..

Wed, Jun 23, 1:14 AM · Restricted Project

Yesterday

lebedev.ri added a comment to D104750: [LV] Support Interleaved Store Group With Gaps.

Costmodel is wrong: if there are gaps, you need to load the vector of original values, and insert the non-gap elements into it.

but we are using a masked-store, the non-gaps will be masked-out, they are undefs...

Tue, Jun 22, 2:49 PM · Restricted Project
lebedev.ri added a comment to D104750: [LV] Support Interleaved Store Group With Gaps.

Costmodel is wrong: if there are gaps, you need to load the vector of original values, and insert the non-gap elements into it.

Tue, Jun 22, 2:39 PM · Restricted Project
lebedev.ri added a comment to D104732: [SCEV] Support signed predicates in applyLoopGuards..

Seems fine to me.

Tue, Jun 22, 11:55 AM · Restricted Project
lebedev.ri added a comment to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.

SGTM i guess.

Tue, Jun 22, 11:30 AM · Restricted Project
lebedev.ri added inline comments to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.
Tue, Jun 22, 11:17 AM · Restricted Project
lebedev.ri resigned from D103788: [InstCombine] Eliminate casts to optimize ctlz operation.
Tue, Jun 22, 11:01 AM · Restricted Project
lebedev.ri added inline comments to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.
Tue, Jun 22, 10:14 AM · Restricted Project
lebedev.ri added inline comments to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.
Tue, Jun 22, 10:13 AM · Restricted Project
lebedev.ri added a comment to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.

Patch description doesn't explain *why* we should do that.

Tue, Jun 22, 10:01 AM · Restricted Project
lebedev.ri added inline comments to D104723: [DAGCombine] Check reassoc flags in aggressive fsub fusion.
Tue, Jun 22, 9:58 AM · Restricted Project
lebedev.ri added a comment to D104180: [NFC] [LICM] Create LoopNest Invariant Code Motion (LNICM) pass.

I'm personally is still having a hard time understanding the final picture. (same for loop-idiom pass patch)
Is LoopNest Invariant Code Motion Pass only about not doing the movement that breaks perfect loop nest?
What about all the code that is no longer moved?
What is the envisioned final pipeline structure?
Do we end up having to run both LNICM and LICM?

Tue, Jun 22, 9:45 AM · Restricted Project
lebedev.ri added a comment to D104707: [X86] Fold nested select_cc to select (cmp*ge/le Cond0, Cond1), LHS, Y).

LG to me

Tue, Jun 22, 7:33 AM · Restricted Project
lebedev.ri added a comment to D104702: [LSR] Filter out zero factors. PR50765.

Not really familiar with this code, but sounds reasonable.

Tue, Jun 22, 4:52 AM · Restricted Project
lebedev.ri requested changes to D104636: [LoopIdiom] [LoopNest] let the pass deal with runtime memset size.
Tue, Jun 22, 2:47 AM · Restricted Project
lebedev.ri added a reviewer for D104679: [LoopUnrolling] Add flag to restrict the unroll with large loop size: lebedev.ri.
Tue, Jun 22, 2:33 AM · Restricted Project
lebedev.ri added a comment to D104679: [LoopUnrolling] Add flag to restrict the unroll with large loop size.

I'm still not fine with this approach:

  1. 1000 is way too low here. E.g. for znver3 the ideal loop size after unroll is 4096, which means that even partial unroll will blow past this threshold.
  2. The threshold will depend on the underlying libc, since the default stack size differs between them.
  3. for testing purposes implies this never happens in real world, while the very existence of the patch implies that it does..
Tue, Jun 22, 2:33 AM · Restricted Project
lebedev.ri added a comment to D104634: [SCEV] Generalize MatchBinaryAddToConst to support non-add expressions..

Looks good to me

Tue, Jun 22, 2:22 AM · Restricted Project
lebedev.ri accepted D104618: [LoopDeletion] Exploit undef Phi inputs when symbolically executing 1st iteration.

LGTM, thank you.

Tue, Jun 22, 2:18 AM · Restricted Project

Mon, Jun 21

lebedev.ri updated the diff for D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.

Move code out of the loop since it looks cleaner that way.

Mon, Jun 21, 2:27 PM · Restricted Project
lebedev.ri added inline comments to D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.
Mon, Jun 21, 2:15 PM · Restricted Project
lebedev.ri updated the diff for D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.

Hopefully address review notes.

Mon, Jun 21, 2:15 PM · Restricted Project
lebedev.ri committed rG4cf74469a0f5: [NFC][SimplifyCFG] Add basic test for debuginfo preservation of `ret` tail… (authored by lebedev.ri).
[NFC][SimplifyCFG] Add basic test for debuginfo preservation of `ret` tail…
Mon, Jun 21, 1:57 PM
lebedev.ri committed rG3e98b88797e5: [NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep (authored by lebedev.ri).
[NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep
Mon, Jun 21, 1:57 PM
lebedev.ri added a comment to D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.

@rkn thank you for taking a look!

Mon, Jun 21, 1:24 PM · Restricted Project
lebedev.ri added a comment to D104662: [SCEVExpander] Prefer pointer expansion for overflow checks.

Do we need to check that GEP index size is big enough for this?

Mon, Jun 21, 12:26 PM · Restricted Project
lebedev.ri added inline comments to D100646: [libc] Add a set of elementary operations.
Mon, Jun 21, 9:32 AM · Restricted Project
lebedev.ri added a comment to D104641: [LICM] Strip context sensitive attributes after call hoisting.

Should this not be integrated intp Instruction::hasMetadataOtherThanDebugLoc()/Instruction::dropUnknownNonDebugMetadata() ?

Mon, Jun 21, 7:07 AM · Restricted Project
lebedev.ri added a comment to D104636: [LoopIdiom] [LoopNest] let the pass deal with runtime memset size.

Why is this beneficial?

I shall quote from D104179 as @qianzhen stated this optimization clearly:

When the loop idiom transformation processes a memset instruction in a loop, currently it only handles the memset with a compile-time constant size. The motivation of this work is to relax this limitation, so that a memset with a variable size in a loop may still be processed and promoted to a larger memset if it passes all the eligibility checks. Performance-wise, promoting the memset in a loop to a larger memset reduces the number of calls to memset; hence reducing the overall call overhead.
A similar technique may also apply to the memcpy with a variable size in a loop.

Mon, Jun 21, 5:58 AM · Restricted Project
lebedev.ri added a comment to D104636: [LoopIdiom] [LoopNest] let the pass deal with runtime memset size.

Why is this beneficial?

Mon, Jun 21, 5:45 AM · Restricted Project
lebedev.ri added a comment to D101074: [X86] Canonicalize SGT/UGT compares with constants to use SGE/UGE to reduce the number of EFLAGs reads. (PR48760).

What about the case where the active bit width decreases, e.g. -129 is i9, incremented it is -128, which is i8.

Mon, Jun 21, 5:14 AM · Restricted Project
lebedev.ri added a comment to D104631: [LoopVersioning] add function to create versioned loop with plain runtime check.

The design seems weird here.
I think it would be best to first see the intended use case.

Mon, Jun 21, 3:56 AM · Restricted Project
lebedev.ri added a reviewer for D104618: [LoopDeletion] Exploit undef Phi inputs when symbolically executing 1st iteration: aqjune.

Looks good to me, thank you.

Mon, Jun 21, 2:36 AM · Restricted Project

Sun, Jun 20

lebedev.ri updated the diff for D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.

Autogenerate more, but still not all, affected codegen tests.

Sun, Jun 20, 4:19 AM · Restricted Project
lebedev.ri committed rGe497b12a6960: [NFC][AArch64][ARM][Thumb][Hexagon] Autogenerate some tests (authored by lebedev.ri).
[NFC][AArch64][ARM][Thumb][Hexagon] Autogenerate some tests
Sun, Jun 20, 4:13 AM
lebedev.ri committed rGb1f55c33d435: [UpdateTestUtils] Print test filename when complaining about conflicting prefix (authored by lebedev.ri).
[UpdateTestUtils] Print test filename when complaining about conflicting prefix
Sun, Jun 20, 4:13 AM
lebedev.ri updated the summary of D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.
Sun, Jun 20, 2:47 AM · Restricted Project
lebedev.ri updated the diff for D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.

Split off addresstaken fixes.

Sun, Jun 20, 2:46 AM · Restricted Project
lebedev.ri committed rGc5b7335dc8eb: [SimplifyCFG] FoldTwoEntryPHINode(): don't fold if either block has it's… (authored by lebedev.ri).
[SimplifyCFG] FoldTwoEntryPHINode(): don't fold if either block has it's…
Sun, Jun 20, 2:38 AM
lebedev.ri committed rGad87761925c2: [SimplifyCFG] HoistThenElseCodeToIf(): don't hoist if either block has it's… (authored by lebedev.ri).
[SimplifyCFG] HoistThenElseCodeToIf(): don't hoist if either block has it's…
Sun, Jun 20, 2:23 AM

Sat, Jun 19

lebedev.ri updated the summary of D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.
Sat, Jun 19, 2:28 PM · Restricted Project
lebedev.ri planned changes to D104445: [SimplifyCFGPass] Tail-merging function-terminating blocks.

That being said, let's try this in smaller steps, D104598/D104597 being the first one, handling only the ret.

Sat, Jun 19, 2:28 PM · Restricted Project
lebedev.ri updated the diff for D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.

Split off mostly NFC refactor into a separate change.

Sat, Jun 19, 2:26 PM · Restricted Project
lebedev.ri requested review of D104598: [NFCI-ish][SimplifyCFGPass] Rework and generalize `ret` block tail-merging.
Sat, Jun 19, 2:17 PM · Restricted Project
lebedev.ri added inline comments to D94395: [X86] AMD Zen 3 Scheduler Model.
Sat, Jun 19, 12:07 PM · Restricted Project
lebedev.ri committed rG834aafa55bd1: [NFC] AMD Zen 3: fix typo in a comment (authored by lebedev.ri).
[NFC] AMD Zen 3: fix typo in a comment
Sat, Jun 19, 12:05 PM
lebedev.ri requested review of D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator.
Sat, Jun 19, 11:57 AM · Restricted Project
lebedev.ri accepted D104585: [NFC] Add getUnderlyingObjects test.

Thank you for adding the test.
I think you can freely commit this now.

Sat, Jun 19, 3:01 AM · Restricted Project
lebedev.ri added a reviewer for D86669: [ValueTracking] Remove MaxLookup from getUnderlyingObjects: fhahn.

Oh, so wait, we need this for correctness even?
That doesn't look good on the LAA's side.

Sat, Jun 19, 3:00 AM · Restricted Project

Fri, Jun 18

lebedev.ri added a comment to D104445: [SimplifyCFGPass] Tail-merging function-terminating blocks.

I'm asking because i would like to see this change happen, and i don't believe it to be a bad change in general,
but the comment so far seemed to be rather dismissive, and it looks like this might end up following in footsteps
of rG13ec913, where a single platform penalizes/dictates behavior for all other platforms..

Fri, Jun 18, 4:17 PM · Restricted Project
lebedev.ri accepted D104567: [InstCombine] Don't transform code if DoTransform is false.

LG
I think that function is misdesigned, but i can't suggest an easy good alternative.

Fri, Jun 18, 1:04 PM · Restricted Project
lebedev.ri added a comment to D103959: [LoopDeletion] Handle Phis with similar inputs from different block.

This seems fine to me.
I think there may be some room for undef/poison incoming value handling.

Fri, Jun 18, 12:10 PM · Restricted Project
lebedev.ri added a comment to D104500: [clang] Apply P1825 as Defect Report from C++11 up to C++20..

Patch is missing description

Fri, Jun 18, 11:02 AM · Restricted Project
lebedev.ri added a comment to D104445: [SimplifyCFGPass] Tail-merging function-terminating blocks.

Thank you for taking a look.
Thinking about it, this change should be split up into NFC refactor,
removal of "block must be empty" check,
and several patches to enable each terminator opcode.

Fri, Jun 18, 11:01 AM · Restricted Project
lebedev.ri added a comment to D104547: [langref] attempt to clarify semantics of inttoptr/ptrtoint for non-integral types.

Thank you.

Fri, Jun 18, 9:38 AM · Restricted Project
lebedev.ri added reviewers for D104445: [SimplifyCFGPass] Tail-merging function-terminating blocks: rnk, hans.

Oh, i forgot to CC the people who tried this last :D
@rnk @hans - ping. this is tracking towards the very same endgoal as your D29428, but in a more generic way.

Fri, Jun 18, 9:09 AM · Restricted Project
lebedev.ri added a comment to D104496: [GlobalDCE] Support of conditionally used global variables.

Tests missing

Fri, Jun 18, 5:08 AM · Restricted Project
lebedev.ri retitled D104496: [GlobalDCE] Support of conditionally used global variables from Support of conditionally used global variables to [GlobalDCE] Support of conditionally used global variables.
Fri, Jun 18, 5:08 AM · Restricted Project

Thu, Jun 17

lebedev.ri committed rG84eeb82888a0: [NFC][SimpleLoopUnswitch] unswitchTrivialBranch(): add debug output explaining… (authored by lebedev.ri).
[NFC][SimpleLoopUnswitch] unswitchTrivialBranch(): add debug output explaining…
Thu, Jun 17, 2:46 PM
lebedev.ri committed rG69caacc626f7: [X86] AMD Zen 3: don't confuse shift and shuffle, NFC (authored by lebedev.ri).
[X86] AMD Zen 3: don't confuse shift and shuffle, NFC
Thu, Jun 17, 11:08 AM
lebedev.ri committed rG37dfc467ac80: [NFC] LoopVectorizationCostModel::getMaximizedVFForTarget(): clarify debug msg (authored by lebedev.ri).
[NFC] LoopVectorizationCostModel::getMaximizedVFForTarget(): clarify debug msg
Thu, Jun 17, 11:08 AM
lebedev.ri added a comment to D104472: [ValueTracking] look through bitcast of vector in computeKnownBits.

Would it please be possible to either enhance comments, or port more comments from the SelectionDAG::computeKnownBits()?
It appears to match that original implementation, and seems correct, but it is hard to read/get through.

Thu, Jun 17, 10:26 AM · Restricted Project
lebedev.ri requested review of D104445: [SimplifyCFGPass] Tail-merging function-terminating blocks.
Thu, Jun 17, 3:07 AM · Restricted Project

Wed, Jun 16

lebedev.ri added a comment to D86669: [ValueTracking] Remove MaxLookup from getUnderlyingObjects.

I think this would benefit from adding the testcase[s] for the pass that uses this utility that showcase the improvements here.

Wed, Jun 16, 2:45 PM · Restricted Project
lebedev.ri added a comment to D104403: [SCEV] Avoid pointer subtraction of non-integral pointers [WIP].

This is only going to work if getMinusSCEV() is called directly though.

Wed, Jun 16, 11:08 AM · Restricted Project
lebedev.ri added a comment to D104322: [SCEV] PtrToInt on non-integral pointers is allowed.

As a drive-by note, it would be great if you could expand LangRef on non-integral pointers a bit. It made sense to me when it specified that you can't use ptrtoint on a non-integral pointer, but without that limitation, it's not really clear to me what the actual difference between a non-integral pointer and a normal one is. What transforms are you not allowed to perform on a non-integral pointer that you can perform on a normal one?

Yes, i would also like to see such documentation, especially if non-integral pointers
are going to be used as an "arbitrary" roadblock for SCEV changes. I would have posted
that in the review for the commit mentioned, but there was none, which also highlights
the problem around non-integral pointer status in llvm :)

On the documentation side, I'd love to, but I'm honestly not sure *how* to. There's two inter-related problems here. The first is the semantics of an inttoptr is highly dependent on the target for non-integral pointers. At the moment, it can basically only be used to implement non-inlined built-in routines in any practical way. The second issue is that our definition of the integral pointer types themselves appear to be in flux, and are very vague about certain key details. The result is I'm left unsure how to formally specify them. This is why I used the implementation defined wording I did.

On the SCEV side, I understand the frustration, but I think you're also mischaracterizing slightly. SCEV has long had the notion of subtracting two pointers which has been "questionable" the whole time as the semantics of subtracting two unrelated pointers is unclear from the underlying IE. (IR doesn't have subtract, but it does have icmp which is more or less the same.) Eli's recent changes - which are making progress btw, even if slow - are the first I've seen to really raise the question if subtract is a primitive which should be representable for pointers in SCEV. (I'll also add that the confusion around whether we could still have sizeless pointers - which I admittedly contributed to - has only recently been cleared up.)

In terms of forward progress, I am willing to accept crippling SCEV for NI pointers provided that all the changes are otherwise well structured and make sense. I'm not thrilled, and I will be a skeptical reviewer, but I won't block changes which are well justified.

Glad that we have established this.

Wed, Jun 16, 9:12 AM · Restricted Project
lebedev.ri added a comment to D104322: [SCEV] PtrToInt on non-integral pointers is allowed.

As a drive-by note, it would be great if you could expand LangRef on non-integral pointers a bit. It made sense to me when it specified that you can't use ptrtoint on a non-integral pointer, but without that limitation, it's not really clear to me what the actual difference between a non-integral pointer and a normal one is. What transforms are you not allowed to perform on a non-integral pointer that you can perform on a normal one?

Wed, Jun 16, 8:29 AM · Restricted Project
lebedev.ri added a comment to D104322: [SCEV] PtrToInt on non-integral pointers is allowed.

Roughly, we can either end up with SCEV effectively being inoperable for non-integral pointers,
or the users of non-integral pointers having issues with lowering the ptrtoint's produced by SCEV.
I don't know what is worse, and i'm presently not sure i care, but i do believe that we can not
leave the current SCEV casual-ness of treating pointers as integers as-is.
I actually had some of the patches @efriedma posted locally, and i agree with them.

Wed, Jun 16, 8:27 AM · Restricted Project
lebedev.ri requested changes to D104363: [llvm] Mark more internal command line optins as cl::Hidden.

https://github.com/llvm/llvm-project/blob/main/llvm/tools/llvm-mca/llvm-mca.cpp#L310

Wed, Jun 16, 4:56 AM · Restricted Project
lebedev.ri added a comment to D104363: [llvm] Mark more internal command line optins as cl::Hidden.

I don't believe this is correct.
This is either not a bug, r should be dealt with by adding grouping, and hiding non-tool cl::opts.

Wed, Jun 16, 1:36 AM · Restricted Project
lebedev.ri resigned from D100486: [COST]Improve cost model for shuffles in SLP..

No i didn't.
I think while this may be somewhat correct,
is not really correct. For example, before AVX,
there is no sub-32-bit shuffles, only unpacks.

Wed, Jun 16, 12:55 AM · Restricted Project
lebedev.ri added a comment to D104232: [WIP][DAGCombiner] createBuildVecShuffle(): more vector concatenation.

@RKSimon there are two changes here:

  1. InVT2Size * 2 == VTSize && InVT1Size == VTSize -> (VTSize % InVT2Size == 0) && InVT1Size == VTSize
  2. merging two blocks together.
Wed, Jun 16, 12:30 AM · Restricted Project
lebedev.ri committed rG308f6a5245a2: [NFC][X86] lowerVECTOR_SHUFFLE(): drop FIXME about widening to i128 (YMM half)… (authored by lebedev.ri).
[NFC][X86] lowerVECTOR_SHUFFLE(): drop FIXME about widening to i128 (YMM half)…
Wed, Jun 16, 12:25 AM
lebedev.ri committed rGa3113df21994: [SCEV] PtrToInt on non-integral pointers is allowed (authored by lebedev.ri).
[SCEV] PtrToInt on non-integral pointers is allowed
Wed, Jun 16, 12:25 AM
lebedev.ri closed D103818: [NFC][X86] lowerVECTOR_SHUFFLE(): drop FIXME about widening to i128 (YMM half) element type.
Wed, Jun 16, 12:25 AM · Restricted Project
lebedev.ri closed D104322: [SCEV] PtrToInt on non-integral pointers is allowed.
Wed, Jun 16, 12:25 AM · Restricted Project

Tue, Jun 15

lebedev.ri requested review of D104322: [SCEV] PtrToInt on non-integral pointers is allowed.
Tue, Jun 15, 2:29 PM · Restricted Project
lebedev.ri added a comment to D101074: [X86] Canonicalize SGT/UGT compares with constants to use SGE/UGE to reduce the number of EFLAGs reads. (PR48760).

Add SETLT/SETULT handling

Tue, Jun 15, 1:37 PM · Restricted Project
lebedev.ri updated the summary of D101074: [X86] Canonicalize SGT/UGT compares with constants to use SGE/UGE to reduce the number of EFLAGs reads. (PR48760).
Tue, Jun 15, 1:10 PM · Restricted Project
lebedev.ri added a comment to D95789: [SpeculateAroundPHIs] Avoid speculation on loop back edges.

The pass has now been reverted by rGe52364532afb2748c324f360bc1cc12605d314f3.
Abandon this?

Tue, Jun 15, 1:08 PM · Restricted Project
lebedev.ri added a comment to D37467: Add a new pass to speculate around PHI nodes with constant (integer) operands when profitable..

FYI this has now been reverted by rGe52364532afb2748c324f360bc1cc12605d314f3.

Tue, Jun 15, 1:08 PM · Restricted Project
lebedev.ri added a comment to D102107: [OpenMP] Codegen aggregate for outlined function captures.

(This is not offload-specific, right?)
This does not bring any compatibility issues, right?
Does this bring any compatibility issues?

Tue, Jun 15, 10:47 AM · Restricted Project, Restricted Project
lebedev.ri committed rGe52364532afb: [NewPM] Remove SpeculateAroundPHIs pass (authored by lebedev.ri).
[NewPM] Remove SpeculateAroundPHIs pass
Tue, Jun 15, 10:36 AM
lebedev.ri closed D104099: [NewPM] Remove SpeculateAroundPHIs pass.
Tue, Jun 15, 10:36 AM · Restricted Project, Restricted Project
lebedev.ri added a comment to D104099: [NewPM] Remove SpeculateAroundPHIs pass.

I see. Going to land this now. Thanks for looking!

Tue, Jun 15, 10:32 AM · Restricted Project, Restricted Project