Page MenuHomePhabricator

Bigcheese (Michael Spencer)
User

Projects

User does not belong to any projects.

User Details

User Since
Jul 7 2012, 3:08 PM (428 w, 6 d)

Recent Activity

Wed, Sep 23

Bigcheese accepted D68997: Allow searching for prebuilt implicit modules..

LGTM

Wed, Sep 23, 4:30 PM · Restricted Project

Thu, Aug 27

Bigcheese accepted D86290: Move all fields of '-cc1' option related classes into def file databases.

lgtm.

Thu, Aug 27, 10:12 AM · Restricted Project

Aug 19 2020

Bigcheese accepted D83298: Add ability to make fixups to CompilerInvocation after option parsing.

lgtm.

Aug 19 2020, 5:53 PM · Restricted Project
Bigcheese added inline comments to D83211: Factor out call to EXTRACTOR in generateCC1CommandLine.
Aug 19 2020, 5:52 PM · Restricted Project
Bigcheese accepted D82860: Port ObjCMTAction to new option parsing system.

lgtm

Aug 19 2020, 5:45 PM · Restricted Project, Restricted Project

Aug 14 2020

Bigcheese accepted D83071: Add support for options with two flags for controlling the same field..

lgtm

Aug 14 2020, 10:07 AM · Restricted Project, Restricted Project

Jul 30 2020

Bigcheese added inline comments to D68997: Allow searching for prebuilt implicit modules..
Jul 30 2020, 1:31 PM · Restricted Project

Jul 20 2020

Bigcheese accepted D84185: Better defaults for MarshallingInfoString.

lgtm

Jul 20 2020, 10:07 AM · Restricted Project, Restricted Project

Jul 17 2020

Bigcheese committed rG7fcc1bb4b654: [clangd] Fix the build with clang <3.9. (authored by Bigcheese).
[clangd] Fix the build with clang <3.9.
Jul 17 2020, 3:14 PM
Bigcheese committed rGfda901a987dd: [Clang] Fix building with Clang < 3.9. (authored by Bigcheese).
[Clang] Fix building with Clang < 3.9.
Jul 17 2020, 12:34 PM

Jul 14 2020

