Page MenuHomePhabricator

jyknight (James Y Knight)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 27 2015, 11:23 AM (221 w, 5 d)

Recent Activity

Thu, Jun 13

jyknight added a comment to D63244: Add --undefined-glob which is an --undefined with wildcard pattern match..

Actually linker scripts do support metacharacter escaping (although, it seems lld does not support this correctly, yet).

Thu, Jun 13, 8:32 AM · Restricted Project

Wed, Jun 5

jyknight added a comment to D62798: Explicitly detect recursive response files.

Comment updates SGTM.

Wed, Jun 5, 2:04 PM · Restricted Project
jyknight accepted D62798: Explicitly detect recursive response files.

I like it. Some minor suggestions for a few extra comments, but other than that LGTM.

Wed, Jun 5, 11:36 AM · Restricted Project

Tue, Jun 4

jyknight committed rGdbb4322e511b: [lldb] Fix out-of-bounds read after c3ea7c66fec021867e005ad1b02f3c7e80feaa85… (authored by jyknight).
[lldb] Fix out-of-bounds read after c3ea7c66fec021867e005ad1b02f3c7e80feaa85…
Tue, Jun 4, 8:25 AM
jyknight committed rL362510: [lldb] Fix out-of-bounds read after c3ea7c66fec021867e005ad1b02f3c7e80feaa85.
[lldb] Fix out-of-bounds read after c3ea7c66fec021867e005ad1b02f3c7e80feaa85
Tue, Jun 4, 8:24 AM

Thu, May 30

jyknight added a comment to D60748: Fix i386 struct and union parameter alignment.

I don't think this was correct (where by "correct", there, I mean "what GCC does", as this patch is intended to match GCC behavior).

Thu, May 30, 9:41 AM · Restricted Project
jyknight added a comment to D62035: [AST] const-ify ObjC inherited class search.

I don't really have much to say about this, and the patch is probably fine, but I do note that most of the other accessors on this class also return mutable objects.

Thu, May 30, 7:14 AM · Restricted Project

May 23 2019

jyknight added a comment to D62319: IR: add 'byval(<ty>)' variant to 'byval' function parameters.

One of the other suggestions was to pass a _type_ as a parameter to byval. IMO that would be the nicest idea (but I don't know if it's infeasibly difficult?)

May 23 2019, 8:34 AM · Restricted Project
jyknight accepted D60017: [git] Be more specific when looking for llvm-svn.
May 23 2019, 7:05 AM · Restricted Project

May 22 2019

jyknight added a comment to D60017: [git] Be more specific when looking for llvm-svn.

Sorry for dropping this, a couple more comments, then I think it's good.

May 22 2019, 2:39 PM · Restricted Project
jyknight committed rGb2ece169ed60: Add back --sysroot support for darwin header search. (authored by jyknight).
Add back --sysroot support for darwin header search.
May 22 2019, 1:42 PM
jyknight committed rL361429: Add back --sysroot support for darwin header search..
Add back --sysroot support for darwin header search.
May 22 2019, 1:37 PM
jyknight committed rC361429: Add back --sysroot support for darwin header search..
Add back --sysroot support for darwin header search.
May 22 2019, 1:37 PM
jyknight closed D62268: Add back --sysroot support for darwin header search..
May 22 2019, 1:37 PM · Restricted Project
jyknight added a comment to D62268: Add back --sysroot support for darwin header search..

This LGTM.

When I did the refactor, all the code was only using -isysroot (and never accessing --sysroot), so I thought only -isysroot was relevant on Darwin. Seems like I was wrong.

May 22 2019, 1:37 PM · Restricted Project
jyknight created D62268: Add back --sysroot support for darwin header search..
May 22 2019, 1:18 PM · Restricted Project

May 9 2019

jyknight added inline comments to D61267: Update Phabricator.rst.
May 9 2019, 3:17 PM · Restricted Project

May 6 2019

jyknight committed rG1fe312b34b74: PR41183: Don't emit strict-prototypes warning for an implicit function… (authored by jyknight).
PR41183: Don't emit strict-prototypes warning for an implicit function…
May 6 2019, 2:39 PM
jyknight committed rL360084: PR41183: Don't emit strict-prototypes warning for an implicit function.
PR41183: Don't emit strict-prototypes warning for an implicit function
May 6 2019, 2:35 PM
jyknight committed rC360084: PR41183: Don't emit strict-prototypes warning for an implicit function.
PR41183: Don't emit strict-prototypes warning for an implicit function
May 6 2019, 2:35 PM
jyknight closed D59711: PR41183: Don't emit Wstrict-prototypes warning for an implicit function declaration..
May 6 2019, 2:35 PM · Restricted Project

