Page MenuHomePhabricator

qcolombet (Quentin Colombet)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 17 2012, 10:03 AM (331 w, 2 d)

Recent Activity

Mon, Apr 22

qcolombet added a parent revision for D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor: D60970: [BlockExtractor] Change the basic block separator from ',' to ';'.
Mon, Apr 22, 11:01 AM · Restricted Project
qcolombet added a child revision for D60970: [BlockExtractor] Change the basic block separator from ',' to ';': D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor.
Mon, Apr 22, 11:01 AM · Restricted Project
qcolombet added a parent revision for D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor: D60971: [BlockExtractor] Expose a constructor for the group extraction.
Mon, Apr 22, 10:57 AM · Restricted Project
qcolombet added a child revision for D60971: [BlockExtractor] Expose a constructor for the group extraction: D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor.
Mon, Apr 22, 10:57 AM · Restricted Project
qcolombet created D60973: [llvm-extract] Expose the group extraction feature of the BlockExtractor.
Mon, Apr 22, 10:57 AM · Restricted Project
qcolombet created D60971: [BlockExtractor] Expose a constructor for the group extraction.
Mon, Apr 22, 10:57 AM · Restricted Project
qcolombet created D60970: [BlockExtractor] Change the basic block separator from ',' to ';'.
Mon, Apr 22, 10:57 AM · Restricted Project

Thu, Apr 18

qcolombet committed rGea3364bf85ef: [BlockExtractor] Extend the file format to support the grouping of basic blocks (authored by qcolombet).
[BlockExtractor] Extend the file format to support the grouping of basic blocks
Thu, Apr 18, 11:27 AM
qcolombet committed rL358701: [BlockExtractor] Extend the file format to support the grouping of basic blocks.
[BlockExtractor] Extend the file format to support the grouping of basic blocks
Thu, Apr 18, 11:27 AM
qcolombet closed D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.
Thu, Apr 18, 11:26 AM · Restricted Project
qcolombet added a comment to D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.

Could you please update the summary before pushing this?

Thu, Apr 18, 10:33 AM · Restricted Project
qcolombet updated the summary of D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.
Thu, Apr 18, 10:33 AM · Restricted Project

Tue, Apr 16

qcolombet updated the diff for D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.

Update:

  • Use comma separated list instead of group naming.
Tue, Apr 16, 12:23 PM · Restricted Project
qcolombet added a comment to D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.

Hi Volkan,

Tue, Apr 16, 11:24 AM · Restricted Project

Mon, Apr 15

qcolombet committed rG474a9679bdf3: [CodeExtractor] Add a few debug lines to understand why a region is not… (authored by qcolombet).
[CodeExtractor] Add a few debug lines to understand why a region is not…
Mon, Apr 15, 7:13 PM
qcolombet committed rL358471: [CodeExtractor] Add a few debug lines to understand why a region is not….
[CodeExtractor] Add a few debug lines to understand why a region is not…
Mon, Apr 15, 7:12 PM
qcolombet created D60746: [BlockExtractor] Extend the file format to support the grouping of basic blocks.
Mon, Apr 15, 7:06 PM · Restricted Project
qcolombet committed rGfda042688860: [LSR] Rewrite misses some fixup locations if it splits critical edge (authored by qcolombet).
[LSR] Rewrite misses some fixup locations if it splits critical edge
Mon, Apr 15, 3:28 PM
qcolombet committed rL358457: [LSR] Rewrite misses some fixup locations if it splits critical edge.
[LSR] Rewrite misses some fixup locations if it splits critical edge
Mon, Apr 15, 3:28 PM
qcolombet closed D60645: [LSR] PR41445: Rewrite misses some fixup locations if it splits critical edge..
Mon, Apr 15, 3:28 PM · Restricted Project
qcolombet accepted D60645: [LSR] PR41445: Rewrite misses some fixup locations if it splits critical edge..

Looks good!

Mon, Apr 15, 2:23 PM · Restricted Project
qcolombet added a comment to D60645: [LSR] PR41445: Rewrite misses some fixup locations if it splits critical edge..

The source change looks good to me, but I would like a bit more work on the test itself.

Mon, Apr 15, 8:26 AM · Restricted Project

Thu, Apr 4

qcolombet added a comment to D59626: [AMDGPU] Add MachineDCE pass after RenameIndependentSubregs.

Looks reasonable to me.

Thu, Apr 4, 2:21 PM · Restricted Project
qcolombet added inline comments to D59626: [AMDGPU] Add MachineDCE pass after RenameIndependentSubregs.
Thu, Apr 4, 10:57 AM · Restricted Project

Wed, Apr 3