GitHub <noreply@github.com> committed rG5cbb4fe23a48: Merge pull request #1327 from Bigcheese/59908962 (authored by Bigcheese).
Merge pull request #1327 from Bigcheese/59908962
Jul 14 2020, 4:54 PM
Bigcheese committed rG41745af7f7b9: [clang] Use IsVolatile=true and RequiresNullTerminator=false for PCMs (authored by Bigcheese).
[clang] Use IsVolatile=true and RequiresNullTerminator=false for PCMs
Jul 14 2020, 4:54 PM
GitHub <noreply@github.com> committed rG82811095a908: Merge pull request #1251 from Bigcheese/44987 (authored by Bigcheese).
Merge pull request #1251 from Bigcheese/44987
Jul 14 2020, 4:51 PM
Bigcheese committed rG6ffd432a8966: Use FinishThunk to finish musttail thunks (authored by rnk).
Use FinishThunk to finish musttail thunks
Jul 14 2020, 4:51 PM
GitHub <noreply@github.com> committed rG809d01c5274e: Merge pull request #1239 from Bigcheese/fix-intrin (authored by Bigcheese).
Merge pull request #1239 from Bigcheese/fix-intrin
Jul 14 2020, 4:51 PM
Bigcheese committed rGca9ed6e2fb3c: Revert "Re-fix _lrotl/_lrotr to always take Long, no matter the platform." (authored by Bigcheese).
Revert "Re-fix _lrotl/_lrotr to always take Long, no matter the platform."
Jul 14 2020, 4:51 PM
Bigcheese added a reverting change for rG92146ce399cd: Re-fix _lrotl/_lrotr to always take Long, no matter the platform.: rGca9ed6e2fb3c: Revert "Re-fix _lrotl/_lrotr to always take Long, no matter the platform.".
Jul 14 2020, 4:51 PM
GitHub <noreply@github.com> committed rG768b425799ae: Merge pull request #1129 from Bigcheese/cherry-pick-d69575 (authored by Bigcheese).
Merge pull request #1129 from Bigcheese/cherry-pick-d69575
Jul 14 2020, 4:47 PM
Bigcheese committed rG082948a2d269: Improve module.pcm lock file performance on machines with high core counts (authored by Ladd).
Improve module.pcm lock file performance on machines with high core counts
Jul 14 2020, 4:47 PM
GitHub <noreply@github.com> committed rG526621643c79: Merge pull request #1117 from Bigcheese/modules-mmap (authored by Bigcheese).
Merge pull request #1117 from Bigcheese/modules-mmap
Jul 14 2020, 4:47 PM
Bigcheese committed rGce625f14169e: [Clang] Expose RequiresNullTerminator in FileManager. (authored by Bigcheese).
[Clang] Expose RequiresNullTerminator in FileManager.
Jul 14 2020, 4:47 PM
GitHub <noreply@github.com> committed rGe3385fb7bf91: Merge pull request #880 from Bigcheese/apple/arm_acle (authored by Bigcheese).
Merge pull request #880 from Bigcheese/apple/arm_acle
Jul 14 2020, 4:32 PM
Bigcheese committed rG459ab6a9bbbc: [clang][Headers] Use __has_builtin instead of _MSC_VER. (authored by Bigcheese).
[clang][Headers] Use __has_builtin instead of _MSC_VER.
Jul 14 2020, 4:32 PM
GitHub <noreply@github.com> committed rG0066d17dac4a: Merge pull request #792 from Bigcheese/scan-deps-stable (authored by Bigcheese).
Merge pull request #792 from Bigcheese/scan-deps-stable
Jul 14 2020, 4:24 PM
Bigcheese committed rG6df82a89ea5f: [Clang][Lex] Remove debugging code. (authored by Bigcheese).
[Clang][Lex] Remove debugging code.
Jul 14 2020, 4:24 PM
Bigcheese committed rGe85477ddb3e2: [Clang][ScanDeps] Ignore __inferred_module.map dependency. (authored by Bigcheese).
[Clang][ScanDeps] Ignore __inferred_module.map dependency.
Jul 14 2020, 4:24 PM
Bigcheese committed rG2572468081c2: [Clang] Fix the header paths in `clang::Module` for inferred modules. (authored by Bigcheese).
[Clang] Fix the header paths in `clang::Module` for inferred modules.
Jul 14 2020, 4:24 PM
Bigcheese committed rG0c02ad99db51: [Clang] Allow explicitly building an inferred module. (authored by Bigcheese).
[Clang] Allow explicitly building an inferred module.
Jul 14 2020, 4:24 PM
Bigcheese committed rG008966ca2e47: [Clang][cc1] Support -fno-implicit-module-maps in -cc1. (authored by Bigcheese).
[Clang][cc1] Support -fno-implicit-module-maps in -cc1.
Jul 14 2020, 4:24 PM
Bigcheese committed rG9205e61ea88a: [Clang] Temporarily comment out assert. (authored by Bigcheese).
[Clang] Temporarily comment out assert.
Jul 14 2020, 4:24 PM
Bigcheese committed rG46cfddafe85b: [Clang][ScanDeps] Use the module map a module was inferred from for inferred… (authored by Bigcheese).
[Clang][ScanDeps] Use the module map a module was inferred from for inferred…
Jul 14 2020, 4:24 PM
Bigcheese committed rG27bc98ab34ff: [Clang][ScanDeps] Actually pass the non path command line modifications. (authored by Bigcheese).
[Clang][ScanDeps] Actually pass the non path command line modifications.
Jul 14 2020, 4:24 PM
Bigcheese committed rG7eb316817ef6: [Clang][cc1] Add -remove-preceeding-explicit-module-build-incompatible-options (authored by Bigcheese).
[Clang][cc1] Add -remove-preceeding-explicit-module-build-incompatible-options
Jul 14 2020, 4:24 PM
Bigcheese committed rGb24296d9e4be: [libclang] Add clang_Driver_getExternalActionsForCommand_v0 (authored by Bigcheese).
[libclang] Add clang_Driver_getExternalActionsForCommand_v0
Jul 14 2020, 4:24 PM
Bigcheese committed rGe7c6ab3bcd43: [clang][clang-scan-deps] Add an experimental C API. (authored by Bigcheese).
[clang][clang-scan-deps] Add an experimental C API.
Jul 14 2020, 4:24 PM
Bigcheese committed rG696e280a36dd: [Clang][ScanDeps] Pass diagnostics to `getModuleHash`. (authored by Bigcheese).
[Clang][ScanDeps] Pass diagnostics to `getModuleHash`.
Jul 14 2020, 4:24 PM
Bigcheese committed rG53947a577ead: [clang][clang-scan-deps] Aggregate the full dependency information. (authored by Bigcheese).
[clang][clang-scan-deps] Aggregate the full dependency information.
Jul 14 2020, 4:24 PM
GitHub <noreply@github.com> committed rG8bd683f83e1f: Merge pull request #754 from Bigcheese/scan-deps-stable (authored by Bigcheese).
Merge pull request #754 from Bigcheese/scan-deps-stable
Jul 14 2020, 4:22 PM
Bigcheese committed rGb429e1cf63dc: [Clang][Lex] Remove debugging code. (authored by Bigcheese).
[Clang][Lex] Remove debugging code.
Jul 14 2020, 4:22 PM
Bigcheese committed rG05bfc81f9d0a: [Clang][ScanDeps] Ignore __inferred_module.map dependency. (authored by Bigcheese).
[Clang][ScanDeps] Ignore __inferred_module.map dependency.
Jul 14 2020, 4:22 PM
Bigcheese committed rG3ddc2d4b1228: [Clang] Fix the header paths in `clang::Module` for inferred modules. (authored by Bigcheese).
[Clang] Fix the header paths in `clang::Module` for inferred modules.
Jul 14 2020, 4:22 PM
Bigcheese committed rG56ff1f1096fa: [Clang] Allow explicitly building an inferred module. (authored by Bigcheese).
[Clang] Allow explicitly building an inferred module.
Jul 14 2020, 4:22 PM
Bigcheese committed rG4876ab38323f: [Clang][cc1] Support -fno-implicit-module-maps in -cc1. (authored by Bigcheese).
[Clang][cc1] Support -fno-implicit-module-maps in -cc1.
Jul 14 2020, 4:22 PM
Bigcheese committed rG61c21390a146: [Clang] Temporarily comment out assert. (authored by Bigcheese).
[Clang] Temporarily comment out assert.
Jul 14 2020, 4:22 PM
Bigcheese committed rG4e1cda68107a: [Clang][ScanDeps] Use the module map a module was inferred from for inferred… (authored by Bigcheese).
[Clang][ScanDeps] Use the module map a module was inferred from for inferred…
Jul 14 2020, 4:22 PM
Bigcheese committed rG611489822fce: [Clang][ScanDeps] Actually pass the non path command line modifications. (authored by Bigcheese).
[Clang][ScanDeps] Actually pass the non path command line modifications.
Jul 14 2020, 4:22 PM
Bigcheese committed rGcf2048b954f8: [Clang][cc1] Add -remove-preceeding-explicit-module-build-incompatible-options (authored by Bigcheese).
[Clang][cc1] Add -remove-preceeding-explicit-module-build-incompatible-options
Jul 14 2020, 4:22 PM
Bigcheese committed rGced3ced67cd5: [libclang] Add clang_Driver_getExternalActionsForCommand_v0 (authored by Bigcheese).
[libclang] Add clang_Driver_getExternalActionsForCommand_v0
Jul 14 2020, 4:21 PM
Bigcheese committed rGe23a09ebb8d7: [clang][clang-scan-deps] Add an experimental C API. (authored by Bigcheese).
[clang][clang-scan-deps] Add an experimental C API.
Jul 14 2020, 4:21 PM
Bigcheese committed rGcd0f9c81c08e: [Clang][ScanDeps] Pass diagnostics to `getModuleHash`. (authored by Bigcheese).
[Clang][ScanDeps] Pass diagnostics to `getModuleHash`.
Jul 14 2020, 4:21 PM
Bigcheese committed rG3299f974dc3b: [clang][clang-scan-deps] Aggregate the full dependency information. (authored by Bigcheese).
[clang][clang-scan-deps] Aggregate the full dependency information.
Jul 14 2020, 4:21 PM

