Page MenuHomePhabricator

hans (Hans Wennborg)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 18 2013, 6:48 AM (352 w, 2 d)

Recent Activity

Yesterday

hans committed rGb28326516ca3: Revert 9007f06af0e "Revert "Allow system header to provide their own… (authored by hans).
Revert 9007f06af0e "Revert "Allow system header to provide their own…
Fri, Jan 17, 3:58 AM
hans added a reverting change for rG9007f06af0e0: Revert "Allow system header to provide their own implementation of some builtin": rGb28326516ca3: Revert 9007f06af0e "Revert "Allow system header to provide their own….
Fri, Jan 17, 3:58 AM
hans committed rG9007f06af0e0: Revert "Allow system header to provide their own implementation of some builtin" (authored by akhuang).
Revert "Allow system header to provide their own implementation of some builtin"
Fri, Jan 17, 1:47 AM
hans added a reverting change for rG921f871ac438: Allow system header to provide their own implementation of some builtin: rG9007f06af0e0: Revert "Allow system header to provide their own implementation of some builtin".
Fri, Jan 17, 1:47 AM
hans committed rG572c7f6fe7b5: Revert "[OPENMP]Do not use RTTI by default for NVPTX devices." (authored by ABataev).
Revert "[OPENMP]Do not use RTTI by default for NVPTX devices."
Fri, Jan 17, 1:38 AM
hans added a reverting change for rG23058f9dd4d7: [OPENMP]Do not use RTTI by default for NVPTX devices.: rG572c7f6fe7b5: Revert "[OPENMP]Do not use RTTI by default for NVPTX devices.".
Fri, Jan 17, 1:37 AM
hans committed rGa10f87d5695b: [OpenMP][Tool] Fix memory leak and double-allocation (authored by protze.joachim).
[OpenMP][Tool] Fix memory leak and double-allocation
Fri, Jan 17, 1:19 AM
hans added a comment to D72543: [libcxxabi] Insert padding in __cxa_exception struct for compatibility.

Additionally, is this something that should be picked to 10.0 after it's committed?

I think this should be put in 10.0, yes.

CC @hans

Fri, Jan 17, 1:18 AM · Restricted Project
hans added a comment to D72779: [OpenMP][Tool] Fix memory leak and double-allocation.

Cherry-picked to 10.x in a10f87d5695bdd4f1e366c82fd2869f0fe1d4cfe

Fri, Jan 17, 1:18 AM · Restricted Project
hans committed rGafbebff6cd7b: [ELF] Avoid false-positive assert in getErrPlace() (authored by arichardson).
[ELF] Avoid false-positive assert in getErrPlace()
Fri, Jan 17, 1:14 AM
hans committed rGf06cd8c8c8e2: [libcxx] Use mtx_plain | mtx_recursive following C11 API (authored by phosek).
[libcxx] Use mtx_plain | mtx_recursive following C11 API
Fri, Jan 17, 1:14 AM
hans added inline comments to D72848: Remove some SVN-specific code..
Fri, Jan 17, 1:14 AM · Restricted Project
hans added a comment to D72567: [ELF] Avoid false-positive assert in getErrPlace().

Should this be cherry-picked to the release branch?

Looks like a good candidate. Is @hans responsible for pushing a commit to release/10.x?

Fri, Jan 17, 1:14 AM · Restricted Project
hans added a comment to D72809: [libcxx] Use mtx_plain | mtx_recursive following C11 API.

LGTM.

We should backport this into the LLVM 10 release.
@hans Is that OK by you?

