pete (Pete Cooper)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 2 2014, 4:46 PM (232 w, 3 d)

Recent Activity

Jul 2 2018

pete accepted D48517: [MC] Error on a .zerofill directive in a non-virtual section.

Sorry for the delay. LGTM.

Jul 2 2018, 10:02 AM

May 31 2018

pete accepted D47593: [MC] Fallback on DWARF when generating compact unwind on AArch64.

Nice catch. This LGTM.

May 31 2018, 9:22 AM

Apr 23 2018

pete added a comment to D30882: Add a callback for __has_include and use it for dependency scanning.

I don't think this is quite right. I know at least make-based incremental builds wouldn't deal well with this.

This is actually not a novel problem w.r.t. this patch. The exact same situation comes up with Makefile-included .d files and when one of the referenced headers is removed.

This is typically solved somewhere in the build system, for example Make has -include, and Ninja and llbuild have explicit support for this situation.

Of course, yes, I was wrong. Thanks for the correction.

I agree we might want to tread cautiously on how we change the .d output, but in this case I think it might be safe.

If we decide this isn't safe, then we may want to consider a new flag which tracks *all* anti-dependencies (file's for which Clang checked existence but did not exist), and include that here. The major concern with that approach is it is a much larger list, and while it would support being substantially more correct, it is also well beyond what people currently expect out of the build system + compiler generated deps approaches.

Even though this is likely safe, it seems really noisy. Consider the case where someone has __has_include(<missing>) -- we'll get an entry for every -I, -F, -isystem, and -iframework. If we're going to add that noise, I prefer a separate flag that covers all anti-dependencies.

Apr 23 2018, 9:50 AM

Mar 9 2018

pete accepted D44270: Improve caching scheme in ProvenanceAnalysis..

This all looks reasonable. Its a nice localized change to this pass. LGTM.

Mar 9 2018, 4:03 PM

May 10 2017

pete accepted D33057: [ConstantRange] Fix the early out in ConstantRange::multiply for positive numbers to really do what the comment says.

Good catch! LGTM.

May 10 2017, 12:25 PM

May 3 2017

pete accepted D32811: [IR] Abstract away ArgNo+1 attribute indexing as much as possible.

This is a great improvement over what we had. LGTM.

May 3 2017, 11:06 AM

Apr 10 2017

pete accepted D31198: [IR] Make AttributeSetNode public, avoid temporary AttributeList copies.

Sorry for forgetting to review this.

Apr 10 2017, 1:10 PM

Mar 20 2017

pete accepted D31102: Rename AttributeSet to AttributeList.

I scrolled through fairly quickly, but everything looked fine. Looks like basically renaming and fixing formatting along the way.

Mar 20 2017, 11:26 PM

Mar 13 2017

pete created D30882: Add a callback for __has_include and use it for dependency scanning.
Mar 13 2017, 1:01 AM
pete created D30881: Track skipped files in dependency scanning.
Mar 13 2017, 12:10 AM

Mar 8 2017

pete added a comment to D30723: Add red zones to BumpPtrAllocator under ASan.

Thanks, Pete! Will land soon, then.

I think we could support SpecificBumpPtrAllocator but it would require walking the objects by 'sizeof(T) + RedZoneSize'. RedZoneSize itself would also have to be set to make sure we continue to have appropriate alignment. Not something you need to do now, but could be interesting in future.

FWIW, this doesn't work as is because SpecificBumpPtrAllocator lets you allocate *arrays* of objects as well as single objects, and the arrays obviously can't have red zones between elements.

Good point. Never thought of that. Wouldn't be surprised if there's a whole bunch of users who never use arrays and could benefit, but still something to think about more.

Mar 8 2017, 11:48 AM
pete accepted D30723: Add red zones to BumpPtrAllocator under ASan.

Very cool. Justin and I looked at ASan on BumpPtrAllocator a while ago and I think this would have been useful then too. I think the reason you didn't find issues is that he fixed many of them already.

Mar 8 2017, 11:34 AM

Sep 30 2016

pete added a comment to D25100: Add STLExtras apply_tuple.

Whats the behavior here in terms of implicit conversions and overloading?