May 2 2019

jyknight added inline comments to D61411: [SelectionDAG] Expand ADD/SUBCARRY.
May 2 2019, 7:30 AM · Restricted Project

Apr 19 2019

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

There shouldn't be an empty string ("") in the asm output -- that should be a reference to the "l_yes" label, not the empty string. That seems very weird...

Apr 19 2019, 7:21 PM
jyknight added a comment to D59711: PR41183: Don't emit Wstrict-prototypes warning for an implicit function declaration..

Ping.

Apr 19 2019, 3:15 PM · Restricted Project

Apr 9 2019

jyknight added inline comments to D60274: [ELF] Implement Dependent Libraries Feature.
Apr 9 2019, 8:00 AM · Restricted Project
jyknight added a comment to D59711: PR41183: Don't emit Wstrict-prototypes warning for an implicit function declaration..

Ping.

Apr 9 2019, 5:11 AM · Restricted Project
jyknight accepted D60397: [Sparc] Fix incorrect MI insertion position for spilling f128..

Thanks!

Apr 9 2019, 2:46 AM · Restricted Project
jyknight committed rT357986: Fix siod's gc implementation when used with GLIBC..
Fix siod's gc implementation when used with GLIBC.
Apr 9 2019, 2:32 AM
jyknight committed rL357986: Fix siod's gc implementation when used with GLIBC..
Fix siod's gc implementation when used with GLIBC.
Apr 9 2019, 2:20 AM
jyknight closed D60039: Fix the bug of garbage collection of siod..
Apr 9 2019, 2:20 AM · Restricted Project

Apr 8 2019

jyknight accepted D60039: Fix the bug of garbage collection of siod..
Apr 8 2019, 7:57 AM · Restricted Project
jyknight added a comment to D60039: Fix the bug of garbage collection of siod..

