dsanders (Daniel Sanders)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 19 2013, 3:30 PM (208 w, 3 d)

Recent Activity

Yesterday

dsanders added a comment to D36534: [aarch64] Support APInt and APFloat in ImmLeaf subclasses and make AArch64 use them..

ping

Thu, Aug 17, 7:43 AM
dsanders added a comment to D36086: [globalisel][tablegen] Add support for ImmLeaf without SDNodeXForm.

ping

Thu, Aug 17, 7:43 AM
dsanders committed rL311084: [globalisel][tablegen] Generate TypeObject table. NFC.
[globalisel][tablegen] Generate TypeObject table. NFC
Thu, Aug 17, 6:19 AM
dsanders closed D36085: [globalisel][tablegen] Generate TypeObject table. NFC.
Thu, Aug 17, 6:19 AM
dsanders committed rL311076: Re-commit: [globalisel][tablegen] Support zero-instruction emission..
Re-commit: [globalisel][tablegen] Support zero-instruction emission.
Thu, Aug 17, 2:27 AM
dsanders closed D36084: [globalisel][tablegen] Support zero-instruction emission. by committing rL311076: Re-commit: [globalisel][tablegen] Support zero-instruction emission..
Thu, Aug 17, 2:27 AM

Tue, Aug 15

dsanders reopened D36084: [globalisel][tablegen] Support zero-instruction emission..
Tue, Aug 15, 8:15 AM
dsanders committed rL310922: Revert r310919 - [globalisel][tablegen] Support zero-instruction emission..
Revert r310919 - [globalisel][tablegen] Support zero-instruction emission.
Tue, Aug 15, 8:12 AM
dsanders committed rL310919: Re-commit with some instrumentation: [globalisel][tablegen] Support zero….
Re-commit with some instrumentation: [globalisel][tablegen] Support zero…
Tue, Aug 15, 6:53 AM
dsanders closed D36084: [globalisel][tablegen] Support zero-instruction emission. by committing rL310919: Re-commit with some instrumentation: [globalisel][tablegen] Support zero….
Tue, Aug 15, 6:53 AM

Fri, Aug 11

dsanders reopened D36085: [globalisel][tablegen] Generate TypeObject table. NFC.

This was reverted in order to revert D36084. Investigating the problem with D36084

Fri, Aug 11, 12:22 PM
dsanders committed rL310745: Revert r310716 (and r310735): [globalisel][tablegen] Support zero-instruction….
Revert r310716 (and r310735): [globalisel][tablegen] Support zero-instruction…
Fri, Aug 11, 12:21 PM
dsanders reopened D36084: [globalisel][tablegen] Support zero-instruction emission..

Two windows bots failed select-inc.mir which should have been unaffected by the change. Investigating

Fri, Aug 11, 12:21 PM
dsanders committed rL310735: [globalisel][tablegen] Generate TypeObject table. NFC.
[globalisel][tablegen] Generate TypeObject table. NFC
Fri, Aug 11, 10:31 AM
dsanders closed D36085: [globalisel][tablegen] Generate TypeObject table. NFC.
Fri, Aug 11, 10:31 AM
dsanders committed rL310716: [globalisel][tablegen] Support zero-instruction emission..
[globalisel][tablegen] Support zero-instruction emission.
Fri, Aug 11, 8:41 AM
dsanders closed D36084: [globalisel][tablegen] Support zero-instruction emission. by committing rL310716: [globalisel][tablegen] Support zero-instruction emission..
Fri, Aug 11, 8:41 AM
dsanders retitled D36618: [globalisel][tablegen] Simplify named operand/operator lookups and fix a wrong-code bug this revealed. from [globalisel][tablegen] Simplify and fix a wrong-code bug this revealed. to [globalisel][tablegen] Simplify named operand/operator lookups and fix a wrong-code bug this revealed..
Fri, Aug 11, 7:59 AM
dsanders added a dependent revision for D36569: [globalisel][tablegen] Add support for fpimm and import of APInt/APFloat based ImmLeaf.: D36618: [globalisel][tablegen] Simplify named operand/operator lookups and fix a wrong-code bug this revealed..
Fri, Aug 11, 7:49 AM
dsanders created D36618: [globalisel][tablegen] Simplify named operand/operator lookups and fix a wrong-code bug this revealed..
Fri, Aug 11, 7:49 AM

Thu, Aug 10

dsanders created D36569: [globalisel][tablegen] Add support for fpimm and import of APInt/APFloat based ImmLeaf..
Thu, Aug 10, 1:37 AM