Jul 13 2020

Bigcheese accepted D83406: Remove NormalizerRetTy and use the decltype of the KeyPath instead.

lgtm

Jul 13 2020, 10:22 AM · Restricted Project, Restricted Project
Bigcheese accepted D83690: Port Migator option flags to new option parsing system.

lgtm

Jul 13 2020, 10:19 AM · Restricted Project

Jul 7 2020

Bigcheese committed rG64788d7d5377: [clang] Include missing LangOpts in `getModuleHash`. (authored by Bigcheese).
[clang] Include missing LangOpts in `getModuleHash`.
Jul 7 2020, 4:15 PM
Bigcheese accepted D82574: Merge TableGen files used for clang options.

LGTM. We can look at splitting it up again once we know what the dependencies are.

Jul 7 2020, 10:38 AM · Restricted Project
Bigcheese accepted D83315: Turn arcmt-* options into a single option.

I have a slight preference for -arcmt-action=, but up to you if you want to change it. Otherwise LGTM.

Jul 7 2020, 10:31 AM · Restricted Project, Restricted Project

Jun 30 2020

Bigcheese accepted D82874: Add diagnostic option backing field for -fansi-escape-codes.

lgtm with the fix I mentioned.

Jun 30 2020, 10:50 AM · Restricted Project

