Page MenuHomePhabricator

nickdesaulniers (Nick Desaulniers)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 13 2018, 4:23 PM (53 w, 4 d)

Recent Activity

Yesterday

nickdesaulniers added a comment to D56571: [RFC prototype] Implementation of asm-goto support in clang.

@compudj email me the preprocessed output of basic_percpu_ops_test.c and I'll take a look. (Should be able to find my email via git log).

Tue, Apr 23, 2:52 PM
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • actually undo cmake changes
Tue, Apr 23, 1:12 PM · Restricted Project
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • undo cmake change
Tue, Apr 23, 1:08 PM · Restricted Project
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • looks like <label>: is no longer emitted
  • move modified iteration logic into LazyCallGraph::visitReferences
Tue, Apr 23, 1:05 PM · Restricted Project
nickdesaulniers updated subscribers of D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Tue, Apr 23, 12:57 PM · Restricted Project
nickdesaulniers added a comment to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

@chandlerc alternatively, if I drop the posted changed to llvm/lib/Analysis/CGSCCPassManager.cpp and instead do:

diff --git a/llvm/include/llvm/Analysis/LazyCallGraph.h b/llvm/include/llvm/Analysis/La
zyCallGraph.h
index 328654763b59..62e062a30718 100644
--- a/llvm/include/llvm/Analysis/LazyCallGraph.h
+++ b/llvm/include/llvm/Analysis/LazyCallGraph.h
@@ -1082,12 +1082,21 @@ public:
         continue;
       }
Tue, Apr 23, 12:57 PM · Restricted Project

Mon, Apr 22

nickdesaulniers added a comment to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

@chandlerc is the change to llvm/lib/Analysis/CGSCCPassManager.cpp correct? Otherwise the block in llvm/include/llvm/Analysis/LazyCallGraph.h LazyCallGraph::visitReferences is suspicious:

if (BlockAddress *BA = dyn_cast<BlockAddress>(C)) {
  // The blockaddress constant expression is a weird special case, we
  // can't generically walk its operands the way we do for all other
  // constants.
  if (Visited.insert(BA->getFunction()).second)
    Worklist.push_back(BA->getFunction());
  continue;
}
Mon, Apr 22, 4:53 PM · Restricted Project

Fri, Apr 19

nickdesaulniers updated subscribers of D60887: [AsmPrinter] refactor to support %c w/ GlobalAddress'.
Fri, Apr 19, 1:07 PM · Restricted Project

Thu, Apr 18

nickdesaulniers added a comment to D60887: [AsmPrinter] refactor to support %c w/ GlobalAddress'.

so I guess these backends are defaulted off or something?

Thu, Apr 18, 2:56 PM · Restricted Project
nickdesaulniers added a comment to D60887: [AsmPrinter] refactor to support %c w/ GlobalAddress'.

When I added test cases for RISCV and AVR, I got the following error message from llvm-lit that I don't understand:

UNSUPPORTED: LLVM :: CodeGen/RISCV/inlineasm-output-template.ll (1 of 1)
UNSUPPORTED: LLVM :: CodeGen/AVR/inlineasm-output-template.ll (1 of 1)
Thu, Apr 18, 1:50 PM · Restricted Project
nickdesaulniers abandoned D60738: [MSP430AsmPrinter] Refactor special cases out of printOperand. NFC.

Superseded by: https://reviews.llvm.org/D60887

Thu, Apr 18, 1:45 PM · Restricted Project
nickdesaulniers abandoned D60428: [Aarch64AsmPrinter] support %c output template for global addresses.

Superseded by https://reviews.llvm.org/D60887

Thu, Apr 18, 1:38 PM · Restricted Project
nickdesaulniers created D60887: [AsmPrinter] refactor to support %c w/ GlobalAddress'.
Thu, Apr 18, 1:37 PM · Restricted Project

Wed, Apr 17