If you change to condition on GLIBC instead of linux, I think this is fine to commit (although it still seems unfortunate to me that we're carrying an abandoned codebase which depends on weird broken stuff like this...)

Apr 8 2019, 5:42 AM · Restricted Project
jyknight added a comment to D59509: Make static constructors + destructors minsize + cold (except for in -O0).

Looks reasonable to me.

Apr 8 2019, 3:22 AM · Restricted Project
jyknight added inline comments to D60017: [git] Be more specific when looking for llvm-svn.
Apr 8 2019, 3:11 AM · Restricted Project
jyknight added a comment to D60397: [Sparc] Fix incorrect MI insertion position for spilling f128..

Can you please write a test case for this? There's some existing sparcv9 spill tests in llvm/test/CodeGen/SPARC/64spill.ll.

Apr 8 2019, 2:59 AM · Restricted Project

Apr 6 2019

jyknight added inline comments to D60274: [ELF] Implement Dependent Libraries Feature.
Apr 6 2019, 3:13 PM · Restricted Project

Apr 5 2019

jyknight added a comment to D60274: [ELF] Implement Dependent Libraries Feature.

This commit message is rather bare-bones -- I hope that the ultimate commit message will be updated to contain more than just a reference to the RFC thread.

Apr 5 2019, 11:31 AM · Restricted Project

Apr 4 2019

jyknight committed rGa0401744185b: Revert [X86] When using Win64 ABI, exit with error if SSE is disabled for… (authored by jyknight).
Revert [X86] When using Win64 ABI, exit with error if SSE is disabled for…
Apr 4 2019, 12:07 PM
jyknight committed rL357718: Revert [X86] When using Win64 ABI, exit with error if SSE is disabled for….
Revert [X86] When using Win64 ABI, exit with error if SSE is disabled for…
Apr 4 2019, 12:04 PM
jyknight added a comment to D42512: [X86] When using Win64 ABI, exit with error if SSE is disabled for varargs.

This patch is not correct -- the crash is not with varargs functions specifically, llvm also crashes for a function declared to explicitly take a float/double. The Win64 calling convention code assigns values to xmm registers, but it should not when sse is disabled.

Apr 4 2019, 11:58 AM · Restricted Project

Apr 3 2019

jyknight added a comment to D60224: [TargetLowering] Extend bool args to inline-asm according to getBooleanType.

After looking at this a bit more, I realized that this is still insufficient. There's *many* more target-specific constraints than just x86 "i" which sign extend constant integer arguments -- and we'll need to apply this change to every one of them, in all targets.

Apr 3 2019, 2:03 PM · Restricted Project
jyknight added a comment to D60208: [X86] Extend boolean arguments to inline-asm according to getBooleanType.

This looks like the same bug is present in the generic code in llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp as well.

Apr 3 2019, 10:42 AM · Restricted Project
jyknight added a comment to D60039: Fix the bug of garbage collection of siod..

I would question whether it's actually worth it to attempt to keep software working that seems to have been abandoned for a decade as part of the llvm test suite? Should this code just be removed, instead of patched?

Apr 3 2019, 10:35 AM · Restricted Project

Apr 1 2019

jyknight added a comment to D60043: [FileCheck] Fix FileCheck.cpp compilation on Solaris.

Sounds like this file is missing #include <math.h> (it probably only #include <cmath>). If it wants to use ::log10, it should #include <math.h>. If it wants to use <cmath>, it should use std::log10.

Apr 1 2019, 8:28 AM · Restricted Project

Mar 29 2019

jyknight accepted D58070: [DAGCombine] Prune unnused nodes..

It'd be nice if we knew why adding new nodes to the worklist seemed to cause an issue, but the reduced form as here seems okay as far as it goes.

Mar 29 2019, 9:36 AM · Restricted Project
jyknight accepted D58068: [DAG] Set up infrastructure to avoid smart constructor-based dangling nodes.

Looks fine again.

Mar 29 2019, 8:38 AM · Restricted Project

Mar 28 2019

jyknight added inline comments to D59837: Add "git llvm revert" subcommand.
Mar 28 2019, 2:02 PM · Restricted Project

Mar 27 2019

jyknight accepted D59897: [DAGCombiner] Teach TokenFactor pruning to peek through lifetime nodes.
Mar 27 2019, 1:36 PM · Restricted Project

Mar 26 2019

jyknight added a comment to D30471: [SDAG] Relax conditions under stores of loaded values can be merged.

Not sure if the PPC issue was a different one, but the commit that reverted this was:

Mar 26 2019, 7:29 AM

Mar 25 2019

jyknight added inline comments to D58070: [DAGCombine] Prune unnused nodes..
Mar 25 2019, 12:14 PM · Restricted Project
jyknight accepted D58068: [DAG] Set up infrastructure to avoid smart constructor-based dangling nodes.
Mar 25 2019, 12:14 PM · Restricted Project

Mar 22 2019

jyknight created D59711: PR41183: Don't emit Wstrict-prototypes warning for an implicit function declaration..
Mar 22 2019, 12:36 PM · Restricted Project
jyknight committed rGc0e6b8ac3ad4: IR: Support parsing numeric block ids, and emit them in textual output. (authored by jyknight).
IR: Support parsing numeric block ids, and emit them in textual output.
Mar 22 2019, 11:28 AM
jyknight committed rL356789: IR: Support parsing numeric block ids, and emit them in textual output..
IR: Support parsing numeric block ids, and emit them in textual output.
Mar 22 2019, 11:28 AM
jyknight committed rC356789: IR: Support parsing numeric block ids, and emit them in textual output..
IR: Support parsing numeric block ids, and emit them in textual output.
Mar 22 2019, 11:27 AM
jyknight closed D58548: IR: Support parsing numeric block ids, and emit them in textual output..
Mar 22 2019, 11:27 AM · Restricted Project, Restricted Project

Mar 20 2019

Herald added a project to D44373: Fix reading objects created with -fembed-bitcode-marker.: Restricted Project.

Thanks for fixing this. LGTM.

Mar 20 2019, 7:29 AM · Restricted Project

Mar 18 2019

jyknight added inline comments to D58070: [DAGCombine] Prune unnused nodes..
Mar 18 2019, 3:01 PM · Restricted Project
jyknight added a comment to D58068: [DAG] Set up infrastructure to avoid smart constructor-based dangling nodes.

Could you add a comment to the CL description noting that a bunch of the calls to AddToWorklist in DAGCombiner.cpp that follow a DAG.getNode() are now redundant, and should be cleaned up in the future.

Mar 18 2019, 12:43 PM · Restricted Project
jyknight added a comment to D58548: IR: Support parsing numeric block ids, and emit them in textual output..

Sorry, forgot to re-ping this in a timely manner. :)

Mar 18 2019, 12:41 PM · Restricted Project, Restricted Project
jyknight accepted D59346: [X86] Add gcc rotate intrinsics to ia32intrin.h.

Looks good.

Mar 18 2019, 12:41 PM · Restricted Project

Mar 14 2019