Jun 23 2020

Bigcheese accepted D79796: Sketch support for generating CC1 command line from CompilerInvocation.

LGTM with KeyPathPrefix moved to the patch that actually uses it.

Jun 23 2020, 11:15 AM · Restricted Project, Restricted Project

Jun 19 2020

Bigcheese added inline comments to D79796: Sketch support for generating CC1 command line from CompilerInvocation.
Jun 19 2020, 2:41 PM · Restricted Project, Restricted Project

Jun 13 2020

Bigcheese added a comment to D81801: Remove KillTheDoctor.

The reason KillTheDoctor exists is because of test-suite. It compiles and runs programs that do not contain calls to that API, and can do so with non-llvm compilers. I personally don't use it anymore as I don't run test-suite on Windows anymore, but I'm still not aware of any way short of changing registry settings to run test-suite on Windows without hanging other than this.

Jun 13 2020, 6:09 PM · Restricted Project, Restricted Project

Jun 11 2020

Bigcheese accepted D81588: Make behavior of getValueAsListOfStrings consistent with getValueAsString.

lgtm.

Jun 11 2020, 10:28 AM · Restricted Project

Jun 10 2020

Bigcheese committed rG1727c6aab340: [clang] Use IsVolatile=true and RequiresNullTerminator=false for PCMs (authored by Bigcheese).
[clang] Use IsVolatile=true and RequiresNullTerminator=false for PCMs
Jun 10 2020, 1:56 PM

Jun 3 2020

Bigcheese added inline comments to D79796: Sketch support for generating CC1 command line from CompilerInvocation.
Jun 3 2020, 5:40 PM · Restricted Project, Restricted Project

May 19 2020

Bigcheese added inline comments to D79796: Sketch support for generating CC1 command line from CompilerInvocation.
May 19 2020, 5:06 PM · Restricted Project, Restricted Project
Bigcheese added a comment to D79998: Add AST_SIGNATURE record to unhashed control block of pcm files (Patch series 2/3).

Should I add the test here or in the clang-scan-deps patch?

May 19 2020, 4:34 PM · Restricted Project
Bigcheese added a comment to D80172: Revert "Re-fix _lrotl/_lrotr to always take Long, no matter the platform.".
In D80172#2042946, @rnk wrote:

I'd be fine going back to the behavior from before.

Without this behavior there is no intrinsic for 32 bit rotates on these platforms.

Strictly speaking, there seems to be __builtin_rotate(left|right)32, which is portable to all clang platforms.

May 19 2020, 12:02 PM · Restricted Project

May 18 2020

Bigcheese created D80172: Revert "Re-fix _lrotl/_lrotr to always take Long, no matter the platform.".
May 18 2020, 4:50 PM · Restricted Project

May 13 2020

Bigcheese added a comment to D70351: [clang][WIP][clang-scan-deps] Add an experimental C API..

I mostly just need to rebase this patch now. I'll try to get to that soon.

May 13 2020, 10:50 AM · Restricted Project, Restricted Project

Apr 21 2020

