Page MenuHomePhabricator

Please use GitHub pull requests for new patches. Phabricator shutdown timeline

dmaclach (Dave MacLachlan)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 10 2018, 7:47 PM (250 w, 13 h)

Recent Activity

Mar 16 2023

dmaclach requested review of D146259: Add declaration for `__tsan_default_options` to tsan_interface.h.
Mar 16 2023, 2:12 PM · Restricted Project, Restricted Project

Mar 15 2023

dmaclach requested review of D146166: Expose `__tsan_on_thread_idle` as part of tsan shared interface.
Mar 15 2023, 1:28 PM · Restricted Project, Restricted Project

Mar 10 2023

dmaclach added a comment to D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

Not a waterfall, just a test failure due to an issue best read here: https://reviews.llvm.org/D127929 (show older changes). You can't test on iOS but you could test on macOS but even then your minimum deployment target has to be pretty high to see the issue manifest. In other words, you unsurprisingly couldn't anticipate this w/o better documentation and evangelization of the issue.

Mar 10 2023, 5:29 PM · Restricted Project, Restricted Project, Restricted Project
dmaclach added a comment to D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

usama/rsundahl how do I run an iOS test? I can't do arm, but x86_64 should be equivalent for a dyld problem? Also is there a waterfall for these types of breakages that I don't know about?

Mar 10 2023, 4:44 PM · Restricted Project, Restricted Project, Restricted Project

Mar 6 2023

dmaclach requested review of D145461: [test] Remove fprintf argument after D144830.
Mar 6 2023, 7:37 PM · Restricted Project, Restricted Project
dmaclach updated the diff for D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

Added test in asan. There wasn't an easy spot to put it in the sanitizer_common tests because I wanted to verify that the actual sanitizer libraries were calling through correctly when __sanitizer_report_error_summary was overridden.

Mar 6 2023, 9:16 AM · Restricted Project, Restricted Project, Restricted Project

Mar 5 2023

dmaclach updated the diff for D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Moved to REQUIRES: asan-static-runtime

Mar 5 2023, 2:17 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Mar 3 2023

dmaclach added a comment to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Went with unsupported.

Mar 3 2023, 8:11 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach updated the diff for D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Mar 3 2023, 8:10 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Mar 2 2023

dmaclach added inline comments to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Mar 2 2023, 3:31 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach added a comment to D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

Taking a step back, please check my understanding:

Mar 2 2023, 1:54 PM · Restricted Project, Restricted Project, Restricted Project
dmaclach updated the diff for D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.
Mar 2 2023, 1:43 PM · Restricted Project, Restricted Project, Restricted Project
dmaclach added a comment to D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

[... ] __sanitizer_print_stack_trace? Seems like more stable bet.

+1

Mar 2 2023, 10:41 AM · Restricted Project, Restricted Project, Restricted Project
dmaclach updated the diff for D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Updated with fixed tests for replaceable_new_delete.cpp.

Mar 2 2023, 9:40 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Mar 1 2023

dmaclach added a comment to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Yep. Apologies. Been a long time since I committed anything to LLVM. I'll try and take a look tonight/first thing tomorrow.

Mar 1 2023, 5:48 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach added a comment to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

@usama54321 or @yln are you able to commit for me?

Mar 1 2023, 10:18 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach accepted D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Mar 1 2023, 10:16 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Feb 27 2023

dmaclach updated the diff for D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

Switched over to using "sanitizer_sandbox_on_notify" from "sanitizer_print_stack_trace" because it's available in the internal headers and serves the same purpose.

Feb 27 2023, 4:34 PM · Restricted Project, Restricted Project, Restricted Project
dmaclach updated the diff for D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.

This diff should be buildable. Adding requested test shortly.

Feb 27 2023, 3:37 PM · Restricted Project, Restricted Project, Restricted Project
dmaclach added a comment to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Updated with buildable patch.

