zturner (Zachary Turner)
User

Projects

User does not belong to any projects.

User Details

User Since
May 26 2014, 12:49 PM (156 w, 2 d)

Recent Activity

Today

zturner accepted D33463: [llvm-pdbdump] [yaml2pdb] always include object file name in module info.
Wed, May 24, 5:05 PM
zturner added inline comments to D33475: [pdb] pad source file name buffer at the end instead of the beginning.
Wed, May 24, 5:04 PM
zturner added inline comments to D33463: [llvm-pdbdump] [yaml2pdb] always include object file name in module info.
Wed, May 24, 4:11 PM
zturner added inline comments to D33475: [pdb] pad source file name buffer at the end instead of the beginning.
Wed, May 24, 4:06 PM
zturner updated the diff for D33480: [CodeView Type Merging] Try hard not to deserialize records when re-writing type indices.

Raise no-hash logic up out of the hasher.

Wed, May 24, 12:39 PM
zturner created D33506: Don't keep re-allocating the temp serializer..
Wed, May 24, 10:03 AM
zturner created D33503: Make BinaryStreamReader::readCString a bit faster..
Wed, May 24, 9:38 AM
zturner added a comment to D33475: [pdb] pad source file name buffer at the end instead of the beginning.

I'm slightly confused by the summary. This patch changes where the names are written to. How do we know that right versus changing where the names are read from?

Wed, May 24, 9:20 AM

Yesterday

zturner updated the diff for D33480: [CodeView Type Merging] Try hard not to deserialize records when re-writing type indices.

Minor improvement. Store the temporary storage in the type hasher so that we don't re-allocate on every record, but only when a record is larger than any other record we've seen.

Tue, May 23, 10:17 PM
zturner created D33480: [CodeView Type Merging] Try hard not to deserialize records when re-writing type indices.
Tue, May 23, 9:23 PM
zturner added a comment to D33475: [pdb] pad source file name buffer at the end instead of the beginning.

I think you should be able to write a test for this too using a similar technique as mentioned in the previous review. Just create a yaml file with a module that contains a couple of source files. In theory you can omit any field you don't care about.

Tue, May 23, 7:48 PM
zturner added a comment to D33463: [llvm-pdbdump] [yaml2pdb] always include object file name in module info.

Can you add a test for this? It's really easy to generate yaml -> pdb tests now, just write a yaml file with everything cut out except for the fields you care about. It should pick up default values for everything else. Take a look at test\DebugInfo\PDB\Inputs\one-symbol.yaml for an example.

Tue, May 23, 7:44 PM
zturner committed rL303711: Fix broken build..
Fix broken build.
Tue, May 23, 5:35 PM
zturner committed rL303708: git-llvm script should add .exe on Windows..
git-llvm script should add .exe on Windows.
Tue, May 23, 5:28 PM
zturner committed rL303707: Don't do a full scan of the type stream before processing records..
Don't do a full scan of the type stream before processing records.
Tue, May 23, 5:26 PM
zturner added a reviewer for D33471: [asan] Remove allow_user_segv_handler on Windows.: rnk.

This seems ok to me, especially since there is no test coverage for it on Windows. rnk@, any thoughts?

Tue, May 23, 4:13 PM
zturner committed rL303676: [CodeView] Eliminate redundant hashes and allocations..
[CodeView] Eliminate redundant hashes and allocations.
Tue, May 23, 11:56 AM
zturner accepted D33428: [PDB] Hash types up front when merging types instead of using StringMap.
Tue, May 23, 11:22 AM
zturner committed rL303640: Revert "Make TypeSerializer's StringMap use the same allocator.".
Revert "Make TypeSerializer's StringMap use the same allocator."
Tue, May 23, 8:50 AM

Mon, May 22

zturner added inline comments to D33428: [PDB] Hash types up front when merging types instead of using StringMap.
Mon, May 22, 8:04 PM
zturner committed rL303577: Implement various flavors of type merging..
Implement various flavors of type merging.
Mon, May 22, 2:08 PM
zturner closed D33417: Implement various flavors of type merging by committing rL303577: Implement various flavors of type merging..
Mon, May 22, 2:07 PM
zturner committed rL303576: Make TypeSerializer's StringMap use the same allocator..
Make TypeSerializer's StringMap use the same allocator.
Mon, May 22, 2:07 PM
zturner created D33417: Implement various flavors of type merging.
Mon, May 22, 9:53 AM