Sep 30 2016, 2:30 PM

Aug 23 2016

pete committed rL279528: Fix some more asserts after r279466..
Fix some more asserts after r279466.
Aug 23 2016, 9:31 AM

Aug 22 2016

pete committed rL279487: Fix crash from assert in r279466..
Fix crash from assert in r279466.
Aug 22 2016, 3:35 PM
pete committed rL279470: Add ADT headers to the cmake headers directory for LLVMSupport. NFC..
Add ADT headers to the cmake headers directory for LLVMSupport. NFC.
Aug 22 2016, 1:47 PM
pete committed rL279466: Add comments and an assert to follow-up on r279113. NFC..
Add comments and an assert to follow-up on r279113. NFC.
Aug 22 2016, 1:26 PM

Aug 18 2016

pete committed rL279113: Add a version of Intrinsic::getName which is more efficient when there are no….
Add a version of Intrinsic::getName which is more efficient when there are no…
Aug 18 2016, 11:39 AM

Aug 17 2016

pete committed rL279000: Actually enable new test for const RangeAdapter. Missing from r278991.
Actually enable new test for const RangeAdapter. Missing from r278991
Aug 17 2016, 4:00 PM
pete committed rL278991: Fix reverse to work on const rbegin()/rend()..
Fix reverse to work on const rbegin()/rend().
Aug 17 2016, 3:15 PM

Aug 12 2016

pete committed rL278585: Constify ValueTracking. NFC..
Constify ValueTracking. NFC.
Aug 12 2016, 6:13 PM
pete committed rL278570: Add support to paternmatch for simple const Value cases..
Add support to paternmatch for simple const Value cases.
Aug 12 2016, 3:24 PM
pete committed rL278528: constify InstCombine::foldAllocaCmp. NFC..
constify InstCombine::foldAllocaCmp. NFC.
Aug 12 2016, 10:21 AM

Aug 11 2016

pete committed rL278450: Refactor isValidAssumeForContext to reduce duplication and indentation. NFC..
Refactor isValidAssumeForContext to reduce duplication and indentation. NFC.
Aug 11 2016, 6:08 PM
pete committed rL278434: Remove unnecessary extra version of isValidAssumeForContext. NFC..
Remove unnecessary extra version of isValidAssumeForContext. NFC.
Aug 11 2016, 3:31 PM
pete committed rL278419: Dead strip DESC bits should only be set on object files..
Dead strip DESC bits should only be set on object files.
Aug 11 2016, 2:35 PM
pete committed rL278412: Add obj2yaml to the list of tool_patterns in lit. NFC.
Add obj2yaml to the list of tool_patterns in lit. NFC
Aug 11 2016, 2:11 PM
pete committed rL278407: Better compress lazy binding info to match ld64..
Better compress lazy binding info to match ld64.
Aug 11 2016, 2:07 PM
pete committed rL278405: Generate slightly more compressed binding opcodes when entries are the same….
Generate slightly more compressed binding opcodes when entries are the same…
Aug 11 2016, 1:44 PM
pete committed rL278400: Add test for rebase opcodes. We didn't have one. NFC..
Add test for rebase opcodes. We didn't have one. NFC.
Aug 11 2016, 1:39 PM
pete committed rL278399: Add missing RUN line from r278398. This test works with this line but i….
Add missing RUN line from r278398. This test works with this line but i…
Aug 11 2016, 1:31 PM
pete committed rL278398: Arm64 stubs alignment is 2, not 4..
Arm64 stubs alignment is 2, not 4.
Aug 11 2016, 1:26 PM
pete committed rL278396: Change when we choose to add an LC_LOAD_DYLIB to the final image..
Change when we choose to add an LC_LOAD_DYLIB to the final image.
Aug 11 2016, 1:18 PM
pete committed rL278386: Change all the libSystem test files to be dylibs instead of normalized files..
Change all the libSystem test files to be dylibs instead of normalized files.
Aug 11 2016, 11:54 AM
pete committed rL278385: Fix one more test missed by r278372. The next commit will update libsystem….
Fix one more test missed by r278372. The next commit will update libsystem…
Aug 11 2016, 11:51 AM
pete committed rL278381: Fix off-by-one error in default currentVersion..
Fix off-by-one error in default currentVersion.
Aug 11 2016, 11:49 AM
pete committed rL278372: Have one version of libSystem for each arch. NFC..
Have one version of libSystem for each arch. NFC.
Aug 11 2016, 11:17 AM

