Page MenuHomePhabricator

zturner (Zachary Turner)
User

Projects

User does not belong to any projects.

User Details

User Since
May 26 2014, 12:49 PM (334 w, 5 h)

Recent Activity

Tue, Oct 13

zturner added a comment to D88850: [lit, windows] Fix the search for git tools on Windows to check the path first.

@stella.stamenova Strangely, your initial bug description sounds like a deadlock initiated by tar_version.communicate() in https://github.com/llvm/llvm-project/blob/f7941d98091827b8d0b6fdabb731e38c99f44b13/lld/test/lit.cfg.py#L110
Are the lit tests using python 3.6 and not the 2.7 that you seem to have installed as well? In any case, I wonder if setting stderr=open(os.devnull) at lld/test/lit.cfg.py#L108, would fix the issue? Or perhaps just check the 'Threads' tab in Process Explorer on tar.exe, see why it is blocked.

It does, doesn't it! But it's not. If I manually kill tar.exe, then any of the tests that use the git tools time out and fail as well, because all of the tools hang similarly. I attached a debugger to tar.exe after it hung and it is getting an access violation when trying to call GetCommandLineA, so I ran the tests as a different user and they passed. It looks like the tools that come with git can't run successfully under an account that has restricted permissions while the tools that come with GnuWin32 can (also, any other tools we are using in the tests run just fine under the same restricted account, the git tools are the exception). This makes me question whether using the git tools by default is the right choice - the failure was not obvious and not easy to track down. Granted, it is not one that will likely happen on a developer machine, but anyone who is trying to set up automated testing on Windows might (and likely should) be using a restricted account. If we do decide to proceed with using the git tools by default, this should at least be documented and gnuwin32 should be an alternative. Thoughts?

Thanks for investigating! Isn't that related to access rights to the binaries, rather than an issue with the Git tools?

I haven't had time to dig deeper into this, but I don't think it's an issue of access *to* the binaries. The same process that runs the tests, runs git before that and it succeeds. I suppose the git installation could set different permissions on the different paths in the install, but I checked them and they appear to be uniform.

Tue, Oct 13, 9:52 AM · Restricted Project

Tue, Oct 6

zturner added a comment to D84380: [lit] Support running tests on Windows without GnuWin32..

To me this seems to have added an extra dimension. Previously, lit would look for the tools on PATH, now it was made to look in two places.

Tue, Oct 6, 5:33 PM · Restricted Project

Mon, Oct 5

zturner added inline comments to D88850: [lit, windows] Fix the search for git tools on Windows to check the path first.
Mon, Oct 5, 5:18 PM · Restricted Project

Sun, Oct 4

zturner added a comment to D84380: [lit] Support running tests on Windows without GnuWin32..
In D84380#2309853, @aganea wrote: Maybe if L28 wasn't there, things would work correctly if you already had the required tools in %PATH%? Would you possibly try that please?

I will try it. I'll let you know if it makes a difference.

Yes, that works. We don't end up prepending the lit path and the tests work as before.

Sun, Oct 4, 1:21 PM · Restricted Project

Tue, Sep 22

zturner updated subscribers of D84380: [lit] Support running tests on Windows without GnuWin32..

That's.... Pretty strange. I was pretty sure I landed it. Feel free to
do this on my behalf. Sorry about that.

Tue, Sep 22, 5:12 PM · Restricted Project

Aug 3 2020

zturner added a comment to D84380: [lit] Support running tests on Windows without GnuWin32..

I went ahead and committed this. Let's see if I break anything, it's been a long time since I've committed a patch and I haven't committed anything since the git switchover :D

Aug 3 2020, 1:49 PM · Restricted Project
zturner added a comment to D84423: [lit] Allow lit.which() to find executables which already have an extension.

Perhaps now you ;-)

Aug 3 2020, 8:55 AM · Restricted Project
zturner added a comment to D84423: [lit] Allow lit.which() to find executables which already have an extension.

This looks fine to me. Is there a lit expert/owner who should also review?

