Page MenuHomePhabricator

davezarzycki (David Zarzycki)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 28 2017, 11:01 AM (103 w, 13 h)

Recent Activity

Tue, Aug 6

davezarzycki added a comment to D64696: Adds a warning when an inline Doxygen comment has no argument.

I don't think anybody is running doxygen over the Swift source right now, so I'll just escape the @ sign. That being said, can we improve this diagnostic? "command does not have an argument" is confusing when a given command does have an argument, just a malformed one. What do you think about "command must precede a word"? At least that gives a hint that the argument is not a "word" according to doxygen.

Tue, Aug 6, 11:47 PM · Restricted Project, Restricted Project
davezarzycki added a comment to D64696: Adds a warning when an inline Doxygen comment has no argument.

From the Swift language source (http://github.com/apple/swift):

Tue, Aug 6, 12:57 AM · Restricted Project, Restricted Project

Mon, Aug 5

davezarzycki added a comment to D62445: [test] Fix plugin tests.

Just FYI – Having LLVM_ENABLE_PLUGINS_default depend on LLVM_ENABLE_PIC is a hack that should go away someday. Doing so requires that plugin dependencies either always build PIC (and therefore ignore LLVM_ENABLE_PIC), or are linked into the executables that load them and the plugin knows how to find them in the executable. In the case of the latter and on Mach-O platforms, this requires passing -bundle_loader $PATH_TO_EXECUTABLE to the linker when creating the plugin (a.k.a. "bundle"), but on ELF platforms, I'm not sure what needs to be done.

Mon, Aug 5, 11:30 PM · Restricted Project, Restricted Project
davezarzycki added a comment to D62445: [test] Fix plugin tests.

Just FYI – Having LLVM_ENABLE_PLUGINS_default depend on LLVM_ENABLE_PIC is a hack that should go away someday. Doing so requires that plugin dependencies either always build PIC (and therefore ignore LLVM_ENABLE_PIC), or are linked into the executables that load them and the plugin knows how to find them in the executable. In the case of the latter and on Mach-O platforms, this requires passing -bundle_loader $PATH_TO_EXECUTABLE to the linker when creating the plugin (a.k.a. "bundle"), but on ELF platforms, I'm not sure what needs to be done.

Mon, Aug 5, 11:11 PM · Restricted Project, Restricted Project
davezarzycki added a comment to D64696: Adds a warning when an inline Doxygen comment has no argument.

Hello – This change seems to have exposed a bug in -Wdocumentation argument parsing. For example, this warns when it shouldn't(?):

Mon, Aug 5, 3:19 AM · Restricted Project, Restricted Project

Wed, Jul 31

davezarzycki committed rG4f1d893f9ec3: [Testing] Fix tests that break with read-only checkouts (authored by davezarzycki).
[Testing] Fix tests that break with read-only checkouts
Wed, Jul 31, 11:42 PM
davezarzycki committed rL367519: [Testing] Fix tests that break with read-only checkouts.
[Testing] Fix tests that break with read-only checkouts
Wed, Jul 31, 11:40 PM

Jul 15 2019

davezarzycki committed rG12400b97838d: [Testing] Add missing "REQUIRES: asserts" (authored by davezarzycki).
[Testing] Add missing "REQUIRES: asserts"
Jul 15 2019, 7:14 AM
davezarzycki committed rL366065: [Testing] Add missing "REQUIRES: asserts".
[Testing] Add missing "REQUIRES: asserts"
Jul 15 2019, 7:13 AM

Jul 4 2019

davezarzycki added a comment to D64200: [ELF] Allow placing non-string SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

I just did a quick test of this patch and now stage two testing works (Fedora 30, x86-64)

Jul 4 2019, 5:51 AM · Restricted Project

Jul 3 2019

davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

I can try -M (a.k.a. --print-map). Is there a simple failing test from the LLVM or clang test suite that would be enlightening to try it with?

Jul 3 2019, 8:45 AM · Restricted Project
davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

Well, as it turns out, -DLLVM_LDFLAGS is even less effective than the original CMAKE build options.

Jul 3 2019, 7:48 AM · Restricted Project
davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

As it turns out, stage 2 still fails on my workstation, but that's because -DCMAKE_EXE_LINKER_FLAGS=-Wl,-O0 -DCMAKE_SHARED_LINKER_FLAGS=-Wl,-O0 does NOT work as one expects due to LLVM's cmake/modules/AddLLVM.cmake setting -Wl,-O3 *after* CMake's CMAKE_EXE_LINKER_FLAGS or CMAKE_SHARED_LINKER_FLAGS. I'm trying a new two stage build with -DLLVM_LDFLAGS=-Wl,-O0.

Jul 3 2019, 7:27 AM · Restricted Project
davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

I'm doing a three-stage build, but perhaps not exactly the same way. I'd be surprised if it passes.

Jul 3 2019, 6:46 AM · Restricted Project
davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

Actually, the bug is narrower and doesn't require Swift (my build-and-test script placed the blame incorrectly). One just needs to build llvm+clang+lld after this change, then the following tests fail:

Jul 3 2019, 6:23 AM · Restricted Project
davezarzycki added a comment to D63432: [ELF] Allow placing SHF_MERGE sections with different alignments into the same MergeSyntheticSection.

This change breaks a ton of clang tests, albeit in the Swift fork of clang. Was this expected? If not, can we revert this for now?

Jul 3 2019, 6:06 AM · Restricted Project

Jun 20 2019

davezarzycki committed rGf237c7d411fa: [Testing] Dumping the graph requires assertions be enabled (authored by davezarzycki).
[Testing] Dumping the graph requires assertions be enabled
Jun 20 2019, 2:58 AM
davezarzycki committed rL363916: [Testing] Dumping the graph requires assertions be enabled.
[Testing] Dumping the graph requires assertions be enabled
Jun 20 2019, 2:57 AM

Jun 4 2019

davezarzycki committed rGc73c10a9bf1d: Unbreak my hasty "unbreak" cmake fix (authored by davezarzycki).
Unbreak my hasty "unbreak" cmake fix
Jun 4 2019, 4:34 AM
davezarzycki committed rL362492: Unbreak my hasty "unbreak" cmake fix.
Unbreak my hasty "unbreak" cmake fix
Jun 4 2019, 4:34 AM

Jun 3 2019

davezarzycki added a comment to D62720: AMDGPU/GFX10: V_CMPX_xxx instructions still have an omod operand.

Sorry for the stale copy-and-paste buffer noise. This did NOT break non-PIC builds.

Jun 3 2019, 6:46 AM · Restricted Project
davezarzycki added a comment to D62445: [test] Fix plugin tests.

This broke non-PIC builds. Fixed: r362399

Jun 3 2019, 6:46 AM · Restricted Project, Restricted Project
davezarzycki committed rG082d99f58cbe: Unbreak non-PIC builds after r362390 / D62720 (authored by davezarzycki).
Unbreak non-PIC builds after r362390 / D62720
Jun 3 2019, 6:40 AM
davezarzycki committed rL362399: Unbreak non-PIC builds after r362390 / D62720.
Unbreak non-PIC builds after r362390 / D62720
Jun 3 2019, 6:40 AM

May 22 2019

davezarzycki added a comment to D62174: [Analysis] Link library dependencies to Analysis plugins.

Fixed: r361399

May 22 2019, 8:47 AM · Restricted Project, Restricted Project
davezarzycki committed rGbe0e70dcde48: Unbreak non-PIC builds after r361340/D62174 (authored by davezarzycki).
Unbreak non-PIC builds after r361340/D62174
May 22 2019, 8:46 AM
davezarzycki committed rL361399: Unbreak non-PIC builds after r361340/D62174.
Unbreak non-PIC builds after r361340/D62174
May 22 2019, 8:45 AM
davezarzycki resigned from D43578: -ftime-report switch support in Clang.
May 22 2019, 6:54 AM
davezarzycki added a comment to D62174: [Analysis] Link library dependencies to Analysis plugins.

This breaks non-PIC builds. Was this planned or expected? Can we revert this until a fix is found?

May 22 2019, 5:45 AM · Restricted Project, Restricted Project

Mar 30 2019

davezarzycki added a comment to D59991: [Linux/x86] Fix writing of non-gpr registers on newer processors.

Can we cherry-pick this into a release branch? Skylake (and newer) CPUs are far from rare these days, especially on cloud hosting providers.

Mar 30 2019, 6:11 AM · Restricted Project

Mar 29 2019

davezarzycki committed rG916709e0be44: [CMake] Add missing test dep (authored by davezarzycki).
[CMake] Add missing test dep
Mar 29 2019, 5:00 PM
davezarzycki committed rL357336: [CMake] Add missing test dep.
[CMake] Add missing test dep
Mar 29 2019, 5:00 PM
davezarzycki committed rLLDB357336: [CMake] Add missing test dep.
[CMake] Add missing test dep
Mar 29 2019, 5:00 PM
davezarzycki accepted D59991: [Linux/x86] Fix writing of non-gpr registers on newer processors.

I've verified that this fixes my Skylake-SP (Xeon 8168) workstation. Thanks!

Mar 29 2019, 9:18 AM · Restricted Project

Mar 8 2019

davezarzycki added a comment to D58216: Support attribute used in member funcs of class templates II.

https://bugs.llvm.org/show_bug.cgi?id=41016

Mar 8 2019, 11:02 AM · Restricted Project
davezarzycki added a comment to D58216: Support attribute used in member funcs of class templates II.

I've got a patch pending for Swift. That being said, the clang diagnostics leave something to be desired. If __attribute__((used)) on definitions is sloppy at best or wrong at worst, then that should have a warning/error. Want a bug report? Or does one exist already?

Mar 8 2019, 9:51 AM · Restricted Project

Mar 7 2019

davezarzycki updated subscribers of D58216: Support attribute used in member funcs of class templates II.

I can't get Swift top-of-tree to build with gcc (8.3.1 20190223 (Red Hat 8.3.1-2)), and I doubt that it is supported, but I could be wrong.

Mar 7 2019, 5:57 AM · Restricted Project

Feb 28 2019

davezarzycki added a comment to D58418: [clang][DirectoryWatcher] Upstream DirectoryWatcher.

Can we please revert this code? One cannot use dynamic_cast on a char *. Did you mean reinterpret_cast?

Feb 28 2019, 4:03 AM · Restricted Project, Restricted Project

Feb 13 2019

davezarzycki added a comment to D58107: [MinGW] Add the profiling library when necessary.

This change breaks building/testing the compiler with CLANG_DEFAULT_LINKER set to lld. Was this intentional? What should people do if they want to use CLANG_DEFAULT_LINKER and run the test suite?

Feb 13 2019, 4:52 AM · Restricted Project, Restricted Project

Feb 3 2019

davezarzycki added a comment to D57592: Replace uses of %T with %t in from previous frontend test differential .

Hot fix: r352996

Feb 3 2019, 7:51 AM · Restricted Project, Restricted Project
davezarzycki committed rG4a0a64ac1d74: Hot fix two test regressions (%T vs %t) (authored by davezarzycki).
Hot fix two test regressions (%T vs %t)
Feb 3 2019, 7:50 AM
davezarzycki committed rL352996: Hot fix two test regressions (%T vs %t).
Hot fix two test regressions (%T vs %t)
Feb 3 2019, 7:50 AM
davezarzycki committed rC352996: Hot fix two test regressions (%T vs %t).
Hot fix two test regressions (%T vs %t)
Feb 3 2019, 7:50 AM

Jan 31 2019

davezarzycki added a comment to D56928: Support attribute used in member funcs of class templates.

This change broke building Swift on my Linux box. The compiler confusingly complains about the *same* template being both explicitly specialized and implicitly instantiated:

/home/dave/s/u/swift/stdlib/public/runtime/ProtocolConformance.cpp:34:38: error: explicit specialization of 'dump' after instantiation
template <> void ProtocolDescriptor::dump() const {
                                     ^
/home/dave/s/u/swift/stdlib/public/runtime/ProtocolConformance.cpp:34:18: note: implicit instantiation first required here
template <> void ProtocolDescriptor::dump() const {
                 ^

Is this expected?

Jan 31 2019, 5:23 AM · Restricted Project

Dec 21 2018

davezarzycki added a comment to D51798: [Dwarf/AArch64] Return address signing B key dwarf support.

Turns out my setup was busted and I thought I was building/testing AArch64 when I wasn't. I think you need to add // REQUIRES: aarch64-registered-target to the file.

Dec 21 2018, 4:28 AM
davezarzycki added a comment to D51798: [Dwarf/AArch64] Return address signing B key dwarf support.

My mistake. Something else is going on. I assumed based on past precedent that this was what was going on. (I'm not sure how many people at ARM are verifying that their AArch64 commits work when the 32-bit target is disabled).

Dec 21 2018, 4:14 AM
davezarzycki added a comment to D51798: [Dwarf/AArch64] Return address signing B key dwarf support.

FYI – The following test fails if the ARM 32-bit target is NOT built alongside the 64-bit ARM target: MC/ELF/cfi-b-key-frame.s

Dec 21 2018, 3:49 AM

Dec 18 2018

davezarzycki added inline comments to D55263: [CodeGen][ExpandMemcmp] Add an option for allowing overlapping loads..
Dec 18 2018, 4:40 AM

Dec 13 2018

davezarzycki added a comment to D55263: [CodeGen][ExpandMemcmp] Add an option for allowing overlapping loads..

By the way, LLVM itself will benefit nicely from this change. For example, the code gen for llvm::StringSwitch will improve dramatically.

Dec 13 2018, 3:24 AM

Dec 11 2018

davezarzycki added a comment to D55365: [CodeGen] Allow mempcy/memset to generate small overlapping stores..

This was instantly reverted. Is there a new Differential # I can subscribe to?

Dec 11 2018, 3:29 PM
davezarzycki added a comment to D55263: [CodeGen][ExpandMemcmp] Add an option for allowing overlapping loads..

I just looked over the codegen changes so far, but I want to add some more knowledgeable x86 hackers to have a look too. There are 2 concerns:

  1. Are there any known uarch problems with overlapping loads?
  2. Are there any known uarch problems with unaligned accesses (either scalar or SSE)?

    If there's any perf data (either nano-benchmarks or full apps) to support the changes, that would be nice to see. This reminds me of PR33329: https://bugs.llvm.org/show_bug.cgi?id=33329 (can we close that now?)

Let's not lose sight of the big picture here. If uarch problems exist, are they *worse* than the cost of calling memcmp()? In other words, is the likely register spills, function call overhead, and dynamic algorithm selection (given the constantness of the size parameter is lost) worth it?

No real argument from me - I just wanted to be sure that nobody knew of some pre-existing uarch disaster potential. The change should be a nice win for the general x86 case. I've just added some nits in the inline comments.

Dec 11 2018, 3:59 AM

Dec 10 2018

davezarzycki added a comment to D55263: [CodeGen][ExpandMemcmp] Add an option for allowing overlapping loads..

I just looked over the codegen changes so far, but I want to add some more knowledgeable x86 hackers to have a look too. There are 2 concerns:

  1. Are there any known uarch problems with overlapping loads?
  2. Are there any known uarch problems with unaligned accesses (either scalar or SSE)?

    If there's any perf data (either nano-benchmarks or full apps) to support the changes, that would be nice to see. This reminds me of PR33329: https://bugs.llvm.org/show_bug.cgi?id=33329 (can we close that now?)
Dec 10 2018, 5:19 AM

Dec 7 2018

davezarzycki added a comment to D55085: Avoid emitting redundant or unusable directories in DIFile metadata entries.

This change broke the test suite when building in /tmp (tmpfs) on Linux:

Dec 7 2018, 7:27 AM · debug-info

Dec 1 2018

davezarzycki added a comment to D54518: [GlobalISel] Fix insertion of stack-protector epilogue.

r347862 of this change broke the ability to run the test suite with the ARM64 backend enabled BUT without the ARM backend enabled. Was this intentional? See below:

Dec 1 2018, 5:05 AM

Oct 12 2018

davezarzycki added a comment to D53219: Update hexagon driver tests.

Tested and verified with -DCLANG_DEFAULT_LINKER=lld

Oct 12 2018, 3:34 PM
davezarzycki accepted D53219: Update hexagon driver tests.
Oct 12 2018, 3:34 PM
davezarzycki added a comment to D53038: [Hexagon] Use GetLinkerPath method instead of hard-coded linker name..

A bisect revealed this change as the source of test failures on my Red Hat Fedora 28 Linux box. How was/is this tested?

Oct 12 2018, 7:26 AM

Jul 18 2018

davezarzycki added a comment to D49457: DR330: when determining whether a cast casts away constness, consider qualifiers from all levels matching a multidimensional array.

Hi @rsmith – I've verified this patch fixes the original issue. Thanks for the quick fix!

Jul 18 2018, 5:10 AM

Jul 12 2018

davezarzycki resigned from D49242: [Intrinsics] define funnel shift IR intrinsics + DAG builder support.
Jul 12 2018, 12:27 PM

Jun 15 2018

davezarzycki removed a reviewer for D47196: [Time-report ](2): Recursive timers in Clang: davezarzycki.
Jun 15 2018, 2:41 PM

May 3 2018

davezarzycki committed rLLD331444: [CMake] Fix BUILD_SHARED_LIBS regression due to r331405.
[CMake] Fix BUILD_SHARED_LIBS regression due to r331405
May 3 2018, 3:08 AM
davezarzycki committed rL331444: [CMake] Fix BUILD_SHARED_LIBS regression due to r331405.
[CMake] Fix BUILD_SHARED_LIBS regression due to r331405
May 3 2018, 3:08 AM

Apr 19 2018

davezarzycki closed D45777: [UnitTests] NFC/build-perf: Break up nontrivial compile jobs.

Committed as r330353

Apr 19 2018, 11:24 AM
davezarzycki committed rL330353: [UnitTests] NFC/build-perf: Break up nontrivial compile jobs.
[UnitTests] NFC/build-perf: Break up nontrivial compile jobs
Apr 19 2018, 11:22 AM
davezarzycki committed rC330353: [UnitTests] NFC/build-perf: Break up nontrivial compile jobs.
[UnitTests] NFC/build-perf: Break up nontrivial compile jobs
Apr 19 2018, 11:22 AM
davezarzycki added a comment to D45777: [UnitTests] NFC/build-perf: Break up nontrivial compile jobs.

Ping. Any review feedback would be appreciated. Thanks!

Apr 19 2018, 4:19 AM

Apr 18 2018

davezarzycki created D45777: [UnitTests] NFC/build-perf: Break up nontrivial compile jobs.
Apr 18 2018, 10:18 AM

Apr 12 2018

davezarzycki abandoned D45485: [CMake] Unbreak BUILD_SHARED_LIBS workflow.
Apr 12 2018, 11:56 AM
davezarzycki added a comment to D43578: -ftime-report switch support in Clang.

It wasn't my suggestion. @thakis wrote: "We probably should have a separate bool in clang and key this off that and make -ftime-report set both."

Apr 12 2018, 9:24 AM

Apr 10 2018

davezarzycki added a comment to D43578: -ftime-report switch support in Clang.

Hi @efriedma – Sorry about that. I haven't directly used svn in years thanks to the git svn bridge.

Apr 10 2018, 1:30 PM
davezarzycki added a comment to D43578: -ftime-report switch support in Clang.

A revert in practice just means undoing the changes. For example, while both git and svn have revert subcommands, you can also just take the original diff/patch, pipe it into patch -R, and if there are no conflicts, commit the result.

Apr 10 2018, 10:58 AM
davezarzycki added a comment to D45462: Add missing nullptr check before getSection() to AArch64MachObjectWriter::recordRelocation.

FYI – This test fails on my machine (Release+Assert):

Apr 10 2018, 10:15 AM
davezarzycki accepted D45488: [X86] Disable SGX for Skylake Server - CPP test.
Apr 10 2018, 8:04 AM
davezarzycki added a comment to D45488: [X86] Disable SGX for Skylake Server - CPP test.

I don't think this change is correct. To the best of my knowledge, SKL does support SGX but SKX does not.

Apr 10 2018, 7:52 AM
davezarzycki added a comment to rC329701: [X86] Disable SGX for Skylake Server.

I think this change is incomplete. The following clang test fails on my SKX machine: Preprocessor/predefined-arch-macros.c

Apr 10 2018, 7:32 AM
davezarzycki added a comment to D45058: [X86] Disable SGX for Skylake Server.
Apr 10 2018, 7:29 AM
davezarzycki added a comment to D45485: [CMake] Unbreak BUILD_SHARED_LIBS workflow.

Great! I'll revisit this patch in a week and see if it is still needed. Hopefully the author of D43578 will make this patch unnecessary by then.

Apr 10 2018, 6:59 AM
davezarzycki added a comment to D45485: [CMake] Unbreak BUILD_SHARED_LIBS workflow.

I haven't proven that r329684 is the source of the regression, but it is the only timer related change in the last 24 hours as far as I can tell.

Apr 10 2018, 6:18 AM
davezarzycki created D45485: [CMake] Unbreak BUILD_SHARED_LIBS workflow.
Apr 10 2018, 5:57 AM

Apr 9 2018

davezarzycki added a comment to D45019: [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate.

This was committed.

Apr 9 2018, 6:56 AM
davezarzycki abandoned D45019: [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate.
Apr 9 2018, 6:56 AM

Mar 29 2018

davezarzycki added a comment to D45019: [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate.

Yup. I've already done a ninja check-all with llvm, lld, clang, and clang-tools-extras, and everything seems fine.

Mar 29 2018, 9:55 AM
davezarzycki committed rL328803: [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate.
[ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate
Mar 29 2018, 9:54 AM
davezarzycki created D45019: [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate.
Mar 29 2018, 5:48 AM

Mar 9 2018

davezarzycki closed D44271: [CMake] Properly conditionalize installation of lld libraries.
Mar 9 2018, 5:15 AM
davezarzycki committed rLLD327126: [CMake] Properly conditionalize installation of lld libraries.
[CMake] Properly conditionalize installation of lld libraries
Mar 9 2018, 5:12 AM
davezarzycki committed rL327126: [CMake] Properly conditionalize installation of lld libraries.
[CMake] Properly conditionalize installation of lld libraries
Mar 9 2018, 5:12 AM

Mar 8 2018

davezarzycki added a reviewer for D44271: [CMake] Properly conditionalize installation of lld libraries: phosek.
Mar 8 2018, 12:50 PM
davezarzycki created D44271: [CMake] Properly conditionalize installation of lld libraries.
Mar 8 2018, 12:43 PM
davezarzycki committed rL327036: [Tests] Remove empty test file that causes the test suite to fail.
[Tests] Remove empty test file that causes the test suite to fail
Mar 8 2018, 10:05 AM
davezarzycki committed rL327002: [CMake] Add missing test dependency.
[CMake] Add missing test dependency
Mar 8 2018, 6:47 AM

Feb 26 2018

davezarzycki committed rCTE326118: Fix for LLVM r326109.
Fix for LLVM r326109
Feb 26 2018, 12:26 PM
davezarzycki committed rL326118: Fix for LLVM r326109.
Fix for LLVM r326109
Feb 26 2018, 12:26 PM
davezarzycki abandoned D43239: Improve internal StringSwitch code gen with Optional<T>.
Feb 26 2018, 10:47 AM
davezarzycki closed D43436: [Perf] Simplify llvm::StringSwitch and improve incremental rebuild by 54%.

LLVM: r326109
clang: r326110

Feb 26 2018, 10:47 AM
davezarzycki committed rC326110: Fix for LLVM r326109.
Fix for LLVM r326109
Feb 26 2018, 10:45 AM
davezarzycki committed rL326110: Fix for LLVM r326109.
Fix for LLVM r326109
Feb 26 2018, 10:45 AM
davezarzycki committed rL326109: [ADT] Simplify and optimize StringSwitch.
[ADT] Simplify and optimize StringSwitch
Feb 26 2018, 10:43 AM
davezarzycki updated the diff for D43436: [Perf] Simplify llvm::StringSwitch and improve incremental rebuild by 54%.

I think this final diff addresses all concerns, including some amount of move-only type compatibility (it compiles, but I'm not sure the experience is pleasurable).

Feb 26 2018, 6:01 AM
davezarzycki committed rL326085: Test commit.
Test commit
Feb 26 2018, 5:07 AM