Aug 8 2016

pete committed rL278071: The first string table entry should be a null terminated space, not just null..
The first string table entry should be a null terminated space, not just null.
Aug 8 2016, 4:27 PM

Aug 5 2016

pete committed rL277869: ExportTrie nodes need to be visisted in order..
ExportTrie nodes need to be visisted in order.
Aug 5 2016, 2:45 PM

Jul 27 2016

pete updated subscribers of D22793: IR: Introduce inbounds attribute on getelementptr indices..
Jul 27 2016, 6:29 PM

Jul 22 2016

pete committed rL276470: Use RValue refs in APInt add/sub methods..
Use RValue refs in APInt add/sub methods.
Jul 22 2016, 2:03 PM

Jul 21 2016

pete committed rL276382: Fix r276380 for targets without REALPATH..
Fix r276380 for targets without REALPATH.
Jul 21 2016, 7:00 PM
pete closed D22655: Avoid dsymutil calls to getFileNameByIndex.

Thanks for the quick review Fred. Those comments make complete sense so have committed with those changes.

Jul 21 2016, 6:49 PM
pete committed rL276380: Avoid dsymutil calls to getFileNameByIndex..
Avoid dsymutil calls to getFileNameByIndex.
Jul 21 2016, 6:49 PM
pete retitled D22655: Avoid dsymutil calls to getFileNameByIndex from to Avoid dsymutil calls to getFileNameByIndex.
Jul 21 2016, 3:45 PM

Jun 2 2016

pete committed rL271556: Make APInt negate just do a 2's complement negate instead of subtract. NFC..
Make APInt negate just do a 2's complement negate instead of subtract. NFC.
Jun 2 2016, 11:18 AM

May 27 2016

pete closed D20723: Don't generate unnecessary signed ConstantRange during multiply.

Thanks for the quick review! r271020.

May 27 2016, 10:14 AM
pete committed rL271020: Don't generate unnecessary signed ConstantRange during multiply. NFC.
Don't generate unnecessary signed ConstantRange during multiply. NFC
May 27 2016, 10:13 AM

May 26 2016

pete retitled D20723: Don't generate unnecessary signed ConstantRange during multiply from to Don't generate unnecessary signed ConstantRange during multiply.
May 26 2016, 10:07 PM
pete committed rL270959: Don't allocate unnecessarily in APInt::operator[+-]. NFC..
Don't allocate unnecessarily in APInt::operator[+-]. NFC.
May 26 2016, 8:48 PM
pete committed rL270955: Form objc_storeStrong in the presence of bitcasts..
Form objc_storeStrong in the presence of bitcasts.
May 26 2016, 7:20 PM
pete committed rL270881: Don't allocate in APInt::slt. NFC..
Don't allocate in APInt::slt. NFC.
May 26 2016, 10:46 AM

May 10 2016

pete added a comment to D20121: Make "@name =" mandatory for globals in .ll files.

Yeah, that doesn’t seem to be particularly useful. The small number of tests you had to update shows just how few people probably even knew it existed.

May 10 2016, 11:21 AM

May 9 2016

pete updated subscribers of D19992: [libcxx] Prefer C++14 over C++11 when building libc++experimental..
May 9 2016, 4:15 PM
pete accepted rL268935: [CGP] avoid crashing from weightlessness.

LGTM. Thanks for fixing this so quickly.

May 9 2016, 11:37 AM

May 4 2016

pete committed rL268523: Update test CHECK lines after r268509. NFC..
Update test CHECK lines after r268509. NFC.
May 4 2016, 10:43 AM

May 3 2016

pete committed rL268416: Change test to use regex instead of explicit value numbers. NFC..
Change test to use regex instead of explicit value numbers. NFC.
May 3 2016, 11:38 AM