Aug 3 2020, 8:55 AM · Restricted Project
zturner added a comment to D84380: [lit] Support running tests on Windows without GnuWin32..

I'm not sure the first branch in the new code adds any value.

The first branch is important because lit_tools_path is up to the individual local config to define. In other words, if the user does not specifically write config.lit_tools_path = Foo/Bar then this will be undefined and they'll get strange errors. In all LLVM cases, the configs do this, and this knowledge has been propagated across all LLVM lit configs by way of copy/paste. But it's a silent / undocumented requirement that caused me some confusion until I tracked it down. So it seems better to be resilient in the case of it not being there.

Aug 3 2020, 8:53 AM · Restricted Project
zturner updated the diff for D84380: [lit] Support running tests on Windows without GnuWin32..
Aug 3 2020, 8:49 AM · Restricted Project

Jul 23 2020

zturner created D84423: [lit] Allow lit.which() to find executables which already have an extension.
Jul 23 2020, 9:08 AM · Restricted Project

Jul 22 2020

Herald added a project to D84380: [lit] Support running tests on Windows without GnuWin32.: Restricted Project.
Jul 22 2020, 7:14 PM · Restricted Project

Mar 6 2020

zturner added a comment to D69585: Add option to instantiate templates already in the PCH.

If the current listed reviewers on this patch are not the best people for reviewing this, would one of them please suggest a more appropriate reviewer so we can get some traction on this?

Mar 6 2020, 12:43 PM · Restricted Project

Jan 27 2020

zturner added a comment to D69585: Add option to instantiate templates already in the PCH.

Adding a ping since it's been a week with no additional feedback for the author.

Jan 27 2020, 9:42 AM · Restricted Project

Dec 6 2019

zturner added a comment to D70553: [clang-apply-replacements] Add command line option to overwrite readonly files..

Can you add a test case for this functionality?

Dec 6 2019, 10:21 AM · Restricted Project, Restricted Project

Dec 2 2019

zturner committed rG64f74bf72eb4: [clang-tidy] Rewrite modernize-avoid-bind check. (authored by zturner).
[clang-tidy] Rewrite modernize-avoid-bind check.
Dec 2 2019, 3:39 PM
zturner closed D70368: [clang-tidy] Rewrite modernize-avoid-bind check.
Dec 2 2019, 3:39 PM · Restricted Project, Restricted Project

Nov 22 2019

zturner updated the diff for D70368: [clang-tidy] Rewrite modernize-avoid-bind check.

Addressed suggestions from @Eugene.Zelenko

Nov 22 2019, 8:53 AM · Restricted Project, Restricted Project

Nov 21 2019

zturner created D70553: [clang-apply-replacements] Add command line option to overwrite readonly files..
Nov 21 2019, 11:09 AM · Restricted Project, Restricted Project
zturner updated the diff for D70368: [clang-tidy] Rewrite modernize-avoid-bind check.
  • Updated documentation for this check
  • Incorporated additional suggestions from @aaron.ballman
  • Fixed an invalid transformation that was generated when binding a member function and the second argument of bind (the object pointer) was a placeholder. Test is added for this case as well.
  • Fixed an invalid transformation that was generated when a placeholder index was entirely skipped, as in the call std::bind(add, 0, _2); In this case we need to generate an unused placeholder in the first position of the resulting lambda's parameter list.
  • Added a clang-tidy option PermissiveParameterList which appends auto&&... to the end of every lambda's placeholder list. This is necessary in some situations to prevent clang-tidy from applying a fixit that causes the code to no longer compile.
Nov 21 2019, 11:09 AM · Restricted Project, Restricted Project

Nov 19 2019

zturner updated the diff for D70368: [clang-tidy] Rewrite modernize-avoid-bind check.

Forgot to remove spurious llvm:: namespace qualifications.

Nov 19 2019, 3:46 PM · Restricted Project, Restricted Project
zturner updated the diff for D70368: [clang-tidy] Rewrite modernize-avoid-bind check.

Updated with suggestions from @aaron.ballman