Feb 27 2023, 3:30 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach abandoned D144926: darwin platforms do not support static-lsan with TSan or ASan but were "silently failing" in that they would just ignore the flag and link in the dynamic runtimes instead..

Accidentally uploaded

Feb 27 2023, 3:29 PM · Restricted Project, Restricted Project
dmaclach updated the diff for D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Feb 27 2023, 3:28 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach requested review of D144926: darwin platforms do not support static-lsan with TSan or ASan but were "silently failing" in that they would just ignore the flag and link in the dynamic runtimes instead..
Feb 27 2023, 3:26 PM · Restricted Project, Restricted Project

Feb 26 2023

dmaclach updated the summary of D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.
Feb 26 2023, 10:59 AM · Restricted Project, Restricted Project, Restricted Project
dmaclach requested review of D144830: [asan darwin] Allow clients to implement `__sanitizer_report_error_summary`.
Feb 26 2023, 10:16 AM · Restricted Project, Restricted Project, Restricted Project

Feb 24 2023

dmaclach added a comment to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Sorry for this. I need to confirm that asan and tsan are not supported on darwin. Please don't merge until then. Thanks

Feb 24 2023, 3:35 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach retitled D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin from [Sanitizers] Error when attempting to use `static-lsan` with `tsan` or `asan` on darwin to [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Feb 24 2023, 9:02 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach added inline comments to D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Feb 24 2023, 9:01 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
dmaclach updated the diff for D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.

Addressed comments. PTAL

Feb 24 2023, 8:59 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Feb 23 2023

dmaclach requested review of D144672: [Sanitizers] Error when attempting to use `static-lsan` with `TSan` or `Asan` on darwin.
Feb 23 2023, 1:02 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Oct 20 2022

dmaclach accepted D128031: Don't emit `-Wnullability-completeness` warnings on `weak` Objective-C properties..

LGTM

Oct 20 2022, 5:40 PM · Restricted Project, Restricted Project

Sep 9 2022

dmaclach added a comment to D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

Thanks Puyan! Awesome to see this moving forward.

Sep 9 2022, 11:28 PM · Restricted Project, Restricted Project

May 27 2022

dmaclach accepted D126522: Create specialization of `-Wgnu-statement-expression` for expressions found in macros..
May 27 2022, 11:54 AM · Restricted Project, Restricted Project

Feb 22 2022

dmaclach accepted D120372: [clang] 'unused-but-set-variable' warning should not apply to __attribute__((objc_precise_lifetime) Objective-C pointers.
Feb 22 2022, 5:48 PM · Restricted Project

Jul 1 2021

dmaclach requested review of D105311: Optimize getters for non-atomic, copied properties.
Jul 1 2021, 12:49 PM · Restricted Project

Jun 28 2021

dmaclach added a comment to D86049: RFC: Implement optional exportable wrapper function generation for objc_direct methods..

Has anything happened with this at all or did it get dropped?

Jun 28 2021, 10:41 AM · Restricted Project, Restricted Project

Nov 19 2020

dmaclach added a reviewer for D91815: Fix small typo in Block ABI docs: ahatanak.
Nov 19 2020, 12:16 PM · Restricted Project
dmaclach requested review of D91815: Fix small typo in Block ABI docs.
Nov 19 2020, 12:14 PM · Restricted Project

May 13 2020

dmaclach added a comment to rGdbfa453e4138: [CodeGen][ObjC] Make copying and disposing of a non-escaping block no-ops..

So this is probably old news inside of Apple, but this can cause [NSInvocation retainArguments] to crash:

May 13 2020, 5:29 PM

Jan 16 2020

dmaclach accepted D72876: Create a clang-tidy check to warn when -dealloc is implemented inside an ObjC class category..
Jan 16 2020, 2:53 PM · Restricted Project, Restricted Project
dmaclach requested changes to D72876: Create a clang-tidy check to warn when -dealloc is implemented inside an ObjC class category..
Jan 16 2020, 2:15 PM · Restricted Project, Restricted Project

Sep 25 2019

dmaclach added a comment to D67865: [clang-tidy] Finds uses of OSRead* calls on macOS that may mask unexpected behavior due to unaligned reads.

Any other comments on this?

Sep 25 2019, 4:52 PM · Restricted Project

Sep 23 2019

dmaclach updated the diff for D67865: [clang-tidy] Finds uses of OSRead* calls on macOS that may mask unexpected behavior due to unaligned reads.

Updated based on review

Sep 23 2019, 4:25 PM · Restricted Project
dmaclach added inline comments to D67865: [clang-tidy] Finds uses of OSRead* calls on macOS that may mask unexpected behavior due to unaligned reads.
Sep 23 2019, 3:11 PM · Restricted Project
dmaclach updated the diff for D67865: [clang-tidy] Finds uses of OSRead* calls on macOS that may mask unexpected behavior due to unaligned reads.

Fixed up review comments.

Sep 23 2019, 3:09 PM · Restricted Project

Sep 20 2019

dmaclach created D67865: [clang-tidy] Finds uses of OSRead* calls on macOS that may mask unexpected behavior due to unaligned reads.
Sep 20 2019, 2:41 PM · Restricted Project

May 16 2019

dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

Okay, so I've looked into it a little bit further and it's really just that when we force inlining everything, we basically end up with a lot fewer functions being defined in the object file, and consequently the resulting code is smaller. It's not rocket science and it's what I expected.

Now, what I'm thinking is that perhaps what you might want to do is crank up the inliner using compiler flags instead of trying to influence that in the library. I'm not exactly sure how/whether one can do that, but it seems like what you want may be something like: clang++ -falways-inline or something along those lines. This would have the "added benefit" that all your code would get the same treatment, not only libc++. Does that make sense?

May 16 2019, 2:29 PM

May 14 2019

dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

-O0 for everything I'm complaining about here :)

May 14 2019, 2:58 PM
dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

OK, here's for Google Maps (a mix of ObjC, ObjC++, C++) with multiple TU:

May 14 2019, 1:39 PM

May 13 2019

dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

Chromium bug 961450 is tracking to see if it causes size/performance changes there as well

May 13 2019, 2:30 PM
dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

As a piece of test code:

May 13 2019, 2:25 PM
dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

Hey Louis,

May 13 2019, 1:08 PM

May 10 2019

dmaclach added a comment to rL345516: [libc++] Use exclude_from_explicit_instantiation instead of always_inline.

This change caused some significant bloat and affected our performance and link times.

May 10 2019, 1:24 PM

Dec 13 2018

dmaclach added a comment to D55544: Warning: objc-encodings-larger-than=.

Akira/John/Erik - any thoughts?

Dec 13 2018, 5:17 PM · Restricted Project
dmaclach added inline comments to D55640: [clang-tidy] Implement a check for large Objective-C type encodings 🔍.
Dec 13 2018, 5:15 PM · Restricted Project

Dec 11 2018

dmaclach updated the diff for D55544: Warning: objc-encodings-larger-than=.

Updated to fix Stephane's good catch of Objective C vs Objective-C

Dec 11 2018, 11:11 AM · Restricted Project
dmaclach updated the diff for D55544: Warning: objc-encodings-larger-than=.

Full Diffs as requested.

Dec 11 2018, 11:09 AM · Restricted Project
dmaclach added a comment to D55544: Warning: objc-encodings-larger-than=.

It would probably be a good idea to have a similar check on properties, as property encoding strings contain the type encoding (plus extra stuff).

Dec 11 2018, 9:22 AM · Restricted Project
dmaclach updated the diff for D55544: Warning: objc-encodings-larger-than=.

Added some spacing around early exit as requested by theraven.

Dec 11 2018, 9:19 AM · Restricted Project

Dec 10 2018

dmaclach created D55544: Warning: objc-encodings-larger-than=.
Dec 10 2018, 8:01 PM · Restricted Project