Sat, May 20

zturner added a comment to D33376: Revert "Add functionality to cvtres to parse all entries in res file.".

You don't have to create Phabricator reviews for reverts. If something is broken on the bots, just push the revert. When you do, however, two things to keep in mind.

Sat, May 20, 10:15 AM

Fri, May 19

zturner accepted D33180: Add functionality to cvtres to parse all entries in res file..

lgtm after reflowing the comment.

Fri, May 19, 5:58 PM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Fri, May 19, 4:06 PM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Fri, May 19, 2:03 PM
zturner committed rL303446: Resubmit "[CodeView] Provide a common interface for type collections.".
Resubmit "[CodeView] Provide a common interface for type collections."
Fri, May 19, 12:40 PM
zturner added inline comments to D33323: [llvm-pdbdump] Add the ability to merge PDBs.
Fri, May 19, 11:40 AM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Fri, May 19, 11:39 AM
zturner added a comment to D33059: Create an shared include directory for gtest helper functions.

but I'm not sure if sticking our own directory inside of a directory of third party code would be weird.

I also think i would be weird. I'd like us to keep it separate.

Fri, May 19, 11:32 AM
zturner committed rL303440: [lit] Take the last error when executing pipelines..
[lit] Take the last error when executing pipelines.
Fri, May 19, 11:25 AM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Fri, May 19, 11:23 AM

Thu, May 18

zturner committed rL303410: Fix compilation failure..
Fix compilation failure.
Thu, May 18, 11:38 PM
zturner committed rL303409: Revert "[CodeView] Provide a common interface for type collections.".
Revert "[CodeView] Provide a common interface for type collections."
Thu, May 18, 11:11 PM
zturner committed rL303408: Don't crash if someone tries to visit an empty type stream..
Don't crash if someone tries to visit an empty type stream.
Thu, May 18, 10:31 PM
zturner committed rL303407: [CodeView] Reduce memory usage in TypeSerializer..
[CodeView] Reduce memory usage in TypeSerializer.
Thu, May 18, 10:10 PM
zturner committed rL303403: Fix a broken test..
Fix a broken test.
Thu, May 18, 8:17 PM
zturner committed rL303397: Fix crasher in CodeView test..
Fix crasher in CodeView test.
Thu, May 18, 6:10 PM
zturner committed rL303394: Fix another warning..
Fix another warning.
Thu, May 18, 4:44 PM
zturner committed rL303391: Fix some build errors and warnings..
Fix some build errors and warnings.
Thu, May 18, 4:26 PM
zturner committed rL303390: [CodeView] Raise the source to ID map out of the TypeStreamMerger..
[CodeView] Raise the source to ID map out of the TypeStreamMerger.
Thu, May 18, 4:17 PM
zturner closed D33267: [lld] Write the correct age and machine type to the PDB..
Thu, May 18, 4:17 PM
zturner committed rL303389: [llvm-pdbdump] Add the ability to merge PDBs..
[llvm-pdbdump] Add the ability to merge PDBs.
Thu, May 18, 4:17 PM
zturner committed rL303388: [CodeView] Provide a common interface for type collections..
[CodeView] Provide a common interface for type collections.
Thu, May 18, 4:17 PM
zturner closed D33293: Provide a common interface for all collections of types. by committing rL303388: [CodeView] Provide a common interface for type collections..
Thu, May 18, 4:16 PM
zturner added inline comments to D33323: [llvm-pdbdump] Add the ability to merge PDBs.
Thu, May 18, 4:01 PM
zturner added a comment to D33323: [llvm-pdbdump] Add the ability to merge PDBs.

What would be the advantage of having it be a separate tool? I kind of like the fact that I don't have to remember which tool to use when I want something, which kind of solves the problem of tools with overlapping responsibilities. For example, I can never remember whether to use llvm-objdump or llvm-readobj. Seems to me they should be the same tool. Like "if you want to do something to a PDB, use llvm-pdbdump". That said, I do agree it does more than just dumping now, so perhaps a new name is in order soon. I wouldn't want to mix a change like that in with other changes though.

Thu, May 18, 11:22 AM
zturner updated the diff for D33323: [llvm-pdbdump] Add the ability to merge PDBs.

Added a slightly more complicated test case involving two identical procedure types.