Wed, Aug 9

dsanders added a comment to D36534: [aarch64] Support APInt and APFloat in ImmLeaf subclasses and make AArch64 use them..

Removed the reference to zero-extending APInt's from the summary since this isn't in the patch anymore. IntImmLeaf with a predicate that uses Imm->getZExtValue() is equivalent so I didn't see a need to make uint64_t predicates separately.

Wed, Aug 9, 2:38 PM
dsanders updated the summary of D36534: [aarch64] Support APInt and APFloat in ImmLeaf subclasses and make AArch64 use them..
Wed, Aug 9, 2:36 PM
dsanders created D36534: [aarch64] Support APInt and APFloat in ImmLeaf subclasses and make AArch64 use them..
Wed, Aug 9, 10:31 AM
dsanders added a dependent revision for D36086: [globalisel][tablegen] Add support for ImmLeaf without SDNodeXForm: D36534: [aarch64] Support APInt and APFloat in ImmLeaf subclasses and make AArch64 use them..
Wed, Aug 9, 10:31 AM

Tue, Aug 8

dsanders updated the diff for D36086: [globalisel][tablegen] Add support for ImmLeaf without SDNodeXForm.

Rebase

Tue, Aug 8, 8:52 AM
dsanders updated the diff for D36085: [globalisel][tablegen] Generate TypeObject table. NFC.

Fixed the priority sort-order nits:

  • Returns false if both sides are invalid instead of aborting.
  • Avoid checking size-in-bits on separate code-paths and handle it in one place.
  • Also order pointers and pointer address spaces since there's no longer an unreachable for them to fall into.
Tue, Aug 8, 8:37 AM
dsanders added inline comments to D36084: [globalisel][tablegen] Support zero-instruction emission..
Tue, Aug 8, 7:36 AM
dsanders updated the diff for D36084: [globalisel][tablegen] Support zero-instruction emission..

Fix the issues with the changes to the C++ implementation of G_INTTOPTR and G_BITCAST.

Tue, Aug 8, 7:35 AM
dsanders committed rL310357: [globalisel][tablegen] Remove unnecessary ; to satisfy ubuntu-gcc7.1-werror..
[globalisel][tablegen] Remove unnecessary ; to satisfy ubuntu-gcc7.1-werror.
Tue, Aug 8, 6:22 AM
dsanders committed rL310343: [globalisel][tablegen] Add support for importing 'imm' operands..
[globalisel][tablegen] Add support for importing 'imm' operands.
Tue, Aug 8, 3:45 AM
dsanders closed D35833: [globalisel][tablegen] Add support for importing 'imm' operands..
Tue, Aug 8, 3:45 AM

Thu, Aug 3

dsanders added a comment to D35833: [globalisel][tablegen] Add support for importing 'imm' operands..

That makes sense to me, I'll switch it over to sign-extend.

Thu, Aug 3, 6:45 AM
dsanders added inline comments to D36085: [globalisel][tablegen] Generate TypeObject table. NFC.
Thu, Aug 3, 6:43 AM
dsanders added a comment to D36084: [globalisel][tablegen] Support zero-instruction emission..

I had a testcase for this one but it seems to have gone missing. I'll update with one shortly

Thu, Aug 3, 6:40 AM
dsanders added inline comments to D35833: [globalisel][tablegen] Add support for importing 'imm' operands..
Thu, Aug 3, 6:13 AM
dsanders updated the diff for D35833: [globalisel][tablegen] Add support for importing 'imm' operands..

Fix == TargetOpcode::G_CONSTANT nit.

Thu, Aug 3, 6:12 AM
dsanders committed rL309924: [globalisel][tablegen] Update a comment to use the name of the constant rather….
[globalisel][tablegen] Update a comment to use the name of the constant rather…
Thu, Aug 3, 1:39 AM

Wed, Aug 2

dsanders added inline comments to D35833: [globalisel][tablegen] Add support for importing 'imm' operands..
Wed, Aug 2, 8:18 AM
dsanders committed rL309804: [globalisel][tablegen] Do not merge memoperands from instructions that weren't….
[globalisel][tablegen] Do not merge memoperands from instructions that weren't…
Wed, Aug 2, 4:04 AM
dsanders closed D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match. by committing rL309804: [globalisel][tablegen] Do not merge memoperands from instructions that weren't….
Wed, Aug 2, 4:04 AM
dsanders updated the summary of D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match..
Wed, Aug 2, 4:02 AM
dsanders added inline comments to D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match..
Wed, Aug 2, 2:52 AM
dsanders added a comment to D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match..