qcolombet added a comment to D59626: [AMDGPU] Add MachineDCE pass after RenameIndependentSubregs.

Are the dead instructions marked during the detect dead lanes pass or during the rename independent SubReg pass?

Wed, Apr 3, 5:59 PM · Restricted Project
qcolombet added a comment to D58923: [SystemZ] Utilize Compare/Add/Sub "High" instructions.

The generic changes look sensible to me.
I would just suggest to add a comment on what VRM is for on the modified methods.

Wed, Apr 3, 11:20 AM

Wed, Mar 27

qcolombet committed rG89daf49e5c56: [PeepholeOpt] Don't stop simplifying copies on sequence of subregs (authored by qcolombet).
[PeepholeOpt] Don't stop simplifying copies on sequence of subregs
Wed, Mar 27, 10:30 AM
qcolombet committed rL357095: [PeepholeOpt] Don't stop simplifying copies on sequence of subregs.
[PeepholeOpt] Don't stop simplifying copies on sequence of subregs
Wed, Mar 27, 10:26 AM
qcolombet closed D59891: [PeepholeOpt] Don't stop simplifying copies on sequence of subregs.
Wed, Mar 27, 10:26 AM · Restricted Project
qcolombet accepted D59892: [GlobalISel] Fix legalizer artifact combiner from crashing with invalid dead instructions.
Wed, Mar 27, 10:25 AM · Restricted Project
qcolombet created D59891: [PeepholeOpt] Don't stop simplifying copies on sequence of subregs.
Wed, Mar 27, 10:15 AM · Restricted Project
qcolombet accepted D59144: RegPressure: Fix crash on blocks with only dbg_value.
Wed, Mar 27, 10:10 AM

Tue, Mar 26

qcolombet committed rGc74271c53764: [LiveRange] Reset the VNIs when splitting subranges (authored by qcolombet).
[LiveRange] Reset the VNIs when splitting subranges
Tue, Mar 26, 2:27 PM
qcolombet committed rL357032: [LiveRange] Reset the VNIs when splitting subranges.
[LiveRange] Reset the VNIs when splitting subranges
Tue, Mar 26, 2:26 PM
qcolombet closed D59731: [LiveRange] Reset the VNIs when splitting subranges.
Tue, Mar 26, 2:26 PM · Restricted Project

Mar 25 2019

qcolombet updated the diff for D59731: [LiveRange] Reset the VNIs when splitting subranges.

Fix seg fault with PHIs

Mar 25 2019, 10:54 AM · Restricted Project

Mar 22 2019

qcolombet created D59731: [LiveRange] Reset the VNIs when splitting subranges.
Mar 22 2019, 6:11 PM · Restricted Project

Mar 21 2019

qcolombet accepted D58758: GlobalISel: Fix RegBankSelect for REG_SEQUENCE.
Mar 21 2019, 11:19 AM

Mar 14 2019

qcolombet added a comment to D58758: GlobalISel: Fix RegBankSelect for REG_SEQUENCE.

All of this logic for reg_sequence and phi is totally broken for AMDGPU, so I might just end up ripping all of this out eventually.

Mar 14 2019, 4:24 PM
qcolombet added a comment to D59339: [GISel][Legalizer][WIP][RFC] Retry legalization for failing instrs when artifacts are around.

Hi Petr,

Mar 14 2019, 10:27 AM · Restricted Project

Mar 13 2019

