Page MenuHomePhabricator

qcolombet (Quentin Colombet)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 17 2012, 10:03 AM (357 w, 9 h)

Recent Activity

Today

qcolombet created D69288: [GISel][ArtifactCombiner] Relax the constraint to combine unmerge with concat_vectors.
Mon, Oct 21, 5:29 PM · Restricted Project
qcolombet added a comment to D69149: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.

Thanks for the quick review @arsenm!

Mon, Oct 21, 2:04 PM · Restricted Project
qcolombet committed rG6f0ae81512c1: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors (authored by qcolombet).
[GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors
Mon, Oct 21, 1:46 PM
qcolombet closed D69149: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.
Mon, Oct 21, 1:46 PM · Restricted Project
qcolombet committed rL375452: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.
[GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors
Mon, Oct 21, 1:46 PM

Fri, Oct 18

qcolombet accepted D68149: LiveIntervals: Fix handleMoveUp with subreg def moving across a def.

LGTM.

Fri, Oct 18, 2:41 PM
qcolombet committed rG9f9151d49410: [GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method (authored by qcolombet).
[GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method
Fri, Oct 18, 1:17 PM
qcolombet committed rL375277: [GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method.
[GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method
Fri, Oct 18, 1:17 PM
qcolombet closed D69187: [GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method.
Fri, Oct 18, 1:17 PM · Restricted Project
qcolombet created D69187: [GISel][CallLowering] Make isIncomingArgumentHandler a pure virtual method.
Fri, Oct 18, 11:25 AM · Restricted Project

Thu, Oct 17

qcolombet updated the diff for D69149: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.
  • Replace some unsigned into Register
Thu, Oct 17, 4:40 PM · Restricted Project
qcolombet added inline comments to D69149: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.
Thu, Oct 17, 4:40 PM · Restricted Project
qcolombet abandoned D59339: [GISel][Legalizer][WIP][RFC] Retry legalization for failing instrs when artifacts are around.

This was just a patch to illustrate a possible direction.

Thu, Oct 17, 4:31 PM · Restricted Project
qcolombet created D69149: [GISel][CombinerHelper] Add a combine turning shuffle_vector into concat_vectors.
Thu, Oct 17, 4:12 PM · Restricted Project

Wed, Oct 16

qcolombet committed rGc319afc903d8: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) =>… (authored by qcolombet).
[GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) =>…
Wed, Oct 16, 5:39 PM
qcolombet closed D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
Wed, Oct 16, 5:38 PM · Restricted Project
qcolombet committed rL375066: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) =>….
[GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) =>…
Wed, Oct 16, 5:38 PM
qcolombet updated the diff for D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
  • Remove asserts already covered by the verifier
  • Put .getType calls into a variable.
Wed, Oct 16, 4:48 PM · Restricted Project
qcolombet updated the diff for D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
  • Replace check with an assertion
  • Update comments with pre-conditions
Wed, Oct 16, 3:36 PM · Restricted Project
qcolombet added inline comments to D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
Wed, Oct 16, 3:36 PM · Restricted Project
qcolombet updated the diff for D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
  • Use ArrayRef instead of const SmallVectorImpl&
  • Add tests with pointer types.
Wed, Oct 16, 2:57 PM · Restricted Project
qcolombet added inline comments to D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
Wed, Oct 16, 2:47 PM · Restricted Project
qcolombet created D69071: [GISel][CombinerHelper] Add concat_vectors(build_vector, build_vector) => build_vector.
Wed, Oct 16, 2:29 PM · Restricted Project

Fri, Oct 11

qcolombet committed rG49036dd3aef9: [GISel][UnitTest] Fix a bunch of tests that were not doing anything (authored by qcolombet).
[GISel][UnitTest] Fix a bunch of tests that were not doing anything
Fri, Oct 11, 2:04 PM
qcolombet committed rL374595: [GISel][UnitTest] Fix a bunch of tests that were not doing anything.
[GISel][UnitTest] Fix a bunch of tests that were not doing anything
Fri, Oct 11, 2:04 PM
qcolombet committed rG9c36ec594173: [GISel][CallLowering] Enable vector support in argument lowering (authored by qcolombet).
[GISel][CallLowering] Enable vector support in argument lowering
Fri, Oct 11, 1:25 PM
qcolombet committed rG7720f1149867: [MachineIRBuilder] Fix an assertion failure with buildMerge (authored by qcolombet).
[MachineIRBuilder] Fix an assertion failure with buildMerge
Fri, Oct 11, 1:24 PM
qcolombet committed rL374589: [GISel][CallLowering] Enable vector support in argument lowering.
[GISel][CallLowering] Enable vector support in argument lowering
Fri, Oct 11, 1:24 PM
qcolombet committed rL374588: [MachineIRBuilder] Fix an assertion failure with buildMerge.
[MachineIRBuilder] Fix an assertion failure with buildMerge
Fri, Oct 11, 1:24 PM

Mon, Oct 7

qcolombet accepted D68582: GlobalISel: Add target pre-isel instructions.
Mon, Oct 7, 10:30 AM

Sep 19 2019

qcolombet accepted D67684: MachineScheduler: Fix missing dependency with multiple subreg defs.

LGTM

Sep 19 2019, 4:22 PM

Sep 17 2019

qcolombet accepted D67464: MachineScheduler: Fix assert from not checking subregs.

Hi Matt,

Sep 17 2019, 11:02 AM

Sep 12 2019

qcolombet accepted D67505: LiveIntervals: Remove assertion.

LGTM

Sep 12 2019, 10:26 AM

Sep 11 2019

qcolombet accepted D67448: LiveIntervals: Split live intervals on multiple dead defs.

LGTM

Sep 11 2019, 9:26 AM

Sep 6 2019

qcolombet added a comment to D67303: [AArch64][GlobalISel] Enable the localizer for optimized builds.

The swifterror test change in this patch is one example. Live ranges over function calls can be problematic if under register pressure, which can cause additional moves, if not spills. There are others of course

Sep 6 2019, 3:37 PM · Restricted Project
qcolombet accepted D67303: [AArch64][GlobalISel] Enable the localizer for optimized builds.

Hi Amara,

Sep 6 2019, 2:51 PM · Restricted Project
qcolombet requested changes to D67257: New statepoint spilling mechanism.

I don't think this patch is correct in the sense that having statepoints depend on GreedyRegAlloc is a non-starter.
Indeed, that means that now any configuration that doesn't use greedy reg alloc (like fast or basic reg alloc) will generate incorrect code with respect to state point spilling.

Sep 6 2019, 11:19 AM · Restricted Project

Sep 4 2019

qcolombet accepted D54368: RegAllocFast: Record internal state based on register units.

Suggestion of a small refactoring below.

Sep 4 2019, 12:31 PM · Restricted Project
qcolombet added inline comments to D67133: [GlobalISel]: Fix some non determinism exposed in CSE due to not notifying observers about mutations + add verification for CSE.
Sep 4 2019, 11:59 AM · Restricted Project
qcolombet committed rL370944: Add myself.
Add myself
Sep 4 2019, 10:58 AM

Aug 20 2019

qcolombet accepted D66438: [llvm-extract] Update the help message for group extraction feature.
Aug 20 2019, 12:45 PM · Restricted Project

Aug 19 2019

qcolombet added a comment to D66438: [llvm-extract] Update the help message for group extraction feature.

Hi Jinsong,

Aug 19 2019, 3:47 PM · Restricted Project
qcolombet accepted D66444: [BlockExtractor] Avoid assert with wrong line format.
Aug 19 2019, 3:47 PM · Restricted Project

Aug 16 2019

qcolombet accepted D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.
Aug 16 2019, 4:22 PM · Restricted Project
qcolombet added inline comments to D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.
Aug 16 2019, 4:22 PM · Restricted Project
qcolombet added inline comments to D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.
Aug 16 2019, 12:25 PM · Restricted Project
qcolombet added inline comments to D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.
Aug 16 2019, 10:49 AM · Restricted Project
qcolombet added inline comments to D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.
Aug 16 2019, 10:49 AM · Restricted Project

Aug 13 2019

qcolombet added a comment to D65542: [PeepholeOptimizer] Don't assume bitcast def always has input.

LGTM with a test case.

Aug 13 2019, 10:00 AM · Restricted Project
qcolombet added a comment to D63731: [AMDGPU] Prevent VGPR copies from moving across the EXEC mask definitions.

LGTM for the generic part.

Aug 13 2019, 9:58 AM · Restricted Project

Aug 1 2019

qcolombet added inline comments to D63731: [AMDGPU] Prevent VGPR copies from moving across the EXEC mask definitions.
Aug 1 2019, 7:02 AM · Restricted Project
qcolombet accepted D65466: CodeGen: Allow virtual registers in bundles.
Aug 1 2019, 2:05 AM

Jul 19 2019

qcolombet accepted D64503: LiveIntervals: Fix handleMove asserting on BUNDLE.
Jul 19 2019, 12:05 PM

Jul 8 2019

qcolombet accepted D64325: RegUsageInfoCollector: Don't iterate all regs for every reg class.
Jul 8 2019, 11:05 AM
qcolombet added a comment to D64325: RegUsageInfoCollector: Don't iterate all regs for every reg class.

It was added by D46315

Jul 8 2019, 11:05 AM
qcolombet added a comment to D64325: RegUsageInfoCollector: Don't iterate all regs for every reg class.

Remove loop entirely. Ultimately determineCalleeSaves adds everything from MCRegAliasIterator anyway

Jul 8 2019, 10:48 AM
qcolombet added inline comments to D64354: [AArch64][GlobalISel] Optimize conditional branches followed by unconditional branches.
Jul 8 2019, 9:59 AM · Restricted Project
qcolombet added inline comments to D64325: RegUsageInfoCollector: Don't iterate all regs for every reg class.
Jul 8 2019, 8:22 AM

Jul 5 2019

qcolombet committed rG0ffe0db6fab4: [RegisterCoalescer] Fix an overzealous assert (authored by qcolombet).
[RegisterCoalescer] Fix an overzealous assert
Jul 5 2019, 5:36 PM
qcolombet committed rL365256: [RegisterCoalescer] Fix an overzealous assert.
[RegisterCoalescer] Fix an overzealous assert
Jul 5 2019, 5:34 PM
qcolombet accepted D64266: RegUsageInfoCollector: Skip AMDGPU entry point functions.

Let's go with that for now with one caveat. Does the code build without ANDGPU?
I.e., does the callingconv enum get generated?

Jul 5 2019, 3:44 PM

Jul 3 2019

qcolombet accepted D64108: [GlobalISel][AArch64] Use getConstantVRegValWithLookThrough for selectArithImmed.
Jul 3 2019, 9:42 AM · Restricted Project

Jul 2 2019

qcolombet requested changes to D64108: [GlobalISel][AArch64] Use getConstantVRegValWithLookThrough for selectArithImmed.

General direction LGTM but there's a bug in the current patch unless I am mistaken.

Jul 2 2019, 4:08 PM · Restricted Project

Jun 19 2019

qcolombet added a comment to D62423: [globalisel][legalizer] Attempt to write down the minimal legalization rules.

I second Daniel's comment, this is RegBankSelect's job to do this choice and the Legalizer shouldn't need to know about f64 vs. s64.

Jun 19 2019, 2:18 PM · Restricted Project
qcolombet accepted D63496: [WIP] CodeGen: Prototype class for registers.

Maybe adding an MCRegister that's nearly identical might be a future improvement? That way it could enforce MCRegister->Register is OK, but Register->MCRegister is not

Jun 19 2019, 10:49 AM

Jun 18 2019

qcolombet added a comment to D63496: [WIP] CodeGen: Prototype class for registers.

Thanks for doing this Matt, this is a long due clean-up.
I haven't looked carefully at all the changes, but the general direction LGTM.

Jun 18 2019, 11:58 AM

Jun 17 2019

qcolombet added a comment to D62423: [globalisel][legalizer] Attempt to write down the minimal legalization rules.

Those rules work when there's a load/store for every type but they run into unable-to-legalize if that's not the case.

Jun 17 2019, 2:34 PM · Restricted Project

Jun 14 2019

qcolombet accepted D63303: [GlobalISel][Localizer] Rewrite localizer to run in 2 phases, inter & intra block..

LGTM modulo want @paquette pointed out.

Jun 14 2019, 11:03 AM · Restricted Project

Jun 13 2019

qcolombet added inline comments to D63162: GlobalISel: Avoid producing Illegal copies in RegBankSelect.
Jun 13 2019, 12:43 PM
qcolombet accepted D63162: GlobalISel: Avoid producing Illegal copies in RegBankSelect.

Nitpicks below.

Jun 13 2019, 10:11 AM

Jun 12 2019

qcolombet accepted D63173: RegBankSelect: Remove checks for invalid mappings.

Nitpicks below.

Jun 12 2019, 3:35 PM
qcolombet accepted D63152: [FIX] Forces shrink wrapping to consider any memory access as aliasing with the stack.

Agree, the fix is more important than the performance loss at this point.

Jun 12 2019, 12:57 PM · Restricted Project

Jun 5 2019

qcolombet added a comment to D60888: [SystemZ] Favor 3-address instructions during instruction selection..

Hi Jonas,

Jun 5 2019, 1:35 PM
qcolombet accepted D62745: Factor out SelectionDAG's switch analysis and lowering into a separate component.

Hi Amara,

Jun 5 2019, 1:28 PM · Restricted Project

Jun 3 2019

qcolombet accepted D62552: Propagate fmf for setcc/select folds.

LGTM.

Jun 3 2019, 11:25 AM · Restricted Project

May 30 2019

qcolombet accepted D61702: MISched: Fix -misched-regpressure=0 if subreg liveness enabled.

Looks reasonable!

May 30 2019, 9:43 AM
qcolombet added a comment to D62411: LiveIntervals: add LiveRange::findIndexesLiveAt function - return a list of SlotIndexes the LiveRange live at..

What is the use case for this?

May 30 2019, 9:40 AM · Restricted Project
qcolombet requested changes to D62006: Add "llvm_unreachable" for function RegisterBankInfo::getRegBank.
May 30 2019, 9:31 AM · Restricted Project
qcolombet reopened D62006: Add "llvm_unreachable" for function RegisterBankInfo::getRegBank.
May 30 2019, 9:30 AM · Restricted Project

May 28 2019

qcolombet committed rGa6f57ad2c9dc: [RegUsageInfoCollector] Don't mark as saved registers that don't have… (authored by qcolombet).
[RegUsageInfoCollector] Don't mark as saved registers that don't have…
May 28 2019, 4:45 PM
qcolombet committed rL361901: [RegUsageInfoCollector] Don't mark as saved registers that don't have….
[RegUsageInfoCollector] Don't mark as saved registers that don't have…
May 28 2019, 4:40 PM

May 27 2019

qcolombet accepted D62249: RegAllocFast: Set MayLiveAcrossBlocks when allocating uses.

LGTM.
Nitpicks on the test below.

May 27 2019, 9:13 AM
qcolombet added a comment to D62423: [globalisel][legalizer] Attempt to write down the minimal legalization rules.

Hi Daniel,

May 27 2019, 9:07 AM · Restricted Project

May 24 2019

qcolombet added inline comments to D62249: RegAllocFast: Set MayLiveAcrossBlocks when allocating uses.
May 24 2019, 3:26 PM
qcolombet added inline comments to D62249: RegAllocFast: Set MayLiveAcrossBlocks when allocating uses.
May 24 2019, 2:56 PM
qcolombet added inline comments to D62249: RegAllocFast: Set MayLiveAcrossBlocks when allocating uses.
May 24 2019, 2:54 PM

May 16 2019

qcolombet added a comment to D61061: [MachineFunction] Base support for call site info tracking.
Please provide us with more details about your idea.
May 16 2019, 1:19 PM · Restricted Project, debug-info

May 14 2019

qcolombet accepted D54367: RegAllocFast: Improve hinting heuristic.

LGTM

May 14 2019, 11:05 AM · Restricted Project

May 13 2019

qcolombet added a comment to D61061: [MachineFunction] Base support for call site info tracking.
did anything like this come up in the past?
May 13 2019, 1:04 PM · Restricted Project, debug-info
qcolombet accepted D61852: [IRTranslator] Don't hardcode GEP index type.

LGTM

May 13 2019, 1:01 PM · Restricted Project
qcolombet added a comment to D54367: RegAllocFast: Improve hinting heuristic.

Looks good to me, modulo the order in which we check the hints.

May 13 2019, 8:26 AM · Restricted Project

May 8 2019

qcolombet committed rG157427245a19: [RegAllocFast] Scan physcial reg definitions before assigning virtual reg… (authored by qcolombet).
[RegAllocFast] Scan physcial reg definitions before assigning virtual reg…
May 8 2019, 11:29 AM
qcolombet committed rL360278: [RegAllocFast] Scan physcial reg definitions before assigning virtual reg….
[RegAllocFast] Scan physcial reg definitions before assigning virtual reg…
May 8 2019, 11:28 AM

May 3 2019

qcolombet added a comment to D60888: [SystemZ] Favor 3-address instructions during instruction selection..

@Quentin: This has the same common-code change as in D58923, with the added VRM to foldMemoryOperand(). You seemed fine with this change, right?

May 3 2019, 9:03 AM
qcolombet added inline comments to D61489: RegAlloc: try to fail more gracefully when out of registers.
May 3 2019, 8:57 AM · Restricted Project
qcolombet accepted D54366: RegAllocFast: Add heuristic to detect values not live-out of a block.

LGTM. Nitpicks below.

May 3 2019, 8:50 AM · Restricted Project

May 2 2019

qcolombet committed rGc9256cc6ba93: [IRTranslator] Use the alloc size instead of the store size when translating… (authored by qcolombet).
[IRTranslator] Use the alloc size instead of the store size when translating…
May 2 2019, 6:23 PM
qcolombet committed rL359856: [IRTranslator] Use the alloc size instead of the store size when translating….
[IRTranslator] Use the alloc size instead of the store size when translating…
May 2 2019, 6:23 PM

Apr 29 2019

qcolombet committed rG2d977935a298: [llvm-extract] Expose the group extraction feature of the BlockExtractor (authored by qcolombet).
[llvm-extract] Expose the group extraction feature of the BlockExtractor
Apr 29 2019, 9:15 AM
qcolombet committed rG31ce274207fd: [BlockExtractor] Expose a constructor for the group extraction (authored by qcolombet).
[BlockExtractor] Expose a constructor for the group extraction
Apr 29 2019, 9:15 AM