Thu, May 18, 10:34 AM
zturner created D33323: [llvm-pdbdump] Add the ability to merge PDBs.
Thu, May 18, 10:11 AM
zturner committed rL303352: [COFF] Fix interaction between /DEBUG and /PDB.
[COFF] Fix interaction between /DEBUG and /PDB
Thu, May 18, 8:28 AM
zturner closed D33302: Don't output a PDB unless /DEBUG is specified by committing rL303352: [COFF] Fix interaction between /DEBUG and /PDB.
Thu, May 18, 8:28 AM
zturner committed rL303351: Fix some minor issues in PDB parsing library..
Fix some minor issues in PDB parsing library.
Thu, May 18, 8:28 AM

Wed, May 17

zturner updated the diff for D33059: Create an shared include directory for gtest helper functions.

Moved the folder. I really would like to put it in utils\unittest\googletest\include\gtest\Support, because then you could write

Wed, May 17, 8:25 PM
zturner updated the diff for D33302: Don't output a PDB unless /DEBUG is specified.

Removed the /DEBUGPDB option since it is unreferenced in the code. If the intent is to force writing a PDB, then all you have to do is specify /DEBUG, and you are guaranteed to get a PDB.

Wed, May 17, 5:37 PM
zturner added a comment to D33302: Don't output a PDB unless /DEBUG is specified.

Yes, MSVC ignores /pdb option if you don't pass /DEBUG.

Wed, May 17, 4:07 PM
zturner created D33302: Don't output a PDB unless /DEBUG is specified.
Wed, May 17, 3:59 PM
zturner reopened D33293: Provide a common interface for all collections of types..

doh, I didn't actually submit this. I attached the wrong review to the commit message in Phabricator.

Wed, May 17, 3:20 PM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Wed, May 17, 2:05 PM
zturner committed rL303297: Add some helpers for manipulating BinaryStreamRefs..
Add some helpers for manipulating BinaryStreamRefs.
Wed, May 17, 1:56 PM
zturner committed rL303294: [BinaryStream] Reduce the amount of boiler plate needed to use..
[BinaryStream] Reduce the amount of boiler plate needed to use.
Wed, May 17, 1:36 PM
zturner closed D33293: Provide a common interface for all collections of types. by committing rL303294: [BinaryStream] Reduce the amount of boiler plate needed to use..
Wed, May 17, 1:36 PM
zturner accepted D33296: [llvm-pdbdump] in yaml2pdb, generate default output filename if none given.
Wed, May 17, 1:23 PM
zturner added a comment to D33293: Provide a common interface for all collections of types..
In D33293#757740, @rnk wrote:

Do you think all these TypeCollections should eventually just be the same thing? So, I could read a TypeCollection from a PDB, and then add more type records to it like I would with TypeTableBuilder. Then we would have a full read/write/edit API for types, which is something we seem to want for incremental PDB writing.

Wed, May 17, 1:20 PM
zturner created D33293: Provide a common interface for all collections of types..
Wed, May 17, 11:53 AM
zturner committed rL303272: Workaround for incorrect Win32 header on GCC..
Workaround for incorrect Win32 header on GCC.
Wed, May 17, 9:53 AM
zturner committed rL303271: [CodeView] Simplify the use of visiting type records & streams..
[CodeView] Simplify the use of visiting type records & streams.
Wed, May 17, 9:52 AM
zturner closed D33245: Simplify the use of CVTypeVisitor by committing rL303271: [CodeView] Simplify the use of visiting type records & streams..
Wed, May 17, 9:52 AM
zturner accepted D33241: Add Status -- llvm::Error glue.
Wed, May 17, 9:08 AM
zturner added inline comments to D33241: Add Status -- llvm::Error glue.
Wed, May 17, 9:07 AM
zturner committed rL303269: [BitVector] Add find_[first,last]_[set,unset]_in..
[BitVector] Add find_[first,last]_[set,unset]_in.
Wed, May 17, 9:03 AM
zturner closed D33104: [BitVector] Implement find_[first/last]_[set/unset]_in by committing rL303269: [BitVector] Add find_[first,last]_[set,unset]_in..
Wed, May 17, 9:03 AM

Tue, May 16