I'll commit D36151 after this one goes in, so we see if this change fixes the buildbot

Wed, Aug 2, 2:42 AM
dsanders added a comment to D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match..

It's been pointed out to me that one of the bots (http://green.lab.llvm.org/green/job/Compiler_Verifiers_GlobalISEL/) is red because of the bug this fixes. That being the case, I'm going to commit this and we can post-commit review it.

Wed, Aug 2, 2:08 AM

Tue, Aug 1

dsanders accepted D36151: [GlobalISel] Only merge memory ops for mayLoad or mayStore instrs..

Yes, D36094 fixes the problem too! Here's what's going on in the test case, without any of the 2 patches:

Tue, Aug 1, 10:22 AM
dsanders committed rL309687: [globalisel][tablegen] Removed unnecessary typedef pointed out in post-commit….
[globalisel][tablegen] Removed unnecessary typedef pointed out in post-commit…
Tue, Aug 1, 7:57 AM
dsanders added a comment to D36151: [GlobalISel] Only merge memory ops for mayLoad or mayStore instrs..

Limiting memory operands to instructions involving memory is a change I want to make but before we do that, could you elaborate a bit on the spurious memory operand you're seeing? In particular, was that memory operand present on any of the instructions covered by the match? I'm wondering if you've hit the bug that will be fixed by https://reviews.llvm.org/D36094.

Tue, Aug 1, 7:43 AM
dsanders updated the diff for D36084: [globalisel][tablegen] Support zero-instruction emission..

Fix the previous update so that it contains both the original patch and the correction.

Tue, Aug 1, 3:56 AM

Mon, Jul 31

dsanders created D36094: [globalisel][tablegen] Do not merge memoperands from instructions that weren't in the match..
Mon, Jul 31, 9:56 AM
dsanders updated the diff for D35833: [globalisel][tablegen] Add support for importing 'imm' operands..

The C++ uses ZExt but TableGen uses SExt. I haven't decided how to fix this one yet.

Mon, Jul 31, 7:02 AM
dsanders updated the diff for D36084: [globalisel][tablegen] Support zero-instruction emission..

I had a testcase for this one but it seems to have gone missing. I'll update with one shortly

Mon, Jul 31, 6:01 AM
dsanders added a comment to D36084: [globalisel][tablegen] Support zero-instruction emission..

I had a testcase for this one but it seems to have gone missing. I'll update with one shortly

Mon, Jul 31, 5:31 AM
dsanders added a dependent revision for D36085: [globalisel][tablegen] Generate TypeObject table. NFC: D36086: [globalisel][tablegen] Add support for ImmLeaf without SDNodeXForm.
Mon, Jul 31, 5:31 AM
dsanders created D36085: [globalisel][tablegen] Generate TypeObject table. NFC.
Mon, Jul 31, 5:31 AM
dsanders created D36086: [globalisel][tablegen] Add support for ImmLeaf without SDNodeXForm.
Mon, Jul 31, 5:31 AM
dsanders added a dependent revision for D36084: [globalisel][tablegen] Support zero-instruction emission.: D36085: [globalisel][tablegen] Generate TypeObject table. NFC.
Mon, Jul 31, 5:31 AM
dsanders created D36084: [globalisel][tablegen] Support zero-instruction emission..
Mon, Jul 31, 5:26 AM
dsanders added a dependent revision for D35833: [globalisel][tablegen] Add support for importing 'imm' operands.: D36084: [globalisel][tablegen] Support zero-instruction emission..
Mon, Jul 31, 5:26 AM

Fri, Jul 28

dsanders added inline comments to D35833: [globalisel][tablegen] Add support for importing 'imm' operands..
Fri, Jul 28, 8:58 AM
dsanders updated the diff for D35833: [globalisel][tablegen] Add support for importing 'imm' operands..

Added assertion.
Added support for isImm() case.
Switched to negative number on the i32 test case.

  • Fixed the issue preventing tablegen from matching either case and killed the C++ that made the test pass.
  • Fixed a priority bug that was revealed after that fix. G_CONSTANT instructions need to be less important than specific constants.
    • I'm thinking that I should replace ConstantIntOperandMatcher with an appropriate instruction/opcode/literal-int matcher combination. I see no good reason for it to be special at this point. I'll leave that for another patch though.