Fri, Jan 17, 1:09 AM · Restricted Project
hans committed rG2d2d057ae230: Add extra test file forgotten in 45d7080. (authored by rsmith).
Add extra test file forgotten in 45d7080.
Fri, Jan 17, 12:59 AM
hans committed rG0a08d2c4e783: PR42694 Support explicit(bool) in older language modes as an extension. (authored by rsmith).
PR42694 Support explicit(bool) in older language modes as an extension.
Fri, Jan 17, 12:59 AM
hans committed rGe241c8fe6d2e: Fix pack deduction to only deduce the arity of packs that are actually expanded… (authored by rsmith).
Fix pack deduction to only deduce the arity of packs that are actually expanded…
Fri, Jan 17, 12:55 AM
hans committed rG7a8b8f09daa1: PR17164: Change clang's default behavior from -flax-vector-conversions=all to… (authored by Richard Smith <richard-llvm@metafoo.co.uk>).
PR17164: Change clang's default behavior from -flax-vector-conversions=all to…
Fri, Jan 17, 12:53 AM
hans committed rGfdb501e59f25: Work around PR43337: don't try to use the vec_sel overloads for vector long… (authored by Richard Smith <richard-llvm@metafoo.co.uk>).
Work around PR43337: don't try to use the vec_sel overloads for vector long…
Fri, Jan 17, 12:53 AM
hans committed rGac2c2db1674f: [Transforms][RISCV] Remove a "using namespace llvm" from an include file. Fix a… (authored by craig.topper).
[Transforms][RISCV] Remove a "using namespace llvm" from an include file. Fix a…
Fri, Jan 17, 12:43 AM
hans added a comment to D72895: [Transforms][RISCV] Remove a "using namespace llvm" from an include file. Fix a place that became dependent on it..

Cherry-picked to 10.x in ac2c2db1674f200f87b05bee528c761600d87615 thanks!

Fri, Jan 17, 12:43 AM · Restricted Project
hans committed rG0ab035ae504d: Remove old Suversion release scripts (authored by hans).
Remove old Suversion release scripts
Fri, Jan 17, 12:37 AM

Thu, Jan 16

hans accepted D72848: Remove some SVN-specific code..
Thu, Jan 16, 7:41 AM · Restricted Project
hans accepted D72803: Make lld cmake not compute commit revision twice.
Thu, Jan 16, 6:51 AM · Restricted Project
hans committed rGac446302ca41: Revert "[mlir] Create a gpu.module operation for the GPU Dialect." (authored by bkramer).
Revert "[mlir] Create a gpu.module operation for the GPU Dialect."
Thu, Jan 16, 4:59 AM
hans added a reverting change for rG4624a1e8ac8a: [mlir] Create a gpu.module operation for the GPU Dialect.: rGac446302ca41: Revert "[mlir] Create a gpu.module operation for the GPU Dialect.".
Thu, Jan 16, 4:59 AM
hans committed rG00c74d0b644b: Remove release note about in-process-cc1 (authored by hans).
Remove release note about in-process-cc1
Thu, Jan 16, 4:27 AM
hans added a comment to D72769: Replace CLANG_SPAWN_CC1 env var with a driver mode flag.

Oh, and removed the release note from trunk in 00c74d0b644

Thu, Jan 16, 4:27 AM
hans added a comment to D72769: Replace CLANG_SPAWN_CC1 env var with a driver mode flag.

As I understand, the original patch made the new behaviour on-by-default and will make the release, so we want this flag on the release branch too, right?

Yes, this is on my list. Thanks for keeping the release branch in mind :-)

Thu, Jan 16, 4:27 AM
hans committed rGc4a134a5107c: Replace CLANG_SPAWN_CC1 env var with a driver mode flag (authored by thakis).
Replace CLANG_SPAWN_CC1 env var with a driver mode flag
Thu, Jan 16, 4:03 AM
hans added a comment to D72630: [clang-tidy] Ignore implicit casts in modernize-use-default-member-init.

It seems that while this commit got pushed to GitHub, it's not actually part of master or any other branches.

Thu, Jan 16, 2:17 AM · Restricted Project
hans added a comment to D72769: Replace CLANG_SPAWN_CC1 env var with a driver mode flag.

As I understand, the original patch made the new behaviour on-by-default and will make the release, so we want this flag on the release branch too, right?

Thu, Jan 16, 1:12 AM
hans added a comment to rG61bd19206f61: [libc++] Explicitly enumerate std::string external instantiations..

I've recommitted the libc++ changes. I believe each of the build failures mentioned here has been addressed.
Please inform me if you still hit errors.

Thu, Jan 16, 12:54 AM

Wed, Jan 15