zturner created D33267: [lld] Write the correct age and machine type to the PDB..
Tue, May 16, 9:41 PM
zturner added inline comments to D33246: Remove most of lldb's TaskPool in favor of llvm's parallel functions.
Tue, May 16, 7:31 PM · Restricted Project
zturner added inline comments to D33104: [BitVector] Implement find_[first/last]_[set/unset]_in.
Tue, May 16, 7:08 PM
zturner added a comment to D33241: Add Status -- llvm::Error glue.

Mostly just that implicit conversion operators are a very subtle source of bugs, and you can't even find where they're being used because it's impossible to grep for it.

Tue, May 16, 5:34 PM
zturner accepted D33261: [CrashRecovery] Use SEH __try instead of VEH when available.

looks good with suggested fixes.

Tue, May 16, 4:58 PM
zturner updated the diff for D33229: [BinaryStream] Simplify the process of using BinaryStreams.

Deleted the forwarding constructors and made the private owning implementation names shorter.

Tue, May 16, 4:49 PM
zturner added inline comments to D33241: Add Status -- llvm::Error glue.
Tue, May 16, 4:35 PM
zturner added a reviewer for D33241: Add Status -- llvm::Error glue: lhames.
Tue, May 16, 4:32 PM
zturner committed rL303220: Fix for compilers with older CRT header libraries..
Fix for compilers with older CRT header libraries.
Tue, May 16, 4:13 PM
zturner added inline comments to D33261: [CrashRecovery] Use SEH __try instead of VEH when available.
Tue, May 16, 4:09 PM
zturner committed rL303219: [Support] Ignore OutputDebugString exceptions in our crash recovery..
[Support] Ignore OutputDebugString exceptions in our crash recovery.
Tue, May 16, 4:03 PM
zturner closed D33260: [CrashRecovery] Don't treat OutputDebugString as a crash by committing rL303219: [Support] Ignore OutputDebugString exceptions in our crash recovery..
Tue, May 16, 4:03 PM
zturner updated the diff for D33245: Simplify the use of CVTypeVisitor.

Use enum instead of bool.

Tue, May 16, 3:22 PM
zturner accepted D33249: Add test for FixedStreamArrayIterator::operator->.
Tue, May 16, 2:52 PM
zturner updated the diff for D33260: [CrashRecovery] Don't treat OutputDebugString as a crash.

Also add the exception codes for printing a wide debugger string and setting a thread name.

Tue, May 16, 2:48 PM
zturner created D33260: [CrashRecovery] Don't treat OutputDebugString as a crash.
Tue, May 16, 2:42 PM
zturner added a comment to D33229: [BinaryStream] Simplify the process of using BinaryStreams.
In D33229#756559, @rnk wrote:

This makes things shorter, but it does it by using templates to forward constructor arguments. Do we really want to do that? Is there some way we can simplify this code by removing some of the overlapping stream concepts instead?

Tue, May 16, 1:28 PM
zturner added a comment to D33245: Simplify the use of CVTypeVisitor.

Note that there is one instance of using CVTypeVisitor left that I couldn't get rid of in this patch. The one in RandomAccessVisitorTest. I have another patch which depends on this one which makes some fairly significantly change in this area, and after that patch we can get rid of that.

Tue, May 16, 10:32 AM
zturner created D33245: Simplify the use of CVTypeVisitor.
Tue, May 16, 10:30 AM
zturner added a reviewer for D33229: [BinaryStream] Simplify the process of using BinaryStreams: amccarth.

+amccarth since he's used some of this stuff before too.

Tue, May 16, 9:56 AM
zturner created D33229: [BinaryStream] Simplify the process of using BinaryStreams.
Tue, May 16, 12:14 AM

Mon, May 15

zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Mon, May 15, 5:06 PM
zturner added inline comments to D33180: Add functionality to cvtres to parse all entries in res file..
Mon, May 15, 5:03 PM
zturner added a comment to D33059: Create an shared include directory for gtest helper functions.

ping

Mon, May 15, 9:30 AM
zturner added a comment to D33104: [BitVector] Implement find_[first/last]_[set/unset]_in.

ping

Mon, May 15, 9:29 AM

Sun, May 14

zturner committed rL303011: [StringExtras] Add llvm::to_integer..
[StringExtras] Add llvm::to_integer.
Sun, May 14, 10:24 AM

Sat, May 13

zturner created D33167: Get rid of some uses of StringConvert and reduce some indentation.
Sat, May 13, 10:58 PM