Fri, Jul 28, 8:51 AM

Thu, Jul 27

dsanders committed rL309267: [globalisel][tablegen] Ensure MatchTable's are compile-time constants with….
[globalisel][tablegen] Ensure MatchTable's are compile-time constants with…
Thu, Jul 27, 5:49 AM
dsanders committed rL309264: Re-commit: r309094 [globalisel][tablegen] Fuse the generated tables together..
Re-commit: r309094 [globalisel][tablegen] Fuse the generated tables together.
Thu, Jul 27, 4:04 AM

Wed, Jul 26

dsanders committed rL309111: Revert r309094: [globalisel][tablegen] Fuse the generated tables together..
Revert r309094: [globalisel][tablegen] Fuse the generated tables together.
Wed, Jul 26, 6:32 AM
dsanders committed rL309094: [globalisel][tablegen] Fuse the generated tables together..
[globalisel][tablegen] Fuse the generated tables together.
Wed, Jul 26, 3:22 AM
dsanders closed D35681: [globalisel][tablegen] Fuse the generated tables together..
Wed, Jul 26, 3:22 AM
dsanders accepted D35516: [GISel]: Split buildSources part of buildInstr separately.

LGTM with a better commit message.

Wed, Jul 26, 2:19 AM
dsanders added a comment to D35594: [GISel]: ConstantFold operations when building MIR.

Could you run clang-format on this patch? There's a few indentation and style nits in this patch. There's also a few in the neighbouring code which we should deal with separately

Wed, Jul 26, 2:17 AM

Tue, Jul 25

dsanders created D35833: [globalisel][tablegen] Add support for importing 'imm' operands..
Tue, Jul 25, 5:41 AM
dsanders updated the diff for D35681: [globalisel][tablegen] Fuse the generated tables together..

Add missing break
Removed State.MIs.resize(1). The first GIM_RecordInsn will do it.
Moved CurrentLabelID inside MatchTable

Tue, Jul 25, 5:34 AM

Mon, Jul 24

dsanders added a comment to D35516: [GISel]: Split buildSources part of buildInstr separately.

@dsanders - the main goal was to avoid the compiler warning of having to create a zero sized array.

Mon, Jul 24, 12:29 PM
dsanders added a comment to D35516: [GISel]: Split buildSources part of buildInstr separately.

I'm not sure I understand why this change is needed. I'd expect the original version of buildInstr<unsigned>, to expand to:

MachineInstrBuilder buildInstr(unsigned Opc, unsigned &&Ty) {
  auto MIB = buildInstr(Opc).addDef(getDestFromArg(Ty));
  unsigned It[] = {};
  for (const auto &i : It)
    MIB.addUse(i);
  return MIB;
}

which should then optimize to:

MachineInstrBuilder buildInstr(unsigned Opc, unsigned &&Ty) {
  auto MIB = buildInstr(Opc).addDef(getDestFromArg(Ty));
  return MIB;
}

which appears to be the same thing the new version expands and optimizes to.

Mon, Jul 24, 5:38 AM
dsanders added a comment to D35332: [GISel]: More flexibility while building I/FCmps with MachineIRBuilder.

Hi Aditya,

Mon, Jul 24, 5:25 AM

Thu, Jul 20

dsanders added inline comments to D35681: [globalisel][tablegen] Fuse the generated tables together..
Thu, Jul 20, 6:19 AM
dsanders created D35681: [globalisel][tablegen] Fuse the generated tables together..
Thu, Jul 20, 6:14 AM
dsanders committed rL308613: [globalisel][tablegen] Fix an unintended fallthrough that is currently….
[globalisel][tablegen] Fix an unintended fallthrough that is currently…
Thu, Jul 20, 6:12 AM
dsanders committed rL308599: [globalisel][tablegen] Fix an issue with lambdas when compiling with older GCC's.
[globalisel][tablegen] Fix an issue with lambdas when compiling with older GCC's
Thu, Jul 20, 3:25 AM
dsanders committed rL308596: [globalisel][tablegen] Add control-flow to the MatchTable..
[globalisel][tablegen] Add control-flow to the MatchTable.
Thu, Jul 20, 2:26 AM
dsanders closed D35117: [globalisel][tablegen] Add control-flow to the MatchTable..
Thu, Jul 20, 2:26 AM

Wed, Jul 19

dsanders added a comment to D21465: [llc+llvm-mc] Replace the hidden -target-abi option with a -mabi thats visible in --help..

