zturner (Zachary Turner)
User

Projects

User does not belong to any projects.

User Details

User Since
May 26 2014, 12:49 PM (173 w, 6 d)

Recent Activity

Thu, Sep 21

zturner added a comment to D38149: Fix off-by-one error in TarWriter..

Can you add the following tests?

Thu, Sep 21, 4:05 PM
zturner committed rL313928: Resubmit "[lit] Refactor out some more common lit configuration code.".
Resubmit "[lit] Refactor out some more common lit configuration code."
Thu, Sep 21, 3:18 PM
zturner committed rL313922: Revert "[lit] Refactor out some more common lit configuration code.".
Revert "[lit] Refactor out some more common lit configuration code."
Thu, Sep 21, 2:47 PM
zturner committed rL313919: [lit] Refactor out some more common lit configuration code..
[lit] Refactor out some more common lit configuration code.
Thu, Sep 21, 2:29 PM
zturner closed D37944: [lit] Move some of LLD and Clang's configuration code into LLVM shared configuration by committing rL313919: [lit] Refactor out some more common lit configuration code..
Thu, Sep 21, 2:29 PM
zturner committed rL313918: [lit] Actually do normalize the case of files in the config map..
[lit] Actually do normalize the case of files in the config map.
Thu, Sep 21, 2:29 PM
zturner added inline comments to D38153: Inhibit global lookups for symbols in the IR dynamic checks.
Thu, Sep 21, 2:11 PM · Restricted Project
zturner abandoned D37951: [zorg] Allow specification of svn update mode remotely.
Thu, Sep 21, 1:40 PM
zturner accepted D38150: Fix big-endian byte swap for WindowsResourceDumper..
Thu, Sep 21, 1:32 PM
zturner added a comment to D37951: [zorg] Allow specification of svn update mode remotely.

I later found out that you can force a complete deletion of the source tree by building from revision 0. Do you think this functionality is still useful given this realization?

Thu, Sep 21, 1:09 PM
zturner added inline comments to D38149: Fix off-by-one error in TarWriter..
Thu, Sep 21, 1:05 PM
zturner committed rL313892: [lit] Rename lld and clang lit configs to end in .py.
[lit] Rename lld and clang lit configs to end in .py
Thu, Sep 21, 10:39 AM
zturner committed rL313889: [lit] Don't norm case when inserting into the config map..
[lit] Don't norm case when inserting into the config map.
Thu, Sep 21, 10:03 AM
zturner committed rL313887: [lit] Add a test for the builtin config map..
[lit] Add a test for the builtin config map.
Thu, Sep 21, 9:20 AM
zturner closed D38105: [lit] Add a test for the config map functionality by committing rL313887: [lit] Add a test for the builtin config map..
Thu, Sep 21, 9:20 AM

Wed, Sep 20

zturner committed rL313849: [lit] Make lit support config files with .py extension..
[lit] Make lit support config files with .py extension.
Wed, Sep 20, 5:26 PM
zturner closed D37838: [lit] Allow lit config files to have a .py extension by committing rL313849: [lit] Make lit support config files with .py extension..
Wed, Sep 20, 5:26 PM
zturner updated the diff for D38105: [lit] Add a test for the config map functionality.

Made the test slightly stricter.

Wed, Sep 20, 3:47 PM
zturner created D38105: [lit] Add a test for the config map functionality.
Wed, Sep 20, 3:44 PM
zturner accepted D37923: Implement interactive command interruption.

seems fine to me, I agree with the point about non-determinism, due to the nature of signals and the fact this is only intended to provide a best-effort interruption.

Wed, Sep 20, 3:39 PM
zturner committed rL313807: [lit] Undo the patch to stop writing pyc files..
[lit] Undo the patch to stop writing pyc files.
Wed, Sep 20, 1:32 PM
zturner abandoned D38015: [lit] Use inodes instead of realpaths in the config map.

So apparently on Windows st_ino is 0 until Python 3.4. So, that's a deal breaker.