jyknight added a comment to rG087968716c3e: Sync with upstream.

It looks like this was generated because a pull request against the upstream repo was created containing this commit.

Mar 14 2019, 9:30 AM

Mar 6 2019

jyknight added a comment to D58154: Add support for -fpermissive..

Ah -- I now understand your concern, and managing user expectations appropriately does seem like a potential concern.

Mar 6 2019, 9:04 AM · Restricted Project

Mar 5 2019

jyknight added a comment to D58998: Replace function template (plus explicit specializations) by non-template overloads..

Is there any reason this needs to be a template -- can't these just be changed to function overloads, instead of template specializations?

Mar 5 2019, 3:35 PM · Restricted Project
jyknight added a comment to D58154: Add support for -fpermissive..

The errors disabled by this feature are default-error warnings -- you can already get the same effect by using -Wno-<lots-of-things>. Why is it bad to additionally allow -fpermissive to disable them? (If we have any diagnostics which are currently default-on-warnings which should not _ever_ be disable-able, then maybe we should just fix those?)

Mar 5 2019, 8:41 AM · Restricted Project

Mar 4 2019

jyknight accepted D58154: Add support for -fpermissive..
Mar 4 2019, 12:48 PM · Restricted Project
jyknight added a comment to D58154: Add support for -fpermissive..

Hm -- in GCC, -fpermissive has nothing at all to do with -pedantic/-pedantic-errors, but I suppose it should be fine to do this way.

Mar 4 2019, 12:48 PM · Restricted Project

Mar 2 2019

jyknight committed rGcf03bd92d64a: Tweak r355278 for compatibility with gcc 6 and earlier. (authored by jyknight).
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:55 PM
jyknight committed rL355280: Tweak r355278 for compatibility with gcc 6 and earlier..
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:54 PM
jyknight committed rC355280: Tweak r355278 for compatibility with gcc 6 and earlier..
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:54 PM
jyknight committed rG1ce395f25e29: Tweak r355278 for compatibility with gcc 6 and earlier. (authored by jyknight).
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:20 PM
jyknight committed rL355279: Tweak r355278 for compatibility with gcc 6 and earlier..
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:20 PM
jyknight committed rC355279: Tweak r355278 for compatibility with gcc 6 and earlier..
Tweak r355278 for compatibility with gcc 6 and earlier.
Mar 2 2019, 1:20 PM
jyknight added a comment to D57914: [Driver] Allow enum SanitizerOrdinal to represent more than 64 different sanitizer checks, NFC..

The intricate initialization-order workarounds apparently don't work in all build modes, so I've updated this code to have constexpr functions and initializations in r355278.

Mar 2 2019, 1:04 PM · Restricted Project, Restricted Project
jyknight committed rG47c777fe4102: Make the new SanitizerMask code added in r355190 constexpr. (authored by jyknight).
Make the new SanitizerMask code added in r355190 constexpr.
Mar 2 2019, 12:22 PM
jyknight committed rC355278: Make the new SanitizerMask code added in r355190 constexpr..
Make the new SanitizerMask code added in r355190 constexpr.
Mar 2 2019, 12:22 PM
jyknight committed rL355278: Make the new SanitizerMask code added in r355190 constexpr..
Make the new SanitizerMask code added in r355190 constexpr.
Mar 2 2019, 12:22 PM

Feb 27 2019

jyknight committed rGf33b1f49b76a: Fixup compilation/test failures after r354960 and r355013. (authored by jyknight).
Fixup compilation/test failures after r354960 and r355013.
Feb 27 2019, 1:49 PM
jyknight committed rCRT355034: Fixup compilation/test failures after r354960 and r355013..
Fixup compilation/test failures after r354960 and r355013.
Feb 27 2019, 1:48 PM
jyknight committed rL355034: Fixup compilation/test failures after r354960 and r355013..
Fixup compilation/test failures after r354960 and r355013.
Feb 27 2019, 1:48 PM

Feb 26 2019

jyknight accepted D56593: [SelectionDAG][RFC] Allow the user to specify a memeq function (v5)..

Probably worth adding a note to the release notes, something like "The optimizer will now convert calls to memcmp into a calls to bcmp in some circumstances. Users who are building freestanding code (not depending on the platform's libc) without specifying -ffreestanding may need to either pass -fno-builtin-bcmp, or provide a bcmp function."

Feb 26 2019, 6:38 AM · Restricted Project

Feb 22 2019

jyknight updated the diff for D58548: IR: Support parsing numeric block ids, and emit them in textual output..

Minor tweaks per comments.