Nov 19 2019, 3:38 PM · Restricted Project, Restricted Project

Nov 18 2019

zturner added inline comments to D70368: [clang-tidy] Rewrite modernize-avoid-bind check.
Nov 18 2019, 3:13 PM · Restricted Project, Restricted Project

Nov 17 2019

zturner created D70368: [clang-tidy] Rewrite modernize-avoid-bind check.
Nov 17 2019, 6:39 PM · Restricted Project, Restricted Project
zturner abandoned D69872: Improve modernize-avoid-bind to support more types of expressions.

I have a more comprehensive version of this patch that I'll upload separately.

Nov 17 2019, 6:30 PM

Nov 12 2019

zturner added a comment to D69825: [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation.

Does this change crash recovery semantics in any meaningful way? Will we still be able to get stack traces on all platforms when the compiler crashes?

Nov 12 2019, 10:37 AM · Restricted Project, Restricted Project

Nov 6 2019

zturner updated the diff for D69872: Improve modernize-avoid-bind to support more types of expressions.

Minor cleanup -- moved isFixitSupported logic to its own function.

Nov 6 2019, 10:18 AM

Nov 5 2019

zturner created D69872: Improve modernize-avoid-bind to support more types of expressions.
Nov 5 2019, 4:54 PM

Oct 10 2019

zturner committed rG79f243296654: [MSVC] Automatically add atlmfc folder to include and libpath. (authored by zturner).
[MSVC] Automatically add atlmfc folder to include and libpath.
Oct 10 2019, 1:27 PM
zturner committed rG02c53868116d: [PDB] Fix bug when using multiple PCH header objects with the same name. (authored by zturner).
[PDB] Fix bug when using multiple PCH header objects with the same name.
Oct 10 2019, 1:27 PM
zturner closed D68736: [MSVC] Automatically add atlmfc include and lib directories as system paths..
Oct 10 2019, 1:27 PM · Restricted Project
zturner closed D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..
Oct 10 2019, 1:27 PM · Restricted Project
zturner committed rL374443: [MSVC] Automatically add atlmfc folder to include and libpath..
[MSVC] Automatically add atlmfc folder to include and libpath.
Oct 10 2019, 1:26 PM
zturner committed rL374442: [PDB] Fix bug when using multiple PCH header objects with the same name..
[PDB] Fix bug when using multiple PCH header objects with the same name.
Oct 10 2019, 1:26 PM
zturner added a comment to D29039: [clang-format] Proposal for clang-format -r option.

In Windows you just write a Python script to do this, and this works everywhere, not just on one platform or the other, so bash isn't even necessary and Python is easy to write so I wouldn't really say it's "even harder". If you google for run-clang-format.py you'll find a script that actually branches out and does this in parallel. There's a lot of logic and smarts you could bake into an external tool which can then be used for many different programs, not just clang-format.

Oct 10 2019, 9:45 AM · Restricted Project, Restricted Project, Restricted Project
zturner added a comment to D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

Planning to commit this this afternoon unless someone has objections.

Oct 10 2019, 9:36 AM · Restricted Project

Oct 9 2019

zturner added a comment to D68736: [MSVC] Automatically add atlmfc include and lib directories as system paths..

This matches the behavior of cl.

Are you sure? In a bare environment, cl.exe doesn't include any system paths, not even to the standard library. It actually uses the INCLUDE environment variable for those paths. Granted, VCVARSALL sets that (and other environment variables), but it's not innate behavior of cl.exe.

Oct 9 2019, 3:43 PM · Restricted Project
zturner created D68736: [MSVC] Automatically add atlmfc include and lib directories as system paths..
Oct 9 2019, 2:52 PM · Restricted Project
zturner updated the diff for D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

Rebased this onto tip of trunk. I'm *finally* going to submit this.

Oct 9 2019, 2:25 PM · Restricted Project

Oct 7 2019

zturner closed D13617: Fix ref-counting of Python objects.
Oct 7 2019, 7:35 AM · Restricted Project
zturner closed D17492: Case sensitive path compare on Windows breaks breakpoints.
Oct 7 2019, 7:11 AM · Restricted Project
zturner closed D19445: Refactor some more PDB reading code into DebugInfoPDB.
Oct 7 2019, 7:04 AM · Restricted Project
zturner closed D19634: Read the rest of the substreams from DBI, and parse source file information.
Oct 7 2019, 7:04 AM · Restricted Project
zturner closed D27780: Make OptionDefinition structure store a StringRef.
Oct 7 2019, 6:36 AM · Restricted Project

Sep 24 2019

zturner added a reviewer for D44609: [clang-format] New option BeforeLambdaBody to manage lambda line break inside function parameter call (in Allman style): krasimir.

What's the status of this patch, out of curiosity? It doesn't seem there were any objections to the original idea, just that nobody with ownership over clang-format is still actively participating in the review.

Sep 24 2019, 1:14 PM · Restricted Project, Restricted Project

Sep 4 2019

zturner added inline comments to D67168: [Windows] Add support of watchpoints to `ProcessWindows`.
Sep 4 2019, 4:01 PM · Restricted Project, Restricted Project

Aug 26 2019

zturner added a comment to D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

Finally got around to trying to commit this.

Aug 26 2019, 10:06 AM · Restricted Project

Aug 19 2019

zturner added a comment to D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

Ugh nevermind, you can't because of the binary files. Fineeeeee.

Send the binaries to my email.

Aug 19 2019, 3:47 PM · Restricted Project
zturner added a comment to D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

Ugh nevermind, you can't because of the binary files. Fineeeeee.

Aug 19 2019, 3:31 PM · Restricted Project
zturner added a comment to D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..

I know it's super lame to request this, but would one of you mind submitting on my behalf? I don't have SVN installed and it seems like git llvm push still requires it (unless there is a more modern workflow that doesn't require SVN anymore). If I find myself submitting more and more patches then I'll bite the bullet.

Aug 19 2019, 3:31 PM · Restricted Project
zturner created D66431: [PDB] Fix bug when using multiple PCH header objects with the same name..
Aug 19 2019, 11:03 AM · Restricted Project

Aug 13 2019

zturner accepted D64939: Add a proposal for a libc project under the LLVM umbrella..

No objections from me on the wording of the layering portion

Aug 13 2019, 4:01 PM · Restricted Project

Jul 16 2019

zturner added inline comments to D64428: Teach `llvm-pdbutil pretty -native` about `-injected-sources`.
Jul 16 2019, 1:32 PM · Restricted Project
zturner added inline comments to D64428: Teach `llvm-pdbutil pretty -native` about `-injected-sources`.
Jul 16 2019, 9:05 AM · Restricted Project

Apr 29 2019

zturner added inline comments to D61277: [PDB] Fix hash function used to write /src/headerblock.
Apr 29 2019, 4:20 PM · Restricted Project
zturner accepted D61277: [PDB] Fix hash function used to write /src/headerblock.
Apr 29 2019, 1:20 PM · Restricted Project

Apr 19 2019

zturner added a comment to rG41fe3a54c261: Ensure that ManagedStatic is constant initialized in MSVC 2017 & 2019.

I just built against trunk with VS 2019 and ran into this exact issue. llvm-tblgen had no command line options. Are more fixes still in the pipeline or was this thought to be sufficient?

Apr 19 2019, 9:07 PM

Apr 12 2019

zturner committed rGe1bc9758cb43: [PDB Docs] Add some prose describing public and global symbols. (authored by zturner).
[PDB Docs] Add some prose describing public and global symbols.
Apr 12 2019, 8:52 AM
zturner committed rL358289: [PDB Docs] Add some prose describing public and global symbols..
[PDB Docs] Add some prose describing public and global symbols.
Apr 12 2019, 8:52 AM

Apr 11 2019

zturner committed rG528b01e99847: Fix sphinx documentation warning. (authored by zturner).
Fix sphinx documentation warning.
Apr 11 2019, 10:29 AM
zturner committed rG4afa6dcabe68: [PDB Docs] Add skeleton of documentation for CodeView symbols. (authored by zturner).
[PDB Docs] Add skeleton of documentation for CodeView symbols.
Apr 11 2019, 10:29 AM
zturner committed rL358198: Fix sphinx documentation warning..
Fix sphinx documentation warning.
Apr 11 2019, 10:28 AM
zturner committed rL358197: [PDB Docs] Add skeleton of documentation for CodeView symbols..
[PDB Docs] Add skeleton of documentation for CodeView symbols.
Apr 11 2019, 10:28 AM
zturner added inline comments to D60547: Add checks for MSVC in LLVM_FALLTHROUGH and LLVM_NODISCARD.
Apr 11 2019, 9:21 AM · Restricted Project
zturner added reviewers for D60547: Add checks for MSVC in LLVM_FALLTHROUGH and LLVM_NODISCARD: zturner, rnk.
Apr 11 2019, 9:21 AM · Restricted Project

Apr 10 2019

zturner committed rG5a736c9bbf0b: [PDB Docs] Start documenting CodeView Type Records. (authored by zturner).
[PDB Docs] Start documenting CodeView Type Records.
Apr 10 2019, 11:26 AM
zturner committed rL358119: [PDB Docs] Start documenting CodeView Type Records..
[PDB Docs] Start documenting CodeView Type Records.
Apr 10 2019, 11:25 AM

Apr 9 2019

zturner committed rG6bafd5b3f70c: [PDB Docs] Clarifications and fixes for DBI Stream. (authored by zturner).
[PDB Docs] Clarifications and fixes for DBI Stream.
Apr 9 2019, 10:38 AM
zturner committed rL358022: [PDB Docs] Clarifications and fixes for DBI Stream..
[PDB Docs] Clarifications and fixes for DBI Stream.
Apr 9 2019, 10:37 AM

Apr 8 2019

zturner accepted D60354: llvm-undname: Fix more crashes and asserts on invalid inputs.
Apr 8 2019, 12:44 PM · Restricted Project
zturner added inline comments to D60354: llvm-undname: Fix more crashes and asserts on invalid inputs.
Apr 8 2019, 11:55 AM · Restricted Project

Apr 5 2019

zturner committed rGcb70fe1c69a2: [PDB Docs] Add documentation for the hash table format. (authored by zturner).
[PDB Docs] Add documentation for the hash table format.
Apr 5 2019, 3:08 PM
zturner committed rG91d6caf6ec1f: [PDB Docs] The IPI Stream actually has index 4. (authored by zturner).
[PDB Docs] The IPI Stream actually has index 4.
Apr 5 2019, 3:08 PM
zturner committed rL357826: [PDB Docs] Add documentation for the hash table format..
[PDB Docs] Add documentation for the hash table format.
Apr 5 2019, 3:07 PM
zturner committed rL357825: [PDB Docs] The IPI Stream actually has index 4..
[PDB Docs] The IPI Stream actually has index 4.
Apr 5 2019, 3:07 PM
zturner committed rGbcf7f3c573ca: [PDB Docs] Delete * LINKER * Stream information. (authored by zturner).
[PDB Docs] Delete * LINKER * Stream information.
Apr 5 2019, 2:15 PM
zturner committed rL357819: [PDB Docs] Delete * LINKER * Stream information..
[PDB Docs] Delete * LINKER * Stream information.
Apr 5 2019, 2:14 PM
zturner committed rG6eb7ab97a58d: Try to fix Sphinx bot. (authored by zturner).
Try to fix Sphinx bot.
Apr 5 2019, 11:09 AM
zturner committed rL357790: Try to fix Sphinx bot..
Try to fix Sphinx bot.
Apr 5 2019, 11:05 AM
zturner committed rG5eeb28f8e0cc: [PDB Docs] Finish documentation for PDB Info Stream. (authored by zturner).
[PDB Docs] Finish documentation for PDB Info Stream.
Apr 5 2019, 10:59 AM
zturner committed rL357788: [PDB Docs] Finish documentation for PDB Info Stream..
[PDB Docs] Finish documentation for PDB Info Stream.
Apr 5 2019, 10:59 AM
zturner committed rGd248f027955c: [PDB Docs] Add info about the hash adjustment buffer. (authored by zturner).
[PDB Docs] Add info about the hash adjustment buffer.
Apr 5 2019, 10:12 AM
zturner committed rL357784: [PDB Docs] Add info about the hash adjustment buffer..
[PDB Docs] Add info about the hash adjustment buffer.
Apr 5 2019, 10:12 AM
zturner committed rG85cc79551d71: Add documentation for PDB TPI/IPI Stream. (authored by zturner).
Add documentation for PDB TPI/IPI Stream.
Apr 5 2019, 9:43 AM
zturner committed rL357777: Add documentation for PDB TPI/IPI Stream..
Add documentation for PDB TPI/IPI Stream.
Apr 5 2019, 9:43 AM
zturner accepted D57533: lit: support long paths on Windows.
Apr 5 2019, 9:04 AM · Restricted Project

Apr 3 2019

zturner updated the diff for D57911: [LLDB] Remove all abandoned LLDB bots.

Also remove LLDBTriggerable.py

Apr 3 2019, 3:47 PM · Restricted Project
zturner updated the diff for D57911: [LLDB] Remove all abandoned LLDB bots.

Add the scheduler back but remove the android builder only.

Apr 3 2019, 3:42 PM · Restricted Project
zturner accepted D60210: llvm-undname: Name a pair. No behavior change..
Apr 3 2019, 2:42 PM · Restricted Project
zturner accepted D60202: llvm-undname: Fix a crash-on-invalid.
Apr 3 2019, 2:42 PM · Restricted Project
zturner accepted D60206: llvm-undname: Fix an assert-on-invalid.
Apr 3 2019, 2:42 PM · Restricted Project
zturner accepted D60204: llvm-undname: Fix an assert-on-invalid.
Apr 3 2019, 2:42 PM · Restricted Project
zturner updated the diff for D57911: [LLDB] Remove all abandoned LLDB bots.

Rebased

Apr 3 2019, 1:25 PM · Restricted Project
zturner added inline comments to D60152: Fix and simplify PrepareCommandsForSourcing.
Apr 3 2019, 12:50 PM · Restricted Project
zturner accepted D60207: llvm-undname: Fix a crash-on-invalid.
Apr 3 2019, 9:24 AM · Restricted Project

Apr 2 2019

zturner committed rL357513: [NativePDB] Don't fail on import modules..
[NativePDB] Don't fail on import modules.
Apr 2 2019, 12:41 PM
zturner committed rGa31347f17d1f: [NativePDB] Don't fail on import modules. (authored by zturner).
[NativePDB] Don't fail on import modules.
Apr 2 2019, 12:40 PM
zturner committed rLLDB357513: [NativePDB] Don't fail on import modules..
[NativePDB] Don't fail on import modules.
Apr 2 2019, 12:40 PM

Apr 1 2019

zturner added reviewers for D59862: Add a function for mapping PDBSymbol index IDs to lldb::LangTypes: amccarth, aleksandr.urakov, stella.stamenova.
Apr 1 2019, 8:13 PM
zturner added a comment to D59862: Add a function for mapping PDBSymbol index IDs to lldb::LangTypes.

Can't you just write a function that, every time you call it, traces the symbol back to its original compile unit (you can get this from the PdbCompilandSymId), get the CompileUnit item, and ask it for its language? The part that seems unnecessary is the cache.

For a general PDBSymbol? There's a getCompilandId for PDBSymbolFunction and PDBSymbolData which get the compliand from the DIALines they hold. There's a GetPDBCompilandByUID that accepts an arbitrary ID and dyn_cast_or_null's it to a Compiland. I don't see anything else given that a general PDBSymbol doesn't have any access to it's parents.

Apr 1 2019, 8:08 PM