Wed, Sep 20, 12:47 PM
zturner added inline comments to D37957: [TableGen] Some simple optimizations to TableGen execution time.
Wed, Sep 20, 11:30 AM
zturner committed rL313783: [TableGen] Some optimizations to TableGen..
[TableGen] Some optimizations to TableGen.
Wed, Sep 20, 11:03 AM
zturner closed D37957: [TableGen] Some simple optimizations to TableGen execution time by committing rL313783: [TableGen] Some optimizations to TableGen..
Wed, Sep 20, 11:03 AM
zturner committed rL313782: [TableGen] Add a DenseMapInfo for MachineValueType..
[TableGen] Add a DenseMapInfo for MachineValueType.
Wed, Sep 20, 11:02 AM
zturner added inline comments to D37957: [TableGen] Some simple optimizations to TableGen execution time.
Wed, Sep 20, 10:51 AM
zturner added inline comments to D37283: [llvm-rc] Serialize HTML resources to .res files (serialization, pt 1)..
Wed, Sep 20, 10:45 AM
zturner updated the diff for D37957: [TableGen] Some simple optimizations to TableGen execution time.

Fixed suggestions.

Wed, Sep 20, 10:22 AM
zturner committed rL313765: [lit] Reverse path list when updating environment vars..
[lit] Reverse path list when updating environment vars.
Wed, Sep 20, 10:10 AM
zturner added inline comments to D37283: [llvm-rc] Serialize HTML resources to .res files (serialization, pt 1)..
Wed, Sep 20, 9:45 AM
zturner committed rL313763: Make libcxx tests work when llvm sources are not present..
Make libcxx tests work when llvm sources are not present.
Wed, Sep 20, 9:03 AM
zturner closed D38057: Try again to fix libcxx CMake so that it doesn't break when no LLVM source tree is available by committing rL313763: Make libcxx tests work when llvm sources are not present..
Wed, Sep 20, 9:03 AM
zturner added a comment to D38057: Try again to fix libcxx CMake so that it doesn't break when no LLVM source tree is available.

Thanks, I will submit this in a couple of hours when I get into the office.

Wed, Sep 20, 6:07 AM

Tue, Sep 19

zturner added inline comments to D38010: lit.py: Allow configs and local configs to have a setup_script entry.
Tue, Sep 19, 5:42 PM
zturner committed rL313698: Make lit stop writing pyc files..
Make lit stop writing pyc files.
Tue, Sep 19, 4:52 PM
zturner added a reviewer for D38010: lit.py: Allow configs and local configs to have a setup_script entry: rnk.
Tue, Sep 19, 4:40 PM
zturner added a comment to D38010: lit.py: Allow configs and local configs to have a setup_script entry.

Alright then, if you need it you need it :)

Tue, Sep 19, 4:39 PM
zturner added a comment to D38010: lit.py: Allow configs and local configs to have a setup_script entry.