nickdesaulniers committed rG9609ce2f3305: [AsmPrinter] hoist %a output template to base class for ARM+Aarch64 (authored by nickdesaulniers).
[AsmPrinter] hoist %a output template to base class for ARM+Aarch64
Wed, Apr 17, 3:22 PM
nickdesaulniers committed rL358618: [AsmPrinter] hoist %a output template to base class for ARM+Aarch64.
[AsmPrinter] hoist %a output template to base class for ARM+Aarch64
Wed, Apr 17, 3:21 PM
nickdesaulniers closed D60841: [AsmPrinter] hoist %a output template to base class for ARM+Aarch64.
Wed, Apr 17, 3:21 PM · Restricted Project
nickdesaulniers retitled D60841: [AsmPrinter] hoist %a output template to base class for ARM+Aarch64 from hoist %a output template to base class for ARM+Aarch64 to [AsmPrinter] hoist %a output template to base class for ARM+Aarch64.
Wed, Apr 17, 2:58 PM · Restricted Project
nickdesaulniers created D60841: [AsmPrinter] hoist %a output template to base class for ARM+Aarch64.
Wed, Apr 17, 2:58 PM · Restricted Project
nickdesaulniers committed rGa2077bab4087: [AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC (authored by nickdesaulniers).
[AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC
Wed, Apr 17, 11:22 AM
nickdesaulniers committed rL358603: [AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC.
[AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC
Wed, Apr 17, 11:22 AM
nickdesaulniers closed D60803: [AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC.
Wed, Apr 17, 11:22 AM · Restricted Project

Tue, Apr 16

nickdesaulniers added a comment to D60803: [AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC.

Note to Peter: the %a case is the same between Aarch64 and ARM (and should be basic enough to hoist up to the base case). That's going in next patch.

Tue, Apr 16, 4:48 PM · Restricted Project
nickdesaulniers created D60803: [AsmPrinter] defer %c to base class for ARM, PPC, and Hexagon. NFC.
Tue, Apr 16, 4:30 PM · Restricted Project
nickdesaulniers committed rG3271ca01fe03: [NVPTXAsmPrinter] clean up dead code. NFC (authored by nickdesaulniers).
[NVPTXAsmPrinter] clean up dead code. NFC
Tue, Apr 16, 2:05 PM
nickdesaulniers committed rL358527: [NVPTXAsmPrinter] clean up dead code. NFC.
[NVPTXAsmPrinter] clean up dead code. NFC
Tue, Apr 16, 2:05 PM
nickdesaulniers closed D60727: [NVPTXAsmPrinter] clean up dead code. NFC.
Tue, Apr 16, 2:05 PM · Restricted Project

Mon, Apr 15

nickdesaulniers created D60738: [MSP430AsmPrinter] Refactor special cases out of printOperand. NFC.
Mon, Apr 15, 4:47 PM · Restricted Project
nickdesaulniers added a comment to D60727: [NVPTXAsmPrinter] clean up dead code. NFC.

@tra thanks for the additional context.

Mon, Apr 15, 1:47 PM · Restricted Project
nickdesaulniers created D60727: [NVPTXAsmPrinter] clean up dead code. NFC.
Mon, Apr 15, 10:39 AM · Restricted Project

Thu, Apr 11

nickdesaulniers committed rG8ec304c9fd92: [X86AsmPrinter] refactor static functions into private methods. NFC (authored by nickdesaulniers).
[X86AsmPrinter] refactor static functions into private methods. NFC
Thu, Apr 11, 3:46 PM
nickdesaulniers committed rL358236: [X86AsmPrinter] refactor static functions into private methods. NFC.
[X86AsmPrinter] refactor static functions into private methods. NFC
Thu, Apr 11, 3:45 PM
nickdesaulniers closed D60577: [X86AsmPrinter] refactor static functions into private methods. NFC.
Thu, Apr 11, 3:45 PM · Restricted Project
nickdesaulniers updated the summary of D60577: [X86AsmPrinter] refactor static functions into private methods. NFC.
Thu, Apr 11, 3:41 PM · Restricted Project
nickdesaulniers updated the summary of D60577: [X86AsmPrinter] refactor static functions into private methods. NFC.
Thu, Apr 11, 3:12 PM · Restricted Project
nickdesaulniers added a comment to D60577: [X86AsmPrinter] refactor static functions into private methods. NFC.

A lot of the other derived AsmPrinters seem to use lowerCamelCase for private methods not used from the base class, rather than UpperCamelCase. Is that a thing?
https://llvm.org/docs/CodingStandards.html#name-types-functions-variables-and-enumerators-properly
does not clarify.

Thu, Apr 11, 1:42 PM · Restricted Project
nickdesaulniers created D60577: [X86AsmPrinter] refactor static functions into private methods. NFC.
Thu, Apr 11, 1:40 PM · Restricted Project

Wed, Apr 10

nickdesaulniers committed rGad8f3a1440c7: [X86AsmPrinter] refactor to limit use of Modifier. NFC (authored by nickdesaulniers).
[X86AsmPrinter] refactor to limit use of Modifier. NFC
Wed, Apr 10, 12:01 PM
nickdesaulniers committed rL358122: [X86AsmPrinter] refactor to limit use of Modifier. NFC.
[X86AsmPrinter] refactor to limit use of Modifier. NFC
Wed, Apr 10, 12:01 PM
nickdesaulniers closed D60526: [X86AsmPrinter] refactor to limit use of Modifier. NFC.
Wed, Apr 10, 12:01 PM · Restricted Project
nickdesaulniers created D60526: [X86AsmPrinter] refactor to limit use of Modifier. NFC.
Wed, Apr 10, 11:33 AM · Restricted Project
nickdesaulniers added a comment to D60488: [AsmPrinter] refactor to remove remove AsmVariant. NFC.

Note to self: merge the arc clone branch, or squash the commits in the local branch before committing.

Wed, Apr 10, 9:56 AM · Restricted Project
nickdesaulniers committed rGb9a00cb504b6: add FIXME: as per echristo (authored by nickdesaulniers).
add FIXME: as per echristo
Wed, Apr 10, 9:38 AM
nickdesaulniers committed rG5277b3ff2518: [AsmPrinter] refactor to remove remove AsmVariant. NFC (authored by nickdesaulniers).
[AsmPrinter] refactor to remove remove AsmVariant. NFC
Wed, Apr 10, 9:37 AM
nickdesaulniers committed rL358102: add FIXME: as per echristo.
add FIXME: as per echristo
Wed, Apr 10, 9:37 AM
nickdesaulniers committed rL358101: [AsmPrinter] refactor to remove remove AsmVariant. NFC.
[AsmPrinter] refactor to remove remove AsmVariant. NFC
Wed, Apr 10, 9:37 AM
nickdesaulniers closed D60488: [AsmPrinter] refactor to remove remove AsmVariant. NFC.
Wed, Apr 10, 9:37 AM · Restricted Project

Tue, Apr 9

nickdesaulniers updated the diff for D60488: [AsmPrinter] refactor to remove remove AsmVariant. NFC.
  • add FIXME: as per echristo
Tue, Apr 9, 4:54 PM · Restricted Project
nickdesaulniers updated the diff for D60488: [AsmPrinter] refactor to remove remove AsmVariant. NFC.
  • git-clang-format HEAD~
Tue, Apr 9, 2:47 PM · Restricted Project
nickdesaulniers created D60488: [AsmPrinter] refactor to remove remove AsmVariant. NFC.
Tue, Apr 9, 2:46 PM · Restricted Project
nickdesaulniers added a comment to D60428: [Aarch64AsmPrinter] support %c output template for global addresses.

How does that sound?

Tue, Apr 9, 11:01 AM · Restricted Project
nickdesaulniers added a comment to D60428: [Aarch64AsmPrinter] support %c output template for global addresses.

I have a mild preference for following most of the other backends so that we don't split the handling of 'c' across the generic and the target specific

Tue, Apr 9, 10:03 AM · Restricted Project

Mon, Apr 8

nickdesaulniers created D60428: [Aarch64AsmPrinter] support %c output template for global addresses.
Mon, Apr 8, 4:45 PM · Restricted Project

Wed, Apr 3

nickdesaulniers added a comment to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

Note that with:

  1. https://reviews.llvm.org/D60208 ("[X86] Extend boolean arguments to

inline-asm according to getBooleanType")

  1. https://reviews.llvm.org/D58260 ("[INLINER] allow inlining of

blockaddresses if sole uses are callbrs")

  1. https://reviews.llvm.org/D56571 ("[RFC prototype] Implementation of

asm-goto support in clang")

Wed, Apr 3, 9:47 AM · Restricted Project
nickdesaulniers added a comment to D56571: [RFC prototype] Implementation of asm-goto support in clang.

Note that with:

  1. https://reviews.llvm.org/D60208 ("[X86] Extend boolean arguments to

inline-asm according to getBooleanType")

  1. https://reviews.llvm.org/D58260 ("[INLINER] allow inlining of

blockaddresses if sole uses are callbrs")

  1. https://reviews.llvm.org/D56571 ("[RFC prototype] Implementation of

asm-goto support in clang")

Wed, Apr 3, 9:47 AM
nickdesaulniers added a comment to D60208: [X86] Extend boolean arguments to inline-asm according to getBooleanType.

Note that with:

  1. https://reviews.llvm.org/D60208 ("[X86] Extend boolean arguments to

inline-asm according to getBooleanType")

  1. https://reviews.llvm.org/D58260 ("[INLINER] allow inlining of

blockaddresses if sole uses are callbrs")

  1. https://reviews.llvm.org/D56571 ("[RFC prototype] Implementation of

asm-goto support in clang")

Wed, Apr 3, 9:47 AM · Restricted Project
nickdesaulniers updated subscribers of D60208: [X86] Extend boolean arguments to inline-asm according to getBooleanType.
Wed, Apr 3, 9:30 AM · Restricted Project

Tue, Apr 2

nickdesaulniers added inline comments to D55423: [LLD][ELF] - A fix for "linker script assignment loses relative nature of section" bug..
Tue, Apr 2, 3:38 AM · Restricted Project

Mon, Apr 1

nickdesaulniers created D60059: [Driver] implement -feverything.
Mon, Apr 1, 2:35 AM · Restricted Project, Restricted Project

Wed, Mar 27

nickdesaulniers retitled D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs from [INLINER] allow inlining of address taken blocks to [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Wed, Mar 27, 1:59 PM · Restricted Project
nickdesaulniers updated subscribers of D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Wed, Mar 27, 1:59 PM · Restricted Project
nickdesaulniers planned changes to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Wed, Mar 27, 1:54 PM · Restricted Project
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • undo one missed part from v1
  • - [CGSCCPassManager] don't walk references from blockaddress'
  • limit inlining blockaddresses to ones that are only used by callbr
Wed, Mar 27, 1:53 PM · Restricted Project
nickdesaulniers added a comment to D58797: [Sema] Add some compile time _FORTIFY_SOURCE diagnostics.

I added it in r357041.

Wed, Mar 27, 9:48 AM · Restricted Project

Mar 22 2019

nickdesaulniers added a comment to D58797: [Sema] Add some compile time _FORTIFY_SOURCE diagnostics.

Ah, I didn't consider that case. Presumably st is configured to have different sizes based on the target?

Mar 22 2019, 12:48 PM · Restricted Project

Mar 21 2019

nickdesaulniers added a comment to D58797: [Sema] Add some compile time _FORTIFY_SOURCE diagnostics.

This is causing false positive warnings for the Linux kernel:
https://github.com/ClangBuiltLinux/linux/issues/423
:(

Mar 21 2019, 10:24 PM · Restricted Project

Mar 6 2019

nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • undo one missed part from v1
Mar 6 2019, 4:50 PM · Restricted Project
nickdesaulniers planned changes to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Mar 6 2019, 4:50 PM · Restricted Project
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • rewrite approach to allow inlining of blockaddresses to proceed.
  • add base test case.
Mar 6 2019, 4:46 PM · Restricted Project
nickdesaulniers abandoned D59061: add two very basic test cases, comment out broken test for now, fix indentation.
Mar 6 2019, 4:44 PM · Restricted Project
nickdesaulniers created D59061: add two very basic test cases, comment out broken test for now, fix indentation.
Mar 6 2019, 4:44 PM · Restricted Project
nickdesaulniers added inline comments to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Mar 6 2019, 4:42 PM · Restricted Project
nickdesaulniers added a comment to D56571: [RFC prototype] Implementation of asm-goto support in clang.

which is making things hard for the folks testing this with the Linux kernel and needing to apply this patch themselves.

Mar 6 2019, 3:43 PM
nickdesaulniers committed rG212c8ac23f4f: [LoopRotate] fix crash encountered with callbr (authored by nickdesaulniers).
[LoopRotate] fix crash encountered with callbr
Mar 6 2019, 3:04 PM
nickdesaulniers committed rL355564: [LoopRotate] fix crash encountered with callbr.
[LoopRotate] fix crash encountered with callbr
Mar 6 2019, 3:04 PM
nickdesaulniers closed D58929: [LoopRotate] fix crash encountered with callbr.
Mar 6 2019, 3:04 PM · Restricted Project

Mar 4 2019

nickdesaulniers updated the diff for D58929: [LoopRotate] fix crash encountered with callbr.
  • remove dso_local local_unnamed_addr
  • remove attributes
  • replace existing tests with run of $ python llvm/utils/update_test_checks.py \ llvm/test/Transforms/LoopRotate/callbr.ll
Mar 4 2019, 4:28 PM · Restricted Project
nickdesaulniers created D58929: [LoopRotate] fix crash encountered with callbr.
Mar 4 2019, 3:17 PM · Restricted Project
nickdesaulniers added a comment to D56571: [RFC prototype] Implementation of asm-goto support in clang.

needs another rebase

Mar 4 2019, 1:02 PM
nickdesaulniers added a comment to D56571: [RFC prototype] Implementation of asm-goto support in clang.

Should the langref be updated (specifically the section on blockaddress):

This value only has defined behavior when used as an operand to the ‘indirectbr’ instruction, or for comparisons against null.

https://reviews.llvm.org/D53765 touched the langref, but I think the blockaddress section can be cleaned up.

Mar 4 2019, 11:26 AM

Feb 26 2019

nickdesaulniers abandoned D58655: lld: add support for aarch64be -m flags.

arm and aarch64 BE support would be nice to have, but at this time there's no real requirement on our side.

Feb 26 2019, 3:32 PM · Restricted Project

Feb 25 2019

nickdesaulniers updated subscribers of D58655: lld: add support for aarch64be -m flags.
Feb 25 2019, 7:00 PM · Restricted Project
nickdesaulniers updated the diff for D58655: lld: add support for aarch64be -m flags.
  • add test for other added -m variant
Feb 25 2019, 7:00 PM · Restricted Project
nickdesaulniers created D58655: lld: add support for aarch64be -m flags.
Feb 25 2019, 4:46 PM · Restricted Project

Feb 15 2019

nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • add two very basic test cases, comment out broken test for now, fix indentation
Feb 15 2019, 4:33 PM · Restricted Project
nickdesaulniers added inline comments to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Feb 15 2019, 3:10 PM · Restricted Project
nickdesaulniers updated the diff for D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
  • improve method comment and check the non-global constant case
Feb 15 2019, 3:09 PM · Restricted Project

Feb 14 2019

nickdesaulniers updated the summary of D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Feb 14 2019, 3:45 PM · Restricted Project
nickdesaulniers added a comment to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.

Posting code for now. I still need to fix the crash in the existing test and add some more tests, but looking for early feedback.

Feb 14 2019, 3:45 PM · Restricted Project
nickdesaulniers created D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Feb 14 2019, 3:44 PM · Restricted Project
nickdesaulniers committed rG6a84cd3b8eaa: Revert "[INLINER] allow inlining of address taken blocks" (authored by nickdesaulniers).
Revert "[INLINER] allow inlining of address taken blocks"
Feb 14 2019, 3:42 PM
nickdesaulniers added a reverting change for rG19e95fe61182: [INLINER] allow inlining of address taken blocks: rG6a84cd3b8eaa: Revert "[INLINER] allow inlining of address taken blocks".
Feb 14 2019, 3:42 PM
nickdesaulniers committed rL354082: Revert "[INLINER] allow inlining of address taken blocks".
Revert "[INLINER] allow inlining of address taken blocks"
Feb 14 2019, 3:42 PM
nickdesaulniers committed rGc3aefedc4697: Revert "Revert "[lld] Fix elf::unlinkAsync detached thread"" (authored by nickdesaulniers).
Revert "Revert "[lld] Fix elf::unlinkAsync detached thread""
Feb 14 2019, 3:41 PM
nickdesaulniers committed rL354081: Revert "Revert "[lld] Fix elf::unlinkAsync detached thread"".
Revert "Revert "[lld] Fix elf::unlinkAsync detached thread""
Feb 14 2019, 3:41 PM
nickdesaulniers committed rLLD354081: Revert "Revert "[lld] Fix elf::unlinkAsync detached thread"".
Revert "Revert "[lld] Fix elf::unlinkAsync detached thread""
Feb 14 2019, 3:41 PM
nickdesaulniers committed rG289d70cf5810: Revert "[lld] Fix elf::unlinkAsync detached thread" (authored by nickdesaulniers).
Revert "[lld] Fix elf::unlinkAsync detached thread"
Feb 14 2019, 3:40 PM
nickdesaulniers added a reverting change for rG2694810153cf: [lld] Fix elf::unlinkAsync detached thread: rG289d70cf5810: Revert "[lld] Fix elf::unlinkAsync detached thread".
Feb 14 2019, 3:39 PM
nickdesaulniers committed rLLD354080: Revert "[lld] Fix elf::unlinkAsync detached thread".
Revert "[lld] Fix elf::unlinkAsync detached thread"
Feb 14 2019, 3:39 PM
nickdesaulniers committed rL354080: Revert "[lld] Fix elf::unlinkAsync detached thread".
Revert "[lld] Fix elf::unlinkAsync detached thread"
Feb 14 2019, 3:39 PM
nickdesaulniers committed rG19e95fe61182: [INLINER] allow inlining of address taken blocks (authored by nickdesaulniers).
[INLINER] allow inlining of address taken blocks
Feb 14 2019, 3:36 PM