Bigcheese accepted D78330: [libc++abi] Add a rate limiter when logging dynamic_cast errors.

LGTM

Apr 21 2020, 12:26 PM · Restricted Project

Apr 15 2020

Bigcheese committed rGbca47ef80e3e: [LLVM][SupportTests] Ask the OS how large the page size is instead of guessing. (authored by Bigcheese).
[LLVM][SupportTests] Ask the OS how large the page size is instead of guessing.
Apr 15 2020, 3:28 PM
Bigcheese committed rG18ee0fca8c41: [LLVM][SupportTests] Fix Windows build breakage (authored by Bigcheese).
[LLVM][SupportTests] Fix Windows build breakage
Apr 15 2020, 2:56 PM
Bigcheese committed rG92e8af0ecbe7: [Clang] Expose RequiresNullTerminator in FileManager. (authored by Bigcheese).
[Clang] Expose RequiresNullTerminator in FileManager.
Apr 15 2020, 2:22 PM
Bigcheese closed D77772: [Clang] Expose RequiresNullTerminator in FileManager..
Apr 15 2020, 2:22 PM · Restricted Project

Apr 10 2020

Bigcheese updated the diff for D77772: [Clang] Expose RequiresNullTerminator in FileManager..

Added a test.

Apr 10 2020, 5:48 PM · Restricted Project

Apr 9 2020

Bigcheese added a comment to D77772: [Clang] Expose RequiresNullTerminator in FileManager..

Not really. It's a static function in MemoryBuffer.cpp, and the MemoryBuffer class doesn't have a Kind member so we can't check for MemoryBufferMMapFile.

Apr 9 2020, 4:21 PM · Restricted Project

Apr 8 2020

Bigcheese created D77772: [Clang] Expose RequiresNullTerminator in FileManager..
Apr 8 2020, 9:02 PM · Restricted Project
Bigcheese added a comment to D77697: libc++: adjust modulemap for non-modular C.

@dexonsmith - yeah, sadly I dont think that there is a good way to audit that - any change to the public headers can cause issues. Furthermore, the libc headers themselves also influence this.

For auditing, can you use llvm-bcanalyze to see which headers are claimed by which PCM? If not, we should probably add a clang-pcm tool or something to help inspect module contents. @Bigcheese, thoughts?

I guess the obvious concern about this is that this is a game of whack-a-mole. If the headers change, you may need to shuffle module order again, at which point, which version of libc should we make libc++ work against? And different libc implementations could need different orders. But I'm just pointing it out; I don't have a problem with this patch landing.

Apr 8 2020, 4:51 PM · Restricted Project

Apr 3 2020

Bigcheese accepted D76572: Replace `T(x)` with `reinterpret_cast<T>(x)` everywhere it means reinterpret_cast. No functional change.