Feb 22 2019, 2:50 PM · Restricted Project, Restricted Project
jyknight added a comment to D58548: IR: Support parsing numeric block ids, and emit them in textual output..

I like this idea, and I don’t think the textual IR central is too important. A few things:

  • Changes to the IR should always be discussed on llvm-dev. Did this already happen?
Feb 22 2019, 12:12 PM · Restricted Project, Restricted Project
jyknight updated the diff for D58548: IR: Support parsing numeric block ids, and emit them in textual output..

Add some wording to LangRef and clang-format.

Feb 22 2019, 12:12 PM · Restricted Project, Restricted Project
jyknight created D58548: IR: Support parsing numeric block ids, and emit them in textual output..
Feb 22 2019, 7:27 AM · Restricted Project, Restricted Project

Feb 20 2019

jyknight added a comment to D57601: Seperate volatility and atomicity/ordering in SelectionDAG.

Question for Reviewers: Going through uses of isVolatile in backend code, I see suspicious bits in Lania, ARM, and Hexagon. What's the best way to handle this? I can easily apply the workaround I mention for out of tree backends, or I could make them equally conservative for isAtomic. The other in tree backends appear to be fine, though I'd welcome review from folks knowledgeable of non-x86 backends.

Feb 20 2019, 9:48 AM · Restricted Project

Feb 19 2019

jyknight added inline comments to D57450: [RISCV] Set MaxAtomicInlineWidth and MaxAtomicPromoteWidth for RV32/RV64 targets with atomics.
Feb 19 2019, 10:05 AM · Restricted Project
jyknight added inline comments to D58379: [compiler-rt] Intercept the bcmp() function..
Feb 19 2019, 7:08 AM · Restricted Project, Restricted Project

Feb 16 2019

jyknight added a comment to D57400: Add a .gitignore file to the root that ignores any files outside of the project directories..

I still don't like it...It's different, unusual, and IMO surprising to have such a wildcard ignore.

Feb 16 2019, 5:09 PM

Feb 15 2019

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

I'm concerned that "nocapture" is not sufficient to describe the necessary property here.

Feb 15 2019, 12:21 PM · Restricted Project
jyknight added inline comments to D58260: [INLINER] allow inlining of blockaddresses if sole uses are callbrs.
Feb 15 2019, 10:31 AM · Restricted Project

Feb 13 2019

jyknight added a comment to D58091: Customize warnings for missing built-in type.

I think this warning (-Wbuiltin-requires-header) doesn't really make sense as its own warning.

Feb 13 2019, 8:28 PM · Restricted Project
jyknight added a comment to D56593: [SelectionDAG][RFC] Allow the user to specify a memeq function (v5)..

OK, I'm happy with all of that.

Feb 13 2019, 12:31 PM · Restricted Project
jyknight accepted D58120: [Builtins] Treat `bcmp` as a builtin..

Looks reasonable to me.

Feb 13 2019, 11:09 AM · Restricted Project

Feb 11 2019

jyknight added a comment to D56593: [SelectionDAG][RFC] Allow the user to specify a memeq function (v5)..

It'd be great to see this somewhat more widely publicized, outside of just the clang community. If libc implementors are aware of the gains and are willing to provide an actually-faster bcmp implementation, it'd be a lot better, than having this optimization that doesn't really optimize anything without users providing their own bcmp implementation.

Feb 11 2019, 10:34 AM · Restricted Project

Feb 9 2019

jyknight committed rG751fe286dc39: [opaque pointer types] Cleanup CGBuilder's Create*GEP. (authored by jyknight).
[opaque pointer types] Cleanup CGBuilder's Create*GEP.
Feb 9 2019, 2:22 PM
jyknight committed rC353629: [opaque pointer types] Cleanup CGBuilder's Create*GEP..
[opaque pointer types] Cleanup CGBuilder's Create*GEP.
Feb 9 2019, 2:22 PM
jyknight committed rL353629: [opaque pointer types] Cleanup CGBuilder's Create*GEP..
[opaque pointer types] Cleanup CGBuilder's Create*GEP.
Feb 9 2019, 2:22 PM
jyknight closed D57767: [opaque pointer types] Cleanup CGBuilder's Create*GEP..
Feb 9 2019, 2:22 PM · Restricted Project, Restricted Project

Feb 8 2019

jyknight committed rGae2f95121969: [opaque pointer types] Update calls to CreateCall to pass the function type in… (authored by jyknight).
[opaque pointer types] Update calls to CreateCall to pass the function type in…
Feb 8 2019, 11:32 AM