May 2 2016

pete committed rL268250: Add llvm-pdbdump to the tool substitutions list in lit. NFC..
Add llvm-pdbdump to the tool substitutions list in lit. NFC.
May 2 2016, 9:57 AM

Apr 4 2016

pete committed rL265311: Fix test which failed Error migration on Windows bots..
Fix test which failed Error migration on Windows bots.
Apr 4 2016, 10:01 AM

Mar 30 2016

pete committed rL264983: Revert "Remove useless unreachable. Switch coverage already gives us this..
Revert "Remove useless unreachable. Switch coverage already gives us this.
Mar 30 2016, 6:28 PM
pete committed rL264982: Remove unused variants of make_dynamic_error_code. NFC..
Remove unused variants of make_dynamic_error_code. NFC.
Mar 30 2016, 6:27 PM
pete committed rL264981: Use Expected<T> instead of ErrorOr<T>in yaml reader. NFC.
Use Expected<T> instead of ErrorOr<T>in yaml reader. NFC
Mar 30 2016, 6:18 PM
pete committed rL264979: Change library search methods to return Optional instead of ErrorOr..
Change library search methods to return Optional instead of ErrorOr.
Mar 30 2016, 6:15 PM
pete committed rL264978: Fix a bunch more of -Wpessimizing-move issues..
Fix a bunch more of -Wpessimizing-move issues.
Mar 30 2016, 5:43 PM
pete committed rL264977: Fix a bunch of -Wpessimizing-move issues..
Fix a bunch of -Wpessimizing-move issues.
Mar 30 2016, 5:41 PM
pete committed rL264974: Convert a few macho reader/writer helpers to new error handling. NFC..
Convert a few macho reader/writer helpers to new error handling. NFC.
Mar 30 2016, 5:13 PM
pete committed rL264973: Convert readBinary to llvm::Error. NFC.
Convert readBinary to llvm::Error. NFC
Mar 30 2016, 5:03 PM
pete committed rL264968: Convert normalized file to atoms methods to new error handling. NFC..
Convert normalized file to atoms methods to new error handling. NFC.
Mar 30 2016, 4:48 PM
pete committed rL264962: Fix MachO test which is failing on a Windows bot..
Fix MachO test which is failing on a Windows bot.
Mar 30 2016, 4:34 PM
pete committed rL264961: Convert lld file writing to llvm::Error. NFC..
Convert lld file writing to llvm::Error. NFC.
Mar 30 2016, 4:16 PM
pete committed rL264945: Remove useless unreachable. Switch coverage already gives us this. NFC.
Remove useless unreachable. Switch coverage already gives us this. NFC
Mar 30 2016, 3:40 PM
pete committed rL264924: Convert file handle* methods to llvm::Error instead of std::error_code. NFC..
Convert file handle* methods to llvm::Error instead of std::error_code. NFC.
Mar 30 2016, 2:02 PM
pete committed rL264921: Change loadFileList to llvm::Error. NFC.
Change loadFileList to llvm::Error. NFC
Mar 30 2016, 1:49 PM
pete committed rL264917: Convert lld Pass::runOnFile to llvm::Error from std::error_code. NFC..
Convert lld Pass::runOnFile to llvm::Error from std::error_code. NFC.
Mar 30 2016, 1:42 PM
pete committed rL264910: Change getReferenceInfo/getPairReferenceInfo to use new Error handling. NFC..
Change getReferenceInfo/getPairReferenceInfo to use new Error handling. NFC.
Mar 30 2016, 1:20 PM

Mar 24 2016

pete committed rL264311: Use None to construct an empty ArrayRef. NFC..
Use None to construct an empty ArrayRef. NFC.
Mar 24 2016, 10:44 AM

Mar 23 2016