qcolombet committed rGe77e5f44b871: [GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs (authored by qcolombet).
[GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs
Mar 13 2019, 6:39 PM
qcolombet committed rL356116: [GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs.
[GlobalISel][Utils] Add a getConstantVRegVal variant that looks through instrs
Mar 13 2019, 6:39 PM
qcolombet closed D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Landed in r356116.

Mar 13 2019, 6:39 PM · Restricted Project
qcolombet accepted D59271: MIR: Allow targets to serialize MachineFunctionInfo.

Hi Matt,

Mar 13 2019, 4:32 PM
qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Prototyped a retry legalization process in D59339.
The problem is that this patch is still needed to access the constant, because the legalization artifacts combiner inserts copies instead of updating the users.

Mar 13 2019, 4:24 PM · Restricted Project
qcolombet created D59339: [GISel][Legalizer][WIP][RFC] Retry legalization for failing instrs when artifacts are around.
Mar 13 2019, 4:20 PM · Restricted Project
qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

For operands that truly need to be constants that shouldn't be legalized, I don't think G_CONSTANT should be used. This is part of the motivation behind D58232 https://reviews.llvm.org/D58232. In SelectionDAG there is the TargetConstant vs. Constant distinction, but I think that makes less sense here, so weird constants should just never be materialized.

Mar 13 2019, 10:43 AM · Restricted Project
qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Disclaimer: this is just my opinion and in particular I haven't talked with anybody about constants being place holders. So just see my comment as what they are: an individual throwing ideas :).

Mar 13 2019, 10:40 AM · Restricted Project
qcolombet updated the diff for D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Update a mips test that I forgot.

Mar 13 2019, 10:04 AM · Restricted Project
qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Why wouldn't G_CONSTANT be legalized? This doesn't make any sense to me

Mar 13 2019, 9:55 AM · Restricted Project

Mar 12 2019

qcolombet updated the diff for D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.
  • Introduce a different variant of getConstantVRegVal instead of overriding the existing one (after talking to @aditya_nandakumar we decided we may want to have more control on what happens when we call this function).
  • Add a few comments.
Mar 12 2019, 4:47 PM · Restricted Project
qcolombet added a comment to D58725: GlobalISel: Use multiple returns for intrinsic structs.

Looks reasonable to me but I'd like @volkan and @aditya_nandakumar to see how it impacts us.

Mar 12 2019, 11:03 AM

Mar 11 2019

qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

I'm going to hold on that one for a little longer.
I wonder how SDAG handle constant during legalization, because I was not expecting that we would not issue the constant for the new type period.
I suspect it works because constants are just not materialized via instructions and maybe we should just ignore them during legalization. (If a constant is illegal, at the end of the legalization process, it should have any users, right?)

Mar 11 2019, 2:49 PM · Restricted Project
qcolombet added a comment to D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.

Hi Matt,

Mar 11 2019, 12:51 PM · Restricted Project
qcolombet created D59227: [GlobalISel][Utils] Teach getConstantVRegVal how to look through trunc and z|sext.
Mar 11 2019, 12:15 PM · Restricted Project
qcolombet accepted D59201: [RegAllocHints] Avoid compile time regression.

LGTM.

Mar 11 2019, 11:37 AM

Mar 8 2019

qcolombet accepted D59143: [RegisterCoalescer] Limit the number of joins for large live interval with many valnos. .

Looks reasonable to me.

Mar 8 2019, 10:40 AM · Restricted Project

Feb 28 2019

qcolombet added a comment to D58758: GlobalISel: Fix RegBankSelect for REG_SEQUENCE.

Nice catch!

Feb 28 2019, 10:55 AM

Feb 25 2019

qcolombet added inline comments to D55287: VirtRegMap: Support partially allocated virtual registers.
Feb 25 2019, 9:43 AM
qcolombet added a comment to D55287: VirtRegMap: Support partially allocated virtual registers.

The LiveIntervals for the relevant regunits needs to be removed.

Feb 25 2019, 8:54 AM
qcolombet accepted D58515: GlobalISel: Make legalizer/regbankselect clear NoPHIs property.

We should really just compute this property at some point (same for novregs), but that's for another day :).
LGTM.

Feb 25 2019, 8:44 AM
qcolombet added inline comments to D56151: [DebugInfo] PR40010: Avoid register coalesing altering DBG_VALUE valuations.
Feb 25 2019, 8:41 AM
qcolombet added inline comments to D55333: VirtRegMap: Preserve LiveDebugVariables.
Feb 25 2019, 8:38 AM
qcolombet accepted D55284: RegisterScavenger: Allow fail without spill.

LGTM. Nitpick below.

Feb 25 2019, 8:34 AM

Feb 22 2019

qcolombet accepted D55283: CodeGen: Refactor regallocator command line and target selection.

LGTM, one last nitpick below.

Feb 22 2019, 11:58 AM
qcolombet added inline comments to D55283: CodeGen: Refactor regallocator command line and target selection.
Feb 22 2019, 9:04 AM

Feb 19 2019

qcolombet added inline comments to D58402: RegBankSelect: Allow targets to introduce control flow for mapping.
Feb 19 2019, 4:33 PM
qcolombet accepted D58402: RegBankSelect: Allow targets to introduce control flow for mapping.

Nice catch!

Feb 19 2019, 3:25 PM
qcolombet accepted D58376: [RegAllocGreedy] Take last chance recoloring into account in split and assign.
Feb 19 2019, 8:32 AM · Restricted Project

Feb 18 2019

qcolombet accepted D55282: CodeGen: Make RegAllocRegistry a template class.
Feb 18 2019, 10:42 AM

Feb 14 2019

qcolombet added a comment to D58252: RegBankSelect: Handle slightly more complex value mappings.

The generic part looks sensible to me.

Feb 14 2019, 2:37 PM
qcolombet added inline comments to D58242: Teach instcombine about remaining idemptotent atomicrmw types.
Feb 14 2019, 10:46 AM · Restricted Project
qcolombet added inline comments to D58242: Teach instcombine about remaining idemptotent atomicrmw types.
Feb 14 2019, 10:29 AM · Restricted Project
qcolombet accepted D55295: LiveIntervals: Add removePhysReg.
Feb 14 2019, 9:56 AM
qcolombet accepted D58242: Teach instcombine about remaining idemptotent atomicrmw types.
Feb 14 2019, 9:53 AM · Restricted Project
qcolombet added a comment to D58242: Teach instcombine about remaining idemptotent atomicrmw types.

LGTM, one nitpick below.

Feb 14 2019, 9:53 AM · Restricted Project

Feb 13 2019

qcolombet closed D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..
Feb 13 2019, 3:56 PM · Restricted Project
qcolombet added inline comments to D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..
Feb 13 2019, 2:27 PM · Restricted Project
qcolombet accepted D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..

Hi Mark,

Feb 13 2019, 1:53 PM · Restricted Project
qcolombet requested changes to D55295: LiveIntervals: Add removePhysReg.
Feb 13 2019, 1:28 PM
qcolombet added a comment to D58200: [RegAllocGreedy] Take last chance recoloring into account in evicting..

Hi Mark,

Feb 13 2019, 1:25 PM · Restricted Project
qcolombet added inline comments to D55295: LiveIntervals: Add removePhysReg.
Feb 13 2019, 10:51 AM
qcolombet accepted D55295: LiveIntervals: Add removePhysReg.

LGTM with nitpick.

Feb 13 2019, 10:26 AM

Feb 12 2019

qcolombet added a comment to D55301: RegAlloc: Allow targets to split register allocation.

Hi Matt,

Feb 12 2019, 10:05 AM
qcolombet added inline comments to D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
Feb 12 2019, 9:53 AM · Restricted Project

Feb 7 2019

Herald added a project to D51664: [IR] Lazily number instructions for local dominance queries: Restricted Project.

Hi Reid,

Feb 7 2019, 4:15 PM · Restricted Project
qcolombet committed rG96f54de8ff5d: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible (authored by qcolombet).
[InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible
Feb 7 2019, 1:28 PM
qcolombet committed rL353471: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
[InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible
Feb 7 2019, 1:27 PM
qcolombet closed D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
Feb 7 2019, 1:27 PM · Restricted Project
qcolombet added inline comments to D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
Feb 7 2019, 10:01 AM · Restricted Project

Feb 6 2019

qcolombet added a comment to D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.

Thanks for the link @jfb.

Feb 6 2019, 4:33 PM · Restricted Project
qcolombet updated the diff for D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.

Update:

  • Switch to listing valid ordering instead of invalid ones
  • Don't apply the transformation on volatile atomicrmw
Feb 6 2019, 4:32 PM · Restricted Project
qcolombet added inline comments to D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
Feb 6 2019, 4:20 PM · Restricted Project
qcolombet created D57854: [InstCombine] Optimize `atomicrmw <op>, 0` into `load atomic` when possible.
Feb 6 2019, 3:07 PM · Restricted Project

Feb 5 2019

qcolombet added a comment to D57243: GlobalISel: Allow bitcount ops to have different result type.

Though it's worth pointing out that none of those currently build a description of what it wants to do like the legalizer currently does, they just make the change straightaway when the rules match. Removing in LegalizationAction in favour of just making the change brings the legalizer closer to the others.

Feb 5 2019, 11:04 AM
qcolombet added a comment to D57243: GlobalISel: Allow bitcount ops to have different result type.

The legalizer is already done the way I'm talking about on the rule matching side and performance was marginally better on average than the old setAction() interface.

Feb 5 2019, 10:21 AM
qcolombet added a comment to D57243: GlobalISel: Allow bitcount ops to have different result type.

Should we revert this change to have the conversation going or am I the only one unhappy with the absence of guarantees for the other operands?

Feb 5 2019, 9:57 AM
qcolombet added a comment to D57243: GlobalISel: Allow bitcount ops to have different result type.
Personally, I'd like to replace the LegalizationAction with a function pointer that just performs the desired change and have a standard library of actions that can be called for the common changes.
Feb 5 2019, 9:55 AM
qcolombet added inline comments to D57243: GlobalISel: Allow bitcount ops to have different result type.
Feb 5 2019, 9:53 AM

Jan 24 2019

qcolombet accepted D55988: WIP: RegBankSelect: Support some more complex part mappings.

Thanks for your patience Matt!

Jan 24 2019, 1:54 PM