Page MenuHomePhabricator

jmolloy (James Molloy)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 12 2012, 3:50 AM (365 w, 4 d)

Recent Activity

Today

jmolloy committed rGa088b95f8917: [CodeEmitter] Improve testing for APInt encoding (authored by jmolloy).
[CodeEmitter] Improve testing for APInt encoding
Sun, Sep 15, 1:50 AM
jmolloy committed rG60aadd19cbff: [CodeEmitter] Support instruction widths > 64 bits (authored by jmolloy).
[CodeEmitter] Support instruction widths > 64 bits
Sun, Sep 15, 1:36 AM
jmolloy edited reviewers for D67544: [TableGen] Support encoding and decoding per-HwMode, added: RKSimon, kparzysz; removed: chandlerc, jfb.

Adding Simon and Krzysztof as the original authors of InfoByHwMode.

Sun, Sep 15, 1:15 AM · Restricted Project

Fri, Sep 13

jmolloy added a comment to D67544: [TableGen] Support encoding and decoding per-HwMode.

Hi Roman,

Fri, Sep 13, 5:03 AM · Restricted Project
jmolloy added a comment to D67544: [TableGen] Support encoding and decoding per-HwMode.

Hi Roman,

Fri, Sep 13, 4:08 AM · Restricted Project
jmolloy created D67544: [TableGen] Support encoding and decoding per-HwMode.
Fri, Sep 13, 3:59 AM · Restricted Project

Thu, Sep 12

jmolloy added inline comments to D67167: [MachinePipeliner] Improve the TargetInstrInfo API analyzeLoop/reduceLoopCount.
Thu, Sep 12, 5:17 AM · Restricted Project
jmolloy updated the diff for D67167: [MachinePipeliner] Improve the TargetInstrInfo API analyzeLoop/reduceLoopCount.

Thanks for the great feedback Jinsong! I've addressed your comments.

Thu, Sep 12, 5:17 AM · Restricted Project
jmolloy created D67487: [CodeEmitter] Support instruction widths > 64 bits.
Thu, Sep 12, 3:25 AM · Restricted Project

Mon, Sep 9

jmolloy committed rGb6c7fce67add: [DFAPacketizer] Reapply: Track resources for packetized instructions (authored by jmolloy).
[DFAPacketizer] Reapply: Track resources for packetized instructions
Mon, Sep 9, 6:18 AM

Fri, Sep 6

jmolloy committed rGdb2fa0672210: [DFAPacketizer] Track resources for packetized instructions (authored by jmolloy).
[DFAPacketizer] Track resources for packetized instructions
Fri, Sep 6, 5:21 AM
jmolloy closed D66936: [DFAPacketizer] Track resources for packetized instructions.
Fri, Sep 6, 5:21 AM · Restricted Project

Thu, Sep 5

jmolloy added a comment to D66936: [DFAPacketizer] Track resources for packetized instructions.

Hi Thomas,

Thu, Sep 5, 2:32 AM · Restricted Project

Wed, Sep 4

jmolloy created D67167: [MachinePipeliner] Improve the TargetInstrInfo API analyzeLoop/reduceLoopCount.
Wed, Sep 4, 6:27 AM · Restricted Project
jmolloy committed rG11f0f7f583c9: [ModuloSchedule] Fix no-asserts build (authored by jmolloy).
[ModuloSchedule] Fix no-asserts build
Wed, Sep 4, 5:58 AM
jmolloy added a comment to D67081: [ModuloSchedule] Introduce PeelingModuloScheduleExpander.

No-asserts build fixed in rL370894. Apologies for the breakage, I was holding git wrong.

Wed, Sep 4, 5:57 AM · Restricted Project
jmolloy committed rGfef9f5905579: [ModuloSchedule] Introduce PeelingModuloScheduleExpander (authored by jmolloy).
[ModuloSchedule] Introduce PeelingModuloScheduleExpander
Wed, Sep 4, 5:54 AM
jmolloy added a comment to D67081: [ModuloSchedule] Introduce PeelingModuloScheduleExpander.

Done, thanks!