LGTM for llvm/{lib,include/llvm}/Object/* and llvm/tools/llvm-readobj/*.

Apr 3 2020, 2:38 PM · Restricted Project

Mar 23 2020

Bigcheese committed rGa20862307fff: Improve module.pcm lock file performance on machines with high core counts (authored by Ladd).
Improve module.pcm lock file performance on machines with high core counts
Mar 23 2020, 3:16 PM
Bigcheese closed D69575: Improve module.pcm lock file performance on machines with high core counts.
Mar 23 2020, 3:16 PM · Restricted Project
Bigcheese added a comment to D69575: Improve module.pcm lock file performance on machines with high core counts.

committed as a20862307fff9385bbf6562de3154d05138f8bec.

Mar 23 2020, 3:16 PM · Restricted Project

Mar 13 2020

Bigcheese accepted D69575: Improve module.pcm lock file performance on machines with high core counts.

Sorry for the delay. LGTM. I'll commit with you as the author.

Mar 13 2020, 12:55 PM · Restricted Project

Mar 6 2020

Bigcheese committed rG16af23fae8ad: [clang][Headers] Use __has_builtin instead of _MSC_VER. (authored by Bigcheese).
[clang][Headers] Use __has_builtin instead of _MSC_VER.
Mar 6 2020, 1:50 PM
Bigcheese closed D75719: [clang][Headers] Use __has_builtin instead of _MSC_VER..
Mar 6 2020, 1:50 PM · Restricted Project

Mar 5 2020

Bigcheese created D75719: [clang][Headers] Use __has_builtin instead of _MSC_VER..
Mar 5 2020, 6:35 PM · Restricted Project
Bigcheese added a comment to D69575: Improve module.pcm lock file performance on machines with high core counts.

@Bigcheese -- any more thoughts on this one? It would be helpful to have some version of this fix in the release compiler.

Mar 5 2020, 5:31 PM · Restricted Project

Mar 3 2020

Bigcheese committed rG27a3ecee4558: [clang][Modules] Add -fsystem-module flag (authored by Bigcheese).
[clang][Modules] Add -fsystem-module flag
Mar 3 2020, 2:27 PM
Bigcheese closed D75395: [clang][Modules] Add -fsystem-module flag.
Mar 3 2020, 2:26 PM · Restricted Project

Mar 2 2020

Bigcheese updated the diff for D75395: [clang][Modules] Add -fsystem-module flag.

Cleaned up the test to not reference unused paths.

Mar 2 2020, 4:38 PM · Restricted Project
Bigcheese added a comment to D75395: [clang][Modules] Add -fsystem-module flag.

This is used when
converting an implicit build to an explicit build to match the
systemness the implicit build would have had for a given module.

I had another thought. What if for the explicitly built "system" modules:

  • If -Wsystem-headers is on, leave them as user modules in the explicit build.
  • If -Wsystem-headers is off, turn off all diagnostics in the explicit build.

Does that give the right semantics, or is there something subtly different?

Mar 2 2020, 2:56 PM · Restricted Project
Bigcheese added inline comments to D75395: [clang][Modules] Add -fsystem-module flag.
Mar 2 2020, 2:09 PM · Restricted Project

Feb 28 2020

Bigcheese created D75395: [clang][Modules] Add -fsystem-module flag.
Feb 28 2020, 5:38 PM · Restricted Project
Bigcheese committed rG0b6abe428164: [llvm][Support][modulemap] Exclude WindowsSupport.h from the LLVM_Util module (authored by Bigcheese).
[llvm][Support][modulemap] Exclude WindowsSupport.h from the LLVM_Util module
Feb 28 2020, 2:45 PM
Bigcheese added a comment to D74599: llvm-ar: Fix MinGW compilation.

I pushed a commit fixing this in rG0b6abe428164 by just excluding the header.

Feb 28 2020, 2:45 PM · Restricted Project
Bigcheese added a comment to D74599: llvm-ar: Fix MinGW compilation.

I'm pretty sure this commit broke the modules build on non-Windows. WindowsSupport.h is now part of the LLVM_Util module which gets built on all platforms. You need to update the modulemap to put it in its own module, or wrap it in #ifdef.

Feb 28 2020, 1:24 PM · Restricted Project

Feb 26 2020

Bigcheese accepted D74892: [lldb][cmake] Also use local submodule visibility on Darwin.

lgtm

Feb 26 2020, 2:57 PM · Restricted Project, Restricted Project

Feb 25 2020

Bigcheese added a comment to rG82b47b297840: [libc++] Move abs and div into stdlib.h to fix header cycle..

The aforementioned review is at https://reviews.llvm.org/D74892. I'm currently verifying it fixes everything for us. I'll update you when you're good to recommit this, which should happen this week.

Feb 25 2020, 1:11 PM

Feb 20 2020

Bigcheese committed rGd4ded05ba851: [libunwind][CMake] Treat S files as C to work around CMake bug. (authored by Bigcheese).
[libunwind][CMake] Treat S files as C to work around CMake bug.
Feb 20 2020, 3:28 PM
Bigcheese added a comment to D72952: [libunwind] Set LIBUNWIND_ASM_SOURCES to the ASM source language from C.

Confirmed that CMake has a bug here: https://github.com/Kitware/CMake/blob/master/Source/cmLocalGenerator.cxx#L1780

Feb 20 2020, 3:16 PM · Restricted Project
Bigcheese added a comment to D72952: [libunwind] Set LIBUNWIND_ASM_SOURCES to the ASM source language from C.

This change also breaks MacOS, as -arch doesn't get passed to these invocations. Possibly CMAKE_OSX_ARCHITECTURES not being handled correctly within CMake.

Feb 20 2020, 2:48 PM · Restricted Project