You mentioned you want to make this work with the multiprocessing pool. That worries me a little bit because different processes are going to be using the same shared output dir (which isn't created up front by the infrastructure), if I understand correctly. Like if you have A and A/B and A/C, then we will run the setup script 3 times in parallel all using the same shared output folder. Is this going to be a source of flakiness?

Ah, that's not what happens. In the scenario you described, the script gets run for A/Output/Shared, A/B/Output/Shared, and A/C/Output/Shared. There's no feature (currently) for having a common %shared_output across multiple test directories because I didn't want to deal with synchronization. (Something like that would mean bringing back %T, though perhaps under a different name.)

Tue, Sep 19, 4:07 PM
zturner added a comment to D38010: lit.py: Allow configs and local configs to have a setup_script entry.

Actually, I guess I'm a bit confused. What is this solving that you can't already do in a local config? Couldn't you just embed the stuff you want to execute in the local config?

I felt uncomfortable making the local config files actually have side effects, but really I want to follow up with this by moving the setup tasks into the parallel processing as actual dependencies. This is just the first iteration of the feature. If you think that's not a good direction, though, we could go with one of the other options.

(This also allows for the inheritance of setup logic into subdirectories, but that's not a critical feature for my use case, and indeed it's likely unexpected in many cases.)

Tue, Sep 19, 3:39 PM
zturner added a comment to D37756: [lit] Force site configs to be run before source-tree configs.

I'm unhappy that I can't run lit's own tests without having to configure, though. That seems like a regression.

(Yes, they do depend on FileCheck, but I might have one of those already installed on my system.)

Tue, Sep 19, 3:29 PM
zturner created D38057: Try again to fix libcxx CMake so that it doesn't break when no LLVM source tree is available.
Tue, Sep 19, 3:27 PM
zturner updated the diff for D37957: [TableGen] Some simple optimizations to TableGen execution time.

Rebased on top of changes.

Tue, Sep 19, 1:23 PM
zturner added inline comments to D38010: lit.py: Allow configs and local configs to have a setup_script entry.
Tue, Sep 19, 11:42 AM
zturner created D38047: [libcxxabi / lit] Write generated llvm-lit script for libcxxabi.
Tue, Sep 19, 11:27 AM
zturner added a comment to D37923: Implement interactive command interruption.

We should have a test. The test would need to use pexpect or something similar. If anyone has any pointer on how to make a test for this, please chime in. I was thinking just a pexpect based test.

Tue, Sep 19, 10:45 AM
zturner added a comment to D37923: Implement interactive command interruption.

Give me a few more hours, if there's a way to make this work with line_iterator I'd really prefer that since I think it improves readability. Can you confirm that if you were able to write:

Tue, Sep 19, 10:38 AM
zturner committed rL313643: Resubmit "Fix llvm-lit script generation in libcxx.".
Resubmit "Fix llvm-lit script generation in libcxx."
Tue, Sep 19, 10:20 AM

Mon, Sep 18

zturner added a comment to D38010: lit.py: Allow configs and local configs to have a setup_script entry.

Actually, I guess I'm a bit confused. What is this solving that you can't already do in a local config? Couldn't you just embed the stuff you want to execute in the local config?

Mon, Sep 18, 8:37 PM
zturner added a comment to D38016: [lit] Make lit stop writing .pyc files.
In D38016#874699, @dlj wrote:

Would it make more sense to set this as an SVN property?

http://svnbook.red-bean.com/nightly/en/svn.advanced.props.special.ignore.html

svn propset svn:global-ignores . '*.pyc'

(Or as svn:ignore on the lit directories)

Mon, Sep 18, 8:32 PM
zturner added inline comments to D38010: lit.py: Allow configs and local configs to have a setup_script entry.
Mon, Sep 18, 8:29 PM
zturner added a comment to D38010: lit.py: Allow configs and local configs to have a setup_script entry.

Why not just have lit.setup-folder.cfg similar to how we have lit.local.cfg?

Mon, Sep 18, 8:26 PM
zturner added a comment to D37997: [libcxx / lit] Make libcxx work correctly with the new testing workflow.

Had to revert this because of http://green.lab.llvm.org/green/job/libcxx_master_cmake/670/consoleFull

Mon, Sep 18, 8:17 PM
zturner committed rL313607: Revert "Fix llvm-lit script generation in libcxx.".
Revert "Fix llvm-lit script generation in libcxx."
Mon, Sep 18, 8:13 PM
zturner added a comment to D38015: [lit] Use inodes instead of realpaths in the config map.
In D38015#874692, @dlj wrote:

I think the previous logic should have yielded a fairly stable identifier... do you have an example off-hand of a case that fails?

(i.e., I would have expected the call to os.path.realpath() to have done the moral equivalent of looking up a canonical path based on the inode, which normpath() alone won't do.)

Mon, Sep 18, 8:07 PM
zturner committed rL313606: Fix llvm-lit script generation in libcxx..
Fix llvm-lit script generation in libcxx.
Mon, Sep 18, 7:48 PM
zturner closed D37997: [libcxx / lit] Make libcxx work correctly with the new testing workflow by committing rL313606: Fix llvm-lit script generation in libcxx..
Mon, Sep 18, 7:48 PM
zturner added inline comments to D37946: [lit] Fix some Python 3 compatibility issues..
Mon, Sep 18, 7:34 PM
zturner updated the diff for D38016: [lit] Make lit stop writing .pyc files.

Removed code that belonged in another patch

Mon, Sep 18, 5:49 PM
zturner updated the diff for D38015: [lit] Use inodes instead of realpaths in the config map.

Added missing file.

Mon, Sep 18, 5:48 PM
zturner added a comment to D38016: [lit] Make lit stop writing .pyc files.

Sorry, ignore the inode changes, they are part of a different patch.

Mon, Sep 18, 5:44 PM
zturner created D38016: [lit] Make lit stop writing .pyc files.
Mon, Sep 18, 5:43 PM
zturner created D38015: [lit] Use inodes instead of realpaths in the config map.
Mon, Sep 18, 5:41 PM
zturner committed rL313601: Set svn:ignore property on *.pyc..
Set svn:ignore property on *.pyc.
Mon, Sep 18, 5:15 PM
zturner committed rL313594: [lit] Use realpath when adding to the config map..
[lit] Use realpath when adding to the config map.
Mon, Sep 18, 4:38 PM
zturner committed rL313590: Fix inverted regex search..
Fix inverted regex search.
Mon, Sep 18, 4:15 PM
zturner committed rL313580: [lit] Fix a Python 3 compatibility issue..
[lit] Fix a Python 3 compatibility issue.
Mon, Sep 18, 3:32 PM
zturner committed rL313579: [lit] Update clang and lld to use new config helpers..
[lit] Update clang and lld to use new config helpers.
Mon, Sep 18, 3:28 PM
zturner committed rL313574: [cmake] Add a simple function to dump all variables..
[cmake] Add a simple function to dump all variables.
Mon, Sep 18, 2:53 PM
zturner added inline comments to D37923: Implement interactive command interruption.
Mon, Sep 18, 2:44 PM
zturner added inline comments to D37997: [libcxx / lit] Make libcxx work correctly with the new testing workflow.
Mon, Sep 18, 2:30 PM
zturner created D37997: [libcxx / lit] Make libcxx work correctly with the new testing workflow.
Mon, Sep 18, 2:13 PM
zturner added a comment to D31951: TableGen support for parameterized register class information.

Please see https://bugs.llvm.org/show_bug.cgi?id=28222#c20 for a discussion of the performance implications of this patch. TL;DR - This has introduced a severe performance regression in tblgen (on the order of 4x slowdown) even for architectures such as X86 which according to the patch description should not be affected by this change.

Mon, Sep 18, 9:45 AM

Sun, Sep 17

zturner added a comment to D37957: [TableGen] Some simple optimizations to TableGen execution time.

Is it the PadToColumn calls that are slowing down the formatting?

Sun, Sep 17, 12:11 PM
zturner updated the diff for D37957: [TableGen] Some simple optimizations to TableGen execution time.

Changed another std::set to a DenseSet, and changed a couple of sets to vectors. This shaves off another couple of seconds, I'm now down from 45s (no patch) -> 26s (with patch), for a 1.73x combined speedup.

Sun, Sep 17, 10:40 AM
zturner updated the diff for D37957: [TableGen] Some simple optimizations to TableGen execution time.

Updated from suggestions.

Sun, Sep 17, 8:40 AM

Sat, Sep 16

zturner added a comment to D37957: [TableGen] Some simple optimizations to TableGen execution time.

To be clear, this patch is intended to be NFC. So the formatting changes aren't here. Just throwing it out there for potential commentary. I really have no idea how any of this black magic works, so if there's some obvious reason why people need the output to be formatted I'm happy to be wrong (well not happy necessarily, happy would be an extra 11s of my life back every time I type ninja)

Sat, Sep 16, 11:19 PM
zturner created D37957: [TableGen] Some simple optimizations to TableGen execution time.
Sat, Sep 16, 11:16 PM
zturner created D37951: [zorg] Allow specification of svn update mode remotely.
Sat, Sep 16, 4:47 PM
zturner committed rL313469: Try to fix some failing bots..
Try to fix some failing bots.
Sat, Sep 16, 12:22 PM
zturner committed rL313468: [llvm-symbolizer] Fix coff-dwarf.test.
[llvm-symbolizer] Fix coff-dwarf.test
Sat, Sep 16, 12:04 PM
zturner committed rL313467: Resubmit "Add a shared llvm.lit module that all test suites can use.".
Resubmit "Add a shared llvm.lit module that all test suites can use."
Sat, Sep 16, 11:47 AM
zturner committed rL313466: [lit] Fix some Python 3 compatibility issues..
[lit] Fix some Python 3 compatibility issues.
Sat, Sep 16, 11:47 AM
zturner added a comment to D37946: [lit] Fix some Python 3 compatibility issues..

Going to go ahead and submit this since it unblocks me and I tested in both Py2 and Py3. So consider this a request for optional post-commit review :) (although if it somehow breaks something on the bots I'll go ahead and revert).

Sat, Sep 16, 11:18 AM
zturner created D37946: [lit] Fix some Python 3 compatibility issues..
Sat, Sep 16, 10:29 AM
zturner committed rL313461: [lit] Fix the lit unit tests..
[lit] Fix the lit unit tests.
Sat, Sep 16, 8:49 AM
zturner committed rL313460: [lit] Add a single process mode..
[lit] Add a single process mode.
Sat, Sep 16, 8:33 AM

Fri, Sep 15

zturner committed rL313429: Revert lit changes related to lit.llvm module..
Revert lit changes related to lit.llvm module.
Fri, Sep 15, 5:54 PM
zturner committed rL313428: [lit] Fix another Python 3 error..
[lit] Fix another Python 3 error.
Fri, Sep 15, 5:44 PM
zturner committed rL313427: [lit] Better check for integral value..
[lit] Better check for integral value.
Fri, Sep 15, 5:39 PM
zturner committed rL313426: Resubmit "[lit] Add a lit.llvm module that all llvm projects can use".
Resubmit "[lit] Add a lit.llvm module that all llvm projects can use"
Fri, Sep 15, 5:27 PM
zturner created D37944: [lit] Move some of LLD and Clang's configuration code into LLVM shared configuration.
Fri, Sep 15, 5:15 PM
zturner committed rL313407: Resubmit "[lit] Force site configs to run before source-tree configs".
Resubmit "[lit] Force site configs to run before source-tree configs"
Fri, Sep 15, 3:12 PM
zturner added a comment to D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs".

I will try to land this now, will be watching the sanitizer bots this time.

Fri, Sep 15, 3:06 PM
zturner added inline comments to D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs".
Fri, Sep 15, 3:01 PM
zturner updated the diff for D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs".

Incorporated suggestions from beanz@ offline. Specifically, the concern is that someone could download and install lit via a package manager, but we would still try to add an out of tree source directory. This update makes it so that we generate llvm-lit iff a source tree is available, and we *use* the generated llvm-lit whenever -DLLVM_EXTERNAL_LIT is not specified.

Fri, Sep 15, 2:20 PM
zturner added a comment to D37926: Fix the SIGINT handlers.

It turns out the function this called, DispatchInputInterrupt, already acquires a mutex. Maybe put the synchronization in there? Then you don't have to reproduce the synchronization in both MI and LLDB

Fri, Sep 15, 1:34 PM
zturner added a comment to D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs".

Another thing to think about. We already support a -DLIT_COMMAND=<path> cmake argument. If the user specifies that, it will just use whatever lit.py they specify.

Fri, Sep 15, 1:30 PM
zturner added a comment to D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs".
In D37920#872453, @rnk wrote:

This is problematic because people already complain about how compiler-rt depends on the LLVM source tree for gtest sources: https://bugs.llvm.org/show_bug.cgi?id=33693

Fri, Sep 15, 1:15 PM
zturner added a reviewer for D37920: Resubmit (Fixed) "[lit] Force site configs to be run before source tree configs": rnk.
Fri, Sep 15, 12:49 PM