Wed, Sep 4, 5:52 AM · Restricted Project
jmolloy added a comment to D67121: [TargetLowering] Make allowsMemoryAccess methode virtual..

On the other hand, I don't really want to spend much time thinking about how to make SelectionDAG better at this point.

Wed, Sep 4, 1:53 AM · Restricted Project

Tue, Sep 3

jmolloy added a comment to D67121: [TargetLowering] Make allowsMemoryAccess methode virtual..

Your problem sounds more like we need a better system for checking if a store/trunc store is legal

Tue, Sep 3, 12:03 PM · Restricted Project
jmolloy added a comment to D67121: [TargetLowering] Make allowsMemoryAccess methode virtual..

(for more context, this is in the context of https://reviews.llvm.org/rL370576 . It's entirely possible I picked a suboptimal target hook, but allowsMemoryAccess seemed correct to me.).

Tue, Sep 3, 11:39 AM · Restricted Project
jmolloy added a comment to D67121: [TargetLowering] Make allowsMemoryAccess methode virtual..

Aren't the targets intended to override allowsMisalignedMemoryAccesses? Does that not work for your usage?

Tue, Sep 3, 11:33 AM · Restricted Project
jmolloy added inline comments to D67081: [ModuloSchedule] Introduce PeelingModuloScheduleExpander.
Tue, Sep 3, 3:04 AM · Restricted Project
jmolloy updated the diff for D67081: [ModuloSchedule] Introduce PeelingModuloScheduleExpander.

Thanks for the review Thomas!

Tue, Sep 3, 3:04 AM · Restricted Project
jmolloy committed rG935499579c2d: [MachinePipeliner] Add a way to unit-test the schedule emitter (authored by jmolloy).
[MachinePipeliner] Add a way to unit-test the schedule emitter
Tue, Sep 3, 1:22 AM
jmolloy closed D67011: [MachinePipeliner] Add a way to unit-test the schedule emitter.

Landed in rL370705. Thanks Thomas!

Tue, Sep 3, 1:19 AM · Restricted Project

Mon, Sep 2

jmolloy created D67081: [ModuloSchedule] Introduce PeelingModuloScheduleExpander.
Mon, Sep 2, 8:19 AM · Restricted Project
jmolloy abandoned D66368: [MachinePipeliner] Factor experimental codegen into a class.

Abandoning as this patch has been superseded.

Mon, Sep 2, 8:10 AM · Restricted Project
jmolloy abandoned D64665: [MachinePipeliner] Refactor schedule emission logic.

Abandoning this revision; a more incremental approach will be landing soon.

Mon, Sep 2, 8:10 AM · Restricted Project

Sat, Aug 31

jmolloy committed rGe62c509cd4c0: [DAGCombiner] Don't create illegal narrow stores (authored by jmolloy).
[DAGCombiner] Don't create illegal narrow stores
Sat, Aug 31, 3:46 AM

Fri, Aug 30

jmolloy committed rG6ccd67320631: [DFAPacketizer] Allow namespacing of automata per-itinerary (authored by jmolloy).
[DFAPacketizer] Allow namespacing of automata per-itinerary
Fri, Aug 30, 12:51 PM
jmolloy committed rG790a779f06b3: [MachinePipeliner] Separate schedule emission, NFC (authored by jmolloy).
[MachinePipeliner] Separate schedule emission, NFC
Fri, Aug 30, 11:52 AM
jmolloy created D67011: [MachinePipeliner] Add a way to unit-test the schedule emitter.
Fri, Aug 30, 10:34 AM · Restricted Project
jmolloy updated the diff for D67006: [MachinePipeliner] Separate schedule emission, NFC.

Remove commented out code, add CMakeLists.txt entry.

Fri, Aug 30, 7:42 AM · Restricted Project
jmolloy created D67006: [MachinePipeliner] Separate schedule emission, NFC.
Fri, Aug 30, 7:24 AM · Restricted Project

Thu, Aug 29

jmolloy accepted D66950: [SimplifyCFG] Skip sinking common lifetime markers of `alloca`..

Thanks! One nit.

Thu, Aug 29, 8:44 AM · Restricted Project, Restricted Project
jmolloy created D66940: [DFAPacketizer] Allow namespacing of automata per-itinerary.
Thu, Aug 29, 6:07 AM · Restricted Project
jmolloy accepted D66098: [CostModel] Model all `extractvalue`s as free..

I think I'm happy to stamp. I can't think of why this patch might be wrong, and it's easy to back out if someone finds a counterexample. LGTM.

Thu, Aug 29, 3:52 AM · Restricted Project
jmolloy created D66936: [DFAPacketizer] Track resources for packetized instructions.
Thu, Aug 29, 3:46 AM · Restricted Project

Wed, Aug 28

jmolloy added a comment to D66098: [CostModel] Model all `extractvalue`s as free..

I can't think of a counterexample for the other architectures I know about.

Wed, Aug 28, 6:11 AM · Restricted Project

Fri, Aug 16

jmolloy created D66368: [MachinePipeliner] Factor experimental codegen into a class.
Fri, Aug 16, 2:02 PM · Restricted Project
jmolloy accepted D66190: [CodeGen] Add a pass to do block predication on SSA machine IR.

Hi Thomas,

Fri, Aug 16, 9:58 AM · Restricted Project

Aug 15 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.
Aug 15 2019, 3:24 PM · Restricted Project
jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Thanks David!

Aug 15 2019, 10:43 AM · Restricted Project
jmolloy added inline comments to D66190: [CodeGen] Add a pass to do block predication on SSA machine IR.
Aug 15 2019, 9:30 AM · Restricted Project

Aug 14 2019

jmolloy added a reviewer for D64665: [MachinePipeliner] Refactor schedule emission logic: majnemer.
Aug 14 2019, 3:13 PM · Restricted Project

Aug 13 2019

jmolloy added a comment to D64665: [MachinePipeliner] Refactor schedule emission logic.

Brendon, I've got a bunch of changes that I'd like to push based on this change. it's the gating factor for allowing predicated emission and allowing targets to adapt how they emit a schedule. I also have a different version of SMS to upstream (will be upstream very shortly!) that I'd love to reuse this emission logic for.

Aug 13 2019, 4:10 PM · Restricted Project

Aug 12 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Really sorry about that Jinsong. If you want the embarrassing details I scp'd the patchfile from one machine to another and then uploaded the stale patch from a different directory :(

Aug 12 2019, 5:36 PM · Restricted Project

Aug 9 2019

jmolloy accepted D65992: [MachinePipeliner] Avoid indeterminate order in FuncUnitSorter.

LGTM. Note for other reviewers; the canonical way to avoid this in LLVM is to use a stable_sort. The reason we can't do this is because this functor is used as the comparison for a std::priority_queue (heap) rather than a plain sort.

Aug 9 2019, 1:21 AM · Restricted Project

Aug 6 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Thanks Jinsong!

Aug 6 2019, 3:06 AM · Restricted Project

Aug 2 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Thanks Jinsong,

Aug 2 2019, 1:28 AM · Restricted Project

Aug 1 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Hi Brendon and Jinsong,

Aug 1 2019, 6:43 AM · Restricted Project

Jul 30 2019

jmolloy added inline comments to D65424: [Packetizer] Increase the size of DFAInput bitfield to allow up to 32 units.
Jul 30 2019, 2:11 AM · Restricted Project
jmolloy accepted D65424: [Packetizer] Increase the size of DFAInput bitfield to allow up to 32 units.

LGTM. I had a look at changing this to use APInt instead, because that seems a little nicer, but this turns out to be nontrivial.

Jul 30 2019, 1:56 AM · Restricted Project

Jul 29 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

Hi Brendon,

Jul 29 2019, 7:36 AM · Restricted Project

Jul 12 2019

jmolloy updated the diff for D64665: [MachinePipeliner] Refactor schedule emission logic.

(excise some leftover debugging code).

Jul 12 2019, 1:52 PM · Restricted Project
jmolloy created D64665: [MachinePipeliner] Refactor schedule emission logic.
Jul 12 2019, 1:49 PM · Restricted Project

Jul 3 2019

jmolloy accepted D64141: [CodeGen] Add larger vector types for i32 and f32.

Not adding new predicates SGTM.

Jul 3 2019, 11:39 AM · Restricted Project
jmolloy added a comment to D64141: [CodeGen] Add larger vector types for i32 and f32.

Most of this looks mechanical; I don't think the MVT changes should be contentious. However, the "is65536BitVector()" predicates are starting to get a bit unwieldy to read.

Jul 3 2019, 11:26 AM · Restricted Project
jmolloy committed rGfa4aac7335ac: [SelectionDAG] Propagate alias metadata to target intrinsic nodes (authored by jmolloy).
[SelectionDAG] Propagate alias metadata to target intrinsic nodes
Jul 3 2019, 7:36 AM
jmolloy updated the diff for D64131: [SelectionDAG] Propagate alias metadata to target intrinsic nodes.

Hi Matt,

Jul 3 2019, 6:59 AM · Restricted Project
jmolloy created D64131: [SelectionDAG] Propagate alias metadata to target intrinsic nodes.
Jul 3 2019, 6:35 AM · Restricted Project
jmolloy accepted D30324: [ARM] Thumb2: favor R4-R7 over R12/LR in allocation order when opt for minsize.

LGTM, thanks for the change Oliver!

Jul 3 2019, 2:43 AM · Restricted Project
jmolloy added inline comments to D30324: [ARM] Thumb2: favor R4-R7 over R12/LR in allocation order when opt for minsize.
Jul 3 2019, 2:23 AM · Restricted Project

Jul 2 2019

jmolloy added inline comments to D30324: [ARM] Thumb2: favor R4-R7 over R12/LR in allocation order when opt for minsize.
Jul 2 2019, 6:37 AM · Restricted Project

Jul 1 2019

jmolloy accepted D63941: [Float2Int] Add support for unary FNeg to Float2Int.

LGTM with one simplification. Thanks!

Jul 1 2019, 2:37 AM · Restricted Project

May 22 2019

jmolloy added a comment to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..

Thanks for the context Hans.

May 22 2019, 1:56 AM · Restricted Project

May 20 2019

jmolloy accepted D61911: [GlobalOpt] Allow dead struct fields in SRA with non constant offset..

I think I've convinced myself that this is correct. LGTM.

May 20 2019, 7:18 AM · Restricted Project

May 19 2019

jmolloy added inline comments to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..
May 19 2019, 7:10 AM · Restricted Project

May 10 2019

jmolloy added inline comments to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..
May 10 2019, 5:52 AM · Restricted Project

May 9 2019

jmolloy requested changes to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..
May 9 2019, 6:14 AM · Restricted Project
jmolloy accepted D61728: [CodeGenPrepare] Limit recursion depth for collectBitParts.

Please clang-format. There should be a space between the + operator and its operands.

May 9 2019, 6:07 AM · Restricted Project

May 3 2019

jmolloy requested changes to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..

Looking much better. I think the TTI hook could be described better.

May 3 2019, 7:50 AM · Restricted Project

May 2 2019

jmolloy requested changes to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..

Undo approval; was looking at an incorrect diff.

May 2 2019, 1:12 AM · Restricted Project
jmolloy accepted D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..

This seems reasonable to me.

May 2 2019, 1:12 AM · Restricted Project

May 1 2019

jmolloy requested changes to D61160: [SimplifyCFG] Implement the suggested ctlz transform.
May 1 2019, 1:58 AM · Restricted Project
jmolloy accepted D61151: [SimpligyCFG] NFC, remove GCD that was only used for powers of two.

LGTM.

May 1 2019, 12:43 AM · Restricted Project

Apr 30 2019

jmolloy accepted D61159: [SimplifyCFG] Run ReduceSwitchRange unconditionally, generalize.

LGTM, thanks for making the changes!

Apr 30 2019, 8:48 AM · Restricted Project
jmolloy requested changes to D61158: [SimplifyCFG] use fshr instead of shl/lshr/or.

I don't agree; if you're going to add this canonicalization, please do it in InstCombine first.

Apr 30 2019, 5:33 AM · Restricted Project
jmolloy requested changes to D61160: [SimplifyCFG] Implement the suggested ctlz transform.
Apr 30 2019, 5:33 AM · Restricted Project
jmolloy requested changes to D61159: [SimplifyCFG] Run ReduceSwitchRange unconditionally, generalize.
Apr 30 2019, 5:33 AM · Restricted Project
jmolloy requested changes to D61151: [SimpligyCFG] NFC, remove GCD that was only used for powers of two.
Apr 30 2019, 4:32 AM · Restricted Project

Apr 29 2019

jmolloy accepted D61237: [SimplifyCFG] ReduceSwitchRange: Improve on the case where the SubThreshold doesn't trigger.

LGTM with a couple of nits. Thanks!

Apr 29 2019, 1:22 AM · Restricted Project
jmolloy added a comment to D61159: [SimplifyCFG] Run ReduceSwitchRange unconditionally, generalize.

Thanks for the changes, just two comments!

Apr 29 2019, 1:10 AM · Restricted Project
jmolloy added inline comments to D61158: [SimplifyCFG] use fshr instead of shl/lshr/or.
Apr 29 2019, 1:07 AM · Restricted Project
jmolloy added inline comments to D61151: [SimpligyCFG] NFC, remove GCD that was only used for powers of two.
Apr 29 2019, 1:07 AM · Restricted Project

Apr 26 2019

jmolloy added inline comments to D61160: [SimplifyCFG] Implement the suggested ctlz transform.
Apr 26 2019, 6:10 AM · Restricted Project
jmolloy requested changes to D61160: [SimplifyCFG] Implement the suggested ctlz transform.

Thanks for implementing this! It's really cool.

Apr 26 2019, 1:44 AM · Restricted Project
jmolloy requested changes to D61158: [SimplifyCFG] use fshr instead of shl/lshr/or.
Apr 26 2019, 1:15 AM · Restricted Project
jmolloy added a comment to D61158: [SimplifyCFG] use fshr instead of shl/lshr/or.

Yes, I also have the same concerns as Roman. If we don't canonicalize to fshr in instcombine, then we shouldn't canonicalize to fshr in simplifycfg. They're both canonicalization passes.

Apr 26 2019, 1:15 AM · Restricted Project
jmolloy requested changes to D61159: [SimplifyCFG] Run ReduceSwitchRange unconditionally, generalize.

Thanks! Much easier to review this time.

Apr 26 2019, 1:08 AM · Restricted Project
jmolloy requested changes to D61151: [SimpligyCFG] NFC, remove GCD that was only used for powers of two.

Thanks for splitting these up! They're really much easier to read.

Apr 26 2019, 12:46 AM · Restricted Project
jmolloy accepted D61150: [SimplifyCFG] NFC, update Switch tests to HEAD so I can see if my changes change anything.

LGTM.

Apr 26 2019, 12:39 AM · Restricted Project

Apr 25 2019

jmolloy added inline comments to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..
Apr 25 2019, 12:06 PM · Restricted Project
jmolloy requested changes to D60982: [SimplifyCFG] Use lookup tables when they are more space efficient or a huge speed win..

Please reupload with full context as described in the developer's guide.

Apr 25 2019, 9:00 AM · Restricted Project
jmolloy resigned from D61132: [builtins] run-time support for sparse maps in llvm.

I am not the right person to review this change. I have never made changes in this directory and don't know enough about potential impact to LGTM.

Apr 25 2019, 8:44 AM · Restricted Project, Restricted Project
jmolloy requested changes to D60673: [SimplifyCFG] Improove and speed up ReduceSwitchRange.

Hi Shawn,

Apr 25 2019, 8:38 AM · Restricted Project

Apr 23 2019

jmolloy created D61019: [AggressiveAntiDepBreaker] Handle predicate operands better.
Apr 23 2019, 7:50 AM · Restricted Project
jmolloy accepted D60090: [ARM] Update check for CBZ in Ifcvt.

Seems reasonable to me.

Apr 23 2019, 3:51 AM · Restricted Project

Apr 19 2019

jmolloy committed rG9ad4cb3de47e: [PATCH] [MachineScheduler] Check pending instructions when an instruction is… (authored by jmolloy).
[PATCH] [MachineScheduler] Check pending instructions when an instruction is…
Apr 19 2019, 2:00 AM