hans accepted D72769: Replace CLANG_SPAWN_CC1 env var with a driver mode flag.

lgtm (with comment)

Wed, Jan 15, 8:56 AM
hans committed rG0b5157db53a3: First commit on the branch (authored by hans).
First commit on the branch
Wed, Jan 15, 4:48 AM
hans committed rG5852475e2c04: Bump the trunk major version to 11 (authored by hans).
Bump the trunk major version to 11
Wed, Jan 15, 4:39 AM

Tue, Jan 14

hans created D72703: Add a warning, flags and pragmas to limit the number of pre-processor tokens in a translation unit.
Tue, Jan 14, 7:24 AM
hans added a comment to rG61bd19206f61: [libc++] Explicitly enumerate std::string external instantiations..

This change also caused AppleClang 9.0.0.9000037 to crash while trying to build libcxx, which is problematic for Chromium because that's the version we use for bootstrapping clang/libcxx etc. on Mac.

Tue, Jan 14, 3:50 AM

Mon, Jan 13

hans accepted D69825: [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation.

Looks good to me (with a minor comment). Thanks!

Mon, Jan 13, 1:20 AM · Restricted Project, Restricted Project

Fri, Jan 10

hans added inline comments to D69825: [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation.
Fri, Jan 10, 8:15 AM · Restricted Project, Restricted Project
hans accepted D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.

Looks good to me. Thanks for pushing this forward!

Fri, Jan 10, 8:02 AM · Restricted Project, Restricted Project
hans committed rG164da673009b: Restore order in clang-tidy section of release notes (authored by hans).
Restore order in clang-tidy section of release notes
Fri, Jan 10, 12:24 AM

Thu, Jan 9

hans added a comment to D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.

The way Enable()/Disable() is currently implemented will not work when the tool executes jobs in parallel (ie. llvm-buildozer I presented at LLVM conference; or our re-implementation of /MP which I haven't published yet). It needs refcounting, otherwise one instance might disable the CRC while other threads are running, which effectively disables the crash handlers.
But we can discuss that in a separate review if you prefer. I'll remove it from this patch unless you say otherwise.

Yes, I think it would be good to deal with that separately, to allow for incremental progress.

Thu, Jan 9, 12:53 AM · Restricted Project, Restricted Project

Tue, Jan 7

hans committed rGe334a3a60f11: [docs] NFC: Fix typos in documents (authored by hans).
[docs] NFC: Fix typos in documents
Tue, Jan 7, 7:15 AM
hans closed D72091: [docs] NFC: Fix typos in documents.
Tue, Jan 7, 7:14 AM · Restricted Project
hans accepted D72091: [docs] NFC: Fix typos in documents.

Looks good to me. I'll commit it for you.

Tue, Jan 7, 7:07 AM · Restricted Project
hans accepted D72322: [TypePromotion] Use vectors instead of sets.

Looks good to me. Thanks!

Tue, Jan 7, 5:13 AM · Restricted Project
hans added a comment to D71923: fuzzfork allocating expected number of jobs.

Okay, in that case I would personally just make it an array. But maybe kcc has opinions on this, so let's wait to hear from him.

Tue, Jan 7, 4:55 AM · Restricted Project, Restricted Project
hans added a comment to D71923: fuzzfork allocating expected number of jobs.

But was there a bug before, or is this just an optimization? Maybe it could just be an array instead?

Tue, Jan 7, 3:04 AM · Restricted Project, Restricted Project
hans added a comment to D72091: [docs] NFC: Fix typos in documents.

Thanks! I just added a few comments.
Do you have commit access, or will you need someone to commit this for you?

Tue, Jan 7, 1:41 AM · Restricted Project
hans added inline comments to rGb409f73e1fd8: [ARM][TypePromotion] Re-enable by default.
Tue, Jan 7, 1:32 AM
hans added a comment to D71923: fuzzfork allocating expected number of jobs.

Looks okay to me, but maybe expand the comment to explain what's going on and what the patch is doing. "fuzzfork allocating expected number of jobs" sounds more like a bug report than a fix.

Tue, Jan 7, 12:26 AM · Restricted Project, Restricted Project

Dec 19 2019

hans committed rGdde7b6bcda9d: Re-land "Add an -fno-temp-file flag for compilation" (authored by hans).
Re-land "Add an -fno-temp-file flag for compilation"
Dec 19 2019, 4:40 AM
hans closed D70615: Add an -fno-temp-file flag for compilation.
Dec 19 2019, 4:40 AM · Restricted Project

Dec 18 2019

hans added a comment to D70615: Add an -fno-temp-file flag for compilation.

Sorry for the breakage, and thanks for reverting! I'll try to follow up and fix this tomorrow.

Dec 18 2019, 9:26 AM · Restricted Project
hans added a comment to D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.

The way Enable()/Disable() is currently implemented will not work when the tool executes jobs in parallel (ie. llvm-buildozer I presented at LLVM conference; or our re-implementation of /MP which I haven't published yet). It needs refcounting, otherwise one instance might disable the CRC while other threads are running, which effectively disables the crash handlers.
But we can discuss that in a separate review if you prefer. I'll remove it from this patch unless you say otherwise.

Dec 18 2019, 6:43 AM · Restricted Project, Restricted Project
hans committed rGd129aa1d5369: Add an -fno-temp-file flag for compilation (authored by hans).
Add an -fno-temp-file flag for compilation
Dec 18 2019, 6:09 AM
hans closed D70615: Add an -fno-temp-file flag for compilation.
Dec 18 2019, 6:08 AM · Restricted Project
hans added a comment to D70615: Add an -fno-temp-file flag for compilation.

Any additional changes required? If not could someone please submit on my behalf? @rnk, @hans, @thakis ?

Dec 18 2019, 6:08 AM · Restricted Project
hans added a comment to D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.

I looked over this again, and also studied CrashRecoveryContext some more.

Dec 18 2019, 4:21 AM · Restricted Project, Restricted Project

Dec 11 2019

hans added a comment to D69825: [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation.

I'm basically happy with this, just some minor comments.

Dec 11 2019, 6:36 AM · Restricted Project, Restricted Project
hans added inline comments to D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.
Dec 11 2019, 6:17 AM · Restricted Project, Restricted Project

Dec 10 2019

hans committed rG49da20ddb431: Revert 30e8f80fd5a4 "[DebugInfo] Don't create multiple DBG_VALUEs when sinking" (authored by hans).
Revert 30e8f80fd5a4 "[DebugInfo] Don't create multiple DBG_VALUEs when sinking"
Dec 10 2019, 10:28 AM
hans added a reverting change for rG30e8f80fd5a4: [DebugInfo] Don't create multiple DBG_VALUEs when sinking: rG49da20ddb431: Revert 30e8f80fd5a4 "[DebugInfo] Don't create multiple DBG_VALUEs when sinking".
Dec 10 2019, 10:28 AM
hans added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

I've reverted in 49da20ddb43 until it can be fixed. Please let me know if you need help with the reproducer.

Dec 10 2019, 10:27 AM · Restricted Project
hans added a comment to D70676: [DebugInfo] Don't repeatedly created undef DBG_VALUEs during machine-sinking.

We're seeing non-determinism in Chromium builds after this commit. You can reproduce using the pre-processed source from https://bugs.chromium.org/p/chromium/issues/detail?id=1032241#c32 and running this (giant, sorry) command:

Dec 10 2019, 10:09 AM · Restricted Project
hans accepted D70615: Add an -fno-temp-file flag for compilation.

I see. For some reason I thought the temporary files would be written elsewhere, like in /tmp, but I see that's not the case, and I guess it also makes sense to avoid having to copy it between file systems.

Dec 10 2019, 4:12 AM · Restricted Project
hans accepted D71242: [LLD][ELF]{ARM][AArch64] Add missing classof to patch sections..

lgtm

Dec 10 2019, 3:44 AM · Restricted Project
hans accepted D71200: [TypePromotion] Query target register width.

I'm not familiar with this code, but this change looks reasonable to me.

Dec 10 2019, 3:44 AM · Restricted Project
hans added inline comments to D71036: Use diff -b on zlib tests so they pass on Windows.
Dec 10 2019, 1:47 AM · Restricted Project
hans committed rGbfb53c55b8a8: Add more diff -b to roundtrip-compress.test (authored by hans).
Add more diff -b to roundtrip-compress.test
Dec 10 2019, 1:38 AM

Dec 9 2019

hans committed rGa38396939c54: Revert 393dacacf7e7 "[ARM] Enable TypePromotion by default" (authored by hans).
Revert 393dacacf7e7 "[ARM] Enable TypePromotion by default"
Dec 9 2019, 12:50 AM
hans added a reverting change for rG393dacacf7e7: [ARM] Enable TypePromotion by default: rGa38396939c54: Revert 393dacacf7e7 "[ARM] Enable TypePromotion by default".
Dec 9 2019, 12:50 AM

Dec 6 2019

hans added a comment to D70749: [InstCombine] do not insert nonnull assumption for undef.

Looks like it was reverted in 055779a9ac11e56442cbcdc73da59f8bce7ce57d.

Dec 6 2019, 2:19 AM · Restricted Project
hans added a comment to D70615: Add an -fno-temp-file flag for compilation.

Our build system does not handle randomly named files created during the build well.

Dec 6 2019, 2:12 AM · Restricted Project
hans accepted D71097: [X86] Don't setup and teardown memory for a musttail call.

lgtm

Dec 6 2019, 1:51 AM · Restricted Project

Dec 5 2019

hans added inline comments to D70460: export.sh: Fetch sources from GitHub instead of SVN.
Dec 5 2019, 7:24 AM · Restricted Project
hans committed rG18b72d337ef3: Also check /Fo when deciding on the .gcna / .gcda filename (PR44208) (authored by hans).
Also check /Fo when deciding on the .gcna / .gcda filename (PR44208)
Dec 5 2019, 5:07 AM
hans closed D71012: Also check /Fo when deciding on the .gcna / .gcda filename (PR44208).
Dec 5 2019, 5:07 AM · Restricted Project
hans added a comment to D70615: Add an -fno-temp-file flag for compilation.

Seems fine to me. I'm not sure how to test the actual "don't write to temp file" functionality, but at least there could be a test to check that the flag gets forwarded to cc1.

Dec 5 2019, 4:57 AM · Restricted Project
hans accepted D70460: export.sh: Fetch sources from GitHub instead of SVN.

lgtm conceptually, just wondering how the "mv" i commented about works.

Dec 5 2019, 4:48 AM · Restricted Project

Dec 4 2019

hans created D71012: Also check /Fo when deciding on the .gcna / .gcda filename (PR44208).
Dec 4 2019, 6:25 AM · Restricted Project
hans added a comment to D70749: [InstCombine] do not insert nonnull assumption for undef.
In D70749#1766088, @rnk wrote:

I think at this point a straight revert of D69477 might be preferable.

Agree.

Dec 4 2019, 4:43 AM · Restricted Project
hans committed rG92ce2aff680e: Actually delay processing DelayedDllExportClasses until the outermost class is… (authored by hans).
Actually delay processing DelayedDllExportClasses until the outermost class is…
Dec 4 2019, 4:25 AM
hans closed D70905: Actually delay processing DelayedDllExportClasses until the outermost class is finished (PR40006).
Dec 4 2019, 4:25 AM · Restricted Project
hans added a comment to D70905: Actually delay processing DelayedDllExportClasses until the outermost class is finished (PR40006).

Thanks for the review!

Dec 4 2019, 4:25 AM · Restricted Project
hans accepted D69471: [Coverage] Revise format to reduce binary size.

lgtm

Dec 4 2019, 4:07 AM · Restricted Project, Restricted Project, Restricted Project
hans updated subscribers of D67463: [MS] Warn when shadowing template parameters under -fms-compatibility.
In D67463#1767919, @rnk wrote:

@hans, are we still accepting 9.0.1 patches? I thought we'd already made a release candidate.

Dec 4 2019, 1:31 AM · Restricted Project, Restricted Project

Dec 3 2019

hans added a comment to D69825: [Clang][Driver] Re-use the calling process instead of creating a new process for the cc1 invocation.

I'm also supported, even though the gains are smaller than first thought. It depends on D70568 though.

Dec 3 2019, 6:13 AM · Restricted Project, Restricted Project
hans added a comment to D69471: [Coverage] Revise format to reduce binary size.

Looks good as far as I can tell. I think it can be simplified by asserting that zlib::compress doesn't fail, though.

Dec 3 2019, 5:18 AM · Restricted Project, Restricted Project, Restricted Project
hans accepted D70931: [MS] Emit exported complete/vbase destructors.

Nice, thanks!

Dec 3 2019, 2:29 AM · Restricted Project
hans accepted D70571: [Coverage] Emit a gap region to cover switch bodies.

Looks fine to me.

Dec 3 2019, 12:46 AM · Restricted Project
hans committed rGb5f295ffcec2: AvoidBindCheck.cpp: Fix unused variables warning (authored by hans).
AvoidBindCheck.cpp: Fix unused variables warning
Dec 3 2019, 12:08 AM
hans committed rG8e7f60e942ff: AvoidBindCheck.cpp: Fix GCC 5.3 build errors (authored by hans).
AvoidBindCheck.cpp: Fix GCC 5.3 build errors
Dec 3 2019, 12:08 AM

Dec 2 2019

hans created D70905: Actually delay processing DelayedDllExportClasses until the outermost class is finished (PR40006).
Dec 2 2019, 7:56 AM · Restricted Project

Nov 30 2019

hans committed rGc2443155a0fb: Revert 651f07908a1 "[AArch64] Don't combine callee-save and local stack… (authored by hans).
Revert 651f07908a1 "[AArch64] Don't combine callee-save and local stack…
Nov 30 2019, 5:38 AM
hans added a reverting change for rG651f07908a14: [AArch64] Don't combine callee-save and local stack adjustment when optimizing…: rGc2443155a0fb: Revert 651f07908a1 "[AArch64] Don't combine callee-save and local stack….
Nov 30 2019, 5:37 AM
hans added a comment to D68530: [AArch64] Don't combine callee-save and local stack adjustment when optimizing for size.

Oh boo. This is presumably some knock-on bug, that this is just exposing. Only on windows you say?

Do you have a reproducer?

Nov 30 2019, 5:37 AM · Restricted Project
hans committed rGcee62e6fcff6: Fix a typo. (authored by hans).
Fix a typo.
Nov 30 2019, 4:25 AM

Nov 29 2019

hans added a comment to D70568: [Support] Possibly use exception handler in the Crash Recovery Context in the same way as global exceptions.

Thanks for analyzing this!

  • About making CrashRecoveryContext::Enable() the default, that seems somewhat orthogonal to this change. You mention the use case of running several compilations in parallel, but I don't think that's a scenario that happens today? If doing this is necessary, I think it would be good to break it out into a separate patch.

Even for non-parallel compilations, we still need to enable the CrashRecoveryContext inside the new CC1Command, just before calling RunSafely().
If you look at a previous diff of D69825, in clang/lib/Driver/Job.cpp, L389 there is:

static bool CRCEnabled{};
if (!CRCEnabled) {
  llvm::CrashRecoveryContext::Enable();
  CRCEnabled = true;
}

Which I removed, because I find it a bit awkward to "enable" something that should be decided internally by CrashRecoveryContext (this Enable API sounds more like internal behaviour leaking outside of CrashRecoveryContext).
The purpose of Enable/Disable is either for debugging (when enabling LIBCLANG_DISABLE_CRASH_RECOVERY) or possibly bubbling up the crash, as described in D23662.
Also consider the scenario where we sequentially compile several TUs: clang-cl a.cpp b.cpp c.cpp. Only the first call to CC1Command::Execute() should call llvm::CrashRecoveryContext::Enable().
It is orthogonal, I can send a separate patch. Should we instead call llvm::CrashRecoveryContext::Enable() in D69825, when clang.exe starts?

Nov 29 2019, 6:26 AM · Restricted Project, Restricted Project