pete committed rL264234: Avoid UB when creating empty atoms. NFC..
Avoid UB when creating empty atoms. NFC.
Mar 23 2016, 6:21 PM
pete committed rL264233: Avoid UB deref of nullptr to reference. NFC..
Avoid UB deref of nullptr to reference. NFC.
Mar 23 2016, 6:19 PM
pete committed rL264232: Use a memcpy to avoid unaligned store UB..
Use a memcpy to avoid unaligned store UB.
Mar 23 2016, 6:10 PM
pete committed rL264231: Use unaligned read to fix UB. NFC..
Use unaligned read to fix UB. NFC.
Mar 23 2016, 6:09 PM
pete committed rL264228: Parsed alignment should be a power of 2..
Parsed alignment should be a power of 2.
Mar 23 2016, 5:42 PM
pete committed rL264204: Fix more cases of UB from allocating 0 sized data. NFC..
Fix more cases of UB from allocating 0 sized data. NFC.
Mar 23 2016, 3:24 PM
pete committed rL264202: Use a memcpy to avoid unaligned store UB..
Use a memcpy to avoid unaligned store UB.
Mar 23 2016, 3:05 PM
pete committed rL264201: StringRef::copy shouldn't allocate anything for length 0 strings..
StringRef::copy shouldn't allocate anything for length 0 strings.
Mar 23 2016, 2:54 PM
pete committed rL264172: Copy MachO struct to temporary to avoid unaligned load UB..
Copy MachO struct to temporary to avoid unaligned load UB.
Mar 23 2016, 11:05 AM

Mar 22 2016

pete committed rL264116: Move empty atom check to target independent code. NFC..
Move empty atom check to target independent code. NFC.
Mar 22 2016, 4:12 PM
pete committed rL264115: Avoid memcpy from nullptr. NFC..
Avoid memcpy from nullptr. NFC.
Mar 22 2016, 4:04 PM
pete committed rL264114: Don't memcpy from a null source. Found by UBSan.
Don't memcpy from a null source. Found by UBSan
Mar 22 2016, 3:56 PM
pete committed rL264097: Fix operator= on OwningAtomPtr to call destructor when needed..
Fix operator= on OwningAtomPtr to call destructor when needed.
Mar 22 2016, 2:13 PM
pete committed rL264077: More MSVC bot appeasement. Explicitly define rvalue methods on SortKey..
More MSVC bot appeasement. Explicitly define rvalue methods on SortKey.
Mar 22 2016, 11:15 AM
pete committed rL264070: Appease MSVC bots by changing visibility of AtomVector..
Appease MSVC bots by changing visibility of AtomVector.
Mar 22 2016, 10:45 AM
pete committed rL264067: Use owning pointers instead of raw pointers for Atom's to fix leaks..
Use owning pointers instead of raw pointers for Atom's to fix leaks.
Mar 22 2016, 10:21 AM

Mar 21 2016

pete committed rL264023: Revert "Use owning pointers instead of raw pointers for Atom's to fix leaks.".
Revert "Use owning pointers instead of raw pointers for Atom's to fix leaks."
Mar 21 2016, 9:05 PM
pete committed rL264022: Use owning pointers instead of raw pointers for Atom's to fix leaks..
Use owning pointers instead of raw pointers for Atom's to fix leaks.
Mar 21 2016, 8:49 PM
pete committed rL264004: Move ownership of Pass File's to the MachoLinkingContext..
Move ownership of Pass File's to the MachoLinkingContext.
Mar 21 2016, 4:22 PM
pete committed rL263984: Revert "Convert some ObjC msgSends to runtime calls.".
Revert "Convert some ObjC msgSends to runtime calls."
Mar 21 2016, 1:55 PM

Mar 17 2016

pete committed rL263777: Always cache resolved paths as it even saves on StringMap lookups..
Always cache resolved paths as it even saves on StringMap lookups.
Mar 17 2016, 10:09 PM
pete added a comment to D18259: Use StringRef's in resolved path cache to avoid extra internString lookups.

Thanks for the quick review! r263774

Mar 17 2016, 8:53 PM
pete committed rL263774: Use StringRef's in resolved path cache to avoid extra internString lookups..
Use StringRef's in resolved path cache to avoid extra internString lookups.
Mar 17 2016, 8:53 PM
pete closed D18259: Use StringRef's in resolved path cache to avoid extra internString lookups by committing rL263774: Use StringRef's in resolved path cache to avoid extra internString lookups..
Mar 17 2016, 8:53 PM