Hello,

Are there plans to merge this in? I have updated the patch onto 0d7672e (attached), if it is helpful, though it was mostly just s/target-abi[ =]/mabi=/ on the files which failed the tests (and then ran the tests again and nothing failed).

Thanks,
Robert

Wed, Jul 19, 3:57 AM
dsanders added a comment to D35117: [globalisel][tablegen] Add control-flow to the MatchTable..

Thanks. I'll fix these for the commit.

Wed, Jul 19, 3:21 AM
dsanders committed rL308424: [globalisel][tablegen] 80-col corrections..
[globalisel][tablegen] 80-col corrections.
Wed, Jul 19, 2:29 AM

Jul 18 2017

dsanders updated the diff for D35117: [globalisel][tablegen] Add control-flow to the MatchTable..

Rebased.
Fixed accidental usage of C++14
Fixed GIM_Reject always rejecting instead of exiting the current GIM_Try block when appropriate.
Remove whitespace around generated comments.

Jul 18 2017, 10:42 AM
dsanders committed rL308308: [globalisel][tablegen] Enable the import of rules involving fma..
[globalisel][tablegen] Enable the import of rules involving fma.
Jul 18 2017, 7:10 AM
dsanders closed D35130: [globalisel][tablegen] Enable the import of rules involving fma. by committing rL308308: [globalisel][tablegen] Enable the import of rules involving fma..
Jul 18 2017, 7:10 AM
dsanders closed D35130: [globalisel][tablegen] Enable the import of rules involving fma..
Jul 18 2017, 7:10 AM
dsanders updated the summary of D35117: [globalisel][tablegen] Add control-flow to the MatchTable..
Jul 18 2017, 5:39 AM
dsanders added inline comments to D35117: [globalisel][tablegen] Add control-flow to the MatchTable..
Jul 18 2017, 5:34 AM

Jul 11 2017

dsanders committed rL307659: [globalisel][tablegen] Change method of squashing unused variable warnings….
[globalisel][tablegen] Change method of squashing unused variable warnings…
Jul 11 2017, 7:23 AM
dsanders committed rL307646: [globalisel][tablegen] Fix an multi-insn match bug where ComplexPattern is used….
[globalisel][tablegen] Fix an multi-insn match bug where ComplexPattern is used…
Jul 11 2017, 3:40 AM
dsanders committed rL307634: [globalisel][tablegen] Correct matching of intrinsic ID's..
[globalisel][tablegen] Correct matching of intrinsic ID's.
Jul 11 2017, 1:58 AM

Jul 7 2017

dsanders created D35130: [globalisel][tablegen] Enable the import of rules involving fma..
Jul 7 2017, 10:13 AM
dsanders created D35117: [globalisel][tablegen] Add control-flow to the MatchTable..
Jul 7 2017, 4:03 AM

Jul 6 2017

dsanders committed rL307248: [globalisel][tablegen] Rename and re-comment render functions to match the new….
[globalisel][tablegen] Rename and re-comment render functions to match the new…
Jul 6 2017, 3:37 AM
dsanders committed rL307246: [globalisel][tablegen] Rename and re-comment to match the new MatchTables. NFC..
[globalisel][tablegen] Rename and re-comment to match the new MatchTables. NFC.
Jul 6 2017, 3:06 AM
dsanders committed rL307240: [globalisel][tablegen] Import rules containing intrinsic_wo_chain..
[globalisel][tablegen] Import rules containing intrinsic_wo_chain.
Jul 6 2017, 1:13 AM
dsanders closed D32278: [globalisel][tablegen] Import rules containing intrinsic_wo_chain..
Jul 6 2017, 1:12 AM

Jul 5 2017

dsanders updated the diff for D32278: [globalisel][tablegen] Import rules containing intrinsic_wo_chain..

Rebase before re-commit

Jul 5 2017, 10:49 AM
dsanders committed rL307168: [globalisel][tablegen] Fix another unused variable warning introduced by r307159.
[globalisel][tablegen] Fix another unused variable warning introduced by r307159
Jul 5 2017, 8:34 AM
dsanders added a comment to D33764: [globalisel][tablegen] Added instruction emission to the state-machine-based matcher..

I see. STATISTIC value, like NumPatternEmitted, is disabled with noop in -Asserts. See ADT/Statistic.h.

I fixed that in the previous patch but it looks like I missed a bit in this one. I'll fix this.

Jul 5 2017, 8:00 AM