Page MenuHomePhabricator

rnk (Reid Kleckner)
User

Projects

User Details

User Since
Jan 2 2013, 4:34 PM (495 w, 5 d)

Recent Activity

Thu, Jun 30

rnk added a comment to D128944: [ms] [llvm-ml] Add support for anonymous labels (`@@`, `@B`, `@F`).

Should these be unnamed labels so they don't appear in the COFF file symbol table? I'm guessing ml64 doesn't produce symbols for these labels, but correct me if I'm wrong.

Thu, Jun 30, 2:25 PM · Restricted Project, Restricted Project
rnk committed rG56dc4dbe45e2: Fix test expectation positioning relative to FIXME comment (authored by rnk).
Fix test expectation positioning relative to FIXME comment
Thu, Jun 30, 2:08 PM · Restricted Project, Restricted Project

Thu, Jun 23

rnk accepted D128406: clang: Tweak behaviour of warn_empty_while_body and warn_empty_if_body.

Test cases look good, thanks!

Thu, Jun 23, 12:08 PM · Restricted Project, Restricted Project

Wed, Jun 22

rnk accepted D128374: [docs][NewPM] Add more info on why accessing mutable outer analyses is disallowed.

Thanks for expanding our docs!

Wed, Jun 22, 1:53 PM · Restricted Project, Restricted Project

Fri, Jun 17

rnk accepted D127915: [windows][support] Improve backtrace emitted in crash report without llvm-symbolizer.

+1 for the exception code. I think it may appear as the process return code and some systems will log that, but logging it ourselves, too, is for the best.

Fri, Jun 17, 10:13 AM · Restricted Project, Restricted Project
rnk added a comment to D126977: [config] Remove vestigial LLVM_VERSION_INFO.

@rnk this is option is needed to vendor the Apple clang toolchain in Xcode. Unfortunately we don't have any references to it in the upstream llvm-project repo, but this is breaking our downstream integration. Can this be reverted?

Fri, Jun 17, 10:05 AM · Restricted Project, Restricted Project

Thu, Jun 16

rnk accepted D127902: [Object][COFF] Improve section name parsing.

lgtm

Thu, Jun 16, 2:28 PM · Restricted Project, Restricted Project
rnk added a comment to D127962: [WinEHPrepare] Propagate funclet tokens when inlining into EH funclets.

Thanks, sorry for the delay.

Thu, Jun 16, 1:25 PM · Restricted Project, Restricted Project
rnk updated subscribers of D127259: [CodeGen] guarantee templated static variables are initialized in the reverse instantiation order.

I think Richard had some concerns in the other review that this may not be enough to really guarantee initialization order within the TU. I couldn't say either way, I shouldn't review this code. Conceptually, this change seems small enough to me. Can we ask @aaron.ballman to take a look?

Thu, Jun 16, 1:17 PM · Restricted Project, Restricted Project

Wed, Jun 15

rnk added a comment to D127915: [windows][support] Improve backtrace emitted in crash report without llvm-symbolizer.

Seems useful

Wed, Jun 15, 4:24 PM · Restricted Project, Restricted Project
rnk accepted D126309: [docs][OpaquePtr] Add detail to motivations behind opaque pointers.

+@nikic

Wed, Jun 15, 4:21 PM · Restricted Project, Restricted Project
rnk added a comment to D126676: [clang] Disallow differences in defines used for creating and using PCH.

I don't have a great answer here, but yes, dllexport macro norms sort of run directly counter to the normal ways that people use PCH. It seems like projects will need to have a library module / PCH file for building a DLL and then a PCH / module for consuming the DLL.

Wed, Jun 15, 3:23 PM · Restricted Project, Restricted Project
rnk added a comment to D127902: [Object][COFF] Improve section name parsing.

Thanks, this is a good idea.

Wed, Jun 15, 1:50 PM · Restricted Project, Restricted Project

Tue, Jun 14

rnk updated subscribers of D127641: [clang-cl][MSVC] Enable /Zc:alignedNew for C++17 and /Zc:sizedDealloc by default.

+@luken-google

Tue, Jun 14, 12:49 PM · Restricted Project, Restricted Project, Restricted Project

Mon, Jun 13

rnk added inline comments to D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.
Mon, Jun 13, 3:33 PM · Restricted Project, Restricted Project, Restricted Project
rnk accepted D127345: [COFF] Don't reject executables with data directories pointing outside of provided data.

lgtm

Mon, Jun 13, 2:30 PM · Restricted Project, Restricted Project
rnk added inline comments to D127369: [Object][COFF] Fix section name parsing error when the name field is not null-padded.
Mon, Jun 13, 1:11 PM · Restricted Project, Restricted Project

Fri, Jun 10

rnk added a comment to D127455: [MLIR] Add `comdat` to globals when translating to LLVM IR on Windows.

Does the MLIR LLVM dialect not have comdats? That seems like a missing feature, a lack of fidelity that would prevent lossless conversion from LLVM IR to MLIR & back. Clang uses comdat groups for some esoteric features, the D5 destructor alias group, and MSVC RTTI.

Fri, Jun 10, 9:48 AM · Restricted Project, Restricted Project, Restricted Project
rnk accepted D127478: [LLD] [MinGW] Implement --disable-reloc-section, mapped to /fixed.

lgtm

Fri, Jun 10, 9:18 AM · Restricted Project, Restricted Project

Thu, Jun 9

rnk added inline comments to D127369: [Object][COFF] Fix section name parsing error when the name field is not null-padded.
Thu, Jun 9, 2:36 PM · Restricted Project, Restricted Project

Tue, Jun 7

rnk committed rG570e76bb6c79: [config] Remove vestigial LLVM_VERSION_INFO (authored by rnk).
[config] Remove vestigial LLVM_VERSION_INFO
Tue, Jun 7, 11:48 AM · Restricted Project, Restricted Project
rnk closed D126977: [config] Remove vestigial LLVM_VERSION_INFO.
Tue, Jun 7, 11:48 AM · Restricted Project, Restricted Project
rnk committed rGb1c7889f326f: [config] Remove RETSIGTYPE from config.h.cmake, NFC (authored by rnk).
[config] Remove RETSIGTYPE from config.h.cmake, NFC
Tue, Jun 7, 11:36 AM · Restricted Project, Restricted Project
rnk added a comment to D125509: [LLDB][NFC] Decouple dwarf location table from DWARFExpression..

@labath, ping, I see you just got back from vacation and this is a lot of code, but any high level design feedback would be helpful to know if this is the right direction.

Tue, Jun 7, 10:30 AM · Restricted Project, Restricted Project, Restricted Project

Jun 3 2022

rnk committed rGd82b4fe50d71: [bazel] Update build for config.h.cmake change (authored by rnk).
[bazel] Update build for config.h.cmake change
Jun 3 2022, 12:58 PM · Restricted Project
rnk accepted D126968: [CodeView] Fix incorrect CodeView encoding of signed integer constants.

lgtm, thanks

Jun 3 2022, 10:37 AM · Restricted Project, Restricted Project, debug-info
rnk requested review of D126977: [config] Remove vestigial LLVM_VERSION_INFO.
Jun 3 2022, 10:32 AM · Restricted Project, Restricted Project
rnk committed rG0a832ba5c2ef: [config] Remove LLVM_DEFAULT_TARGET_TRILE from config.h (authored by rnk).
[config] Remove LLVM_DEFAULT_TARGET_TRILE from config.h
Jun 3 2022, 10:16 AM · Restricted Project, Restricted Project

Jun 2 2022

rnk accepted D126898: [COFF] Check table ptr more thoroughly and ignore empty sections.

lgtm

Jun 2 2022, 7:59 PM · Restricted Project, Restricted Project
rnk accepted D126706: [CMake] Improve support for ASAN on Windows with MSVC cl & clang-cl.

lgtm

Jun 2 2022, 2:52 PM · Restricted Project, Restricted Project
rnk added a comment to D126341: Order implicitly instantiated global variable's initializer by the reverse instantiation order.

Well, I guess we're out of luck, but that seems like a very poorly considered requirement from the standard. If we can't use comdats for inline variables, every time you include a header with a dynamically initialized variable, it will generate extra initialization code in every TU that cannot be optimized away. This reminds me of the problems people used to have where every TU including <iostream> emitted extra initialization code.

Jun 2 2022, 12:48 PM · Restricted Project, Restricted Project
rnk committed rG35ab2a11bb55: Fix a buglet in remove_dots(). (authored by ppluzhnikov).
Fix a buglet in remove_dots().
Jun 2 2022, 11:08 AM · Restricted Project, Restricted Project, Restricted Project
rnk closed D126412: Fix a buglet in remove_dots()..
Jun 2 2022, 11:08 AM · Restricted Project, Restricted Project, Restricted Project
rnk accepted D126412: Fix a buglet in remove_dots()..

lgtm, sorry for the delay, do you need someone to push this?

Jun 2 2022, 10:23 AM · Restricted Project, Restricted Project, Restricted Project
rnk added a comment to D125723: [MSVC] Add initial support for MSVC pragma optimize.

Appreciate the help! It's not clear to me how to go from the strings "Os", "foo1", "foo2", "foo3" to adding "-Os -ffoo1 -ffoo2 -ffoo3" to the compilation line for that function

I may be misunderstanding the issue here, but what I had envisioned was that the OptimizeAttr would take either a string or integer argument (I don't know how easy that will be to model in Attr.td, FWIW; it may require adding a new kind of Argument for attributes) and then add a "fake" Argument or use the AdditionalMembers field to add a member that stores the converted "value" of that string or integer in whatever form makes the most sense for the semantics (I was envisioning an enumeration for the various kinds of optimization options, but maybe that doesn't work for the -f arguments?). Then, when doing CodeGen, you can look at the function to see if it has an OptimizeAttr, and if it does, use the fake/additional member to determine what information to lower to IR (or not lower, as the case may be). Does that help get you unstuck somewhat?

Btw, one possibility would be to not support any -f flags initially and only support optimization levels, if that's easier. We can add support for individual flags at a later step but still get utility out of the attribute this way.

Jun 2 2022, 9:47 AM · Restricted Project, Restricted Project

May 31 2022

rnk added a reverting change for rGe2ee8bf98181: [Bazel][GN] Reuse the GN LLVM config file generation code: rG17296607a761: Revert "[Bazel][GN] Reuse the GN LLVM config file generation code".
May 31 2022, 9:16 PM · Restricted Project, Restricted Project
rnk committed rG17296607a761: Revert "[Bazel][GN] Reuse the GN LLVM config file generation code" (authored by rnk).
Revert "[Bazel][GN] Reuse the GN LLVM config file generation code"
May 31 2022, 9:16 PM · Restricted Project, Restricted Project
rnk added a reverting change for D126581: [Bazel][GN] Reuse the GN LLVM config file generation code: rG17296607a761: Revert "[Bazel][GN] Reuse the GN LLVM config file generation code".
May 31 2022, 9:16 PM · Restricted Project, Restricted Project
rnk committed rGe2ee8bf98181: [Bazel][GN] Reuse the GN LLVM config file generation code (authored by rnk).
[Bazel][GN] Reuse the GN LLVM config file generation code
May 31 2022, 7:43 PM · Restricted Project, Restricted Project
rnk closed D126581: [Bazel][GN] Reuse the GN LLVM config file generation code.
May 31 2022, 7:43 PM · Restricted Project, Restricted Project
rnk committed rG3c31c68c90b9: [Bazel] Add missing dep after mlgo test change… (authored by rnk).
[Bazel] Add missing dep after mlgo test change…
May 31 2022, 7:40 PM · Restricted Project
rnk added a comment to D126581: [Bazel][GN] Reuse the GN LLVM config file generation code.

(I think chances are low that someone changing the .py script to fix the GN build would break the bazel build or the other way round: The script hasn't meaningfully changed in well over 2 years.)

(If we end up doing a bunch of changes to the .py script later on for some reason or another, it might make sense to have a gn and a bazel version of that script at that point, though.)

May 31 2022, 3:42 PM · Restricted Project, Restricted Project
rnk added inline comments to D126706: [CMake] Improve support for ASAN on Windows with MSVC cl & clang-cl.
May 31 2022, 2:24 PM · Restricted Project, Restricted Project
rnk added a comment to D125723: [MSVC] Add initial support for MSVC pragma optimize.

I think it's fine to implement this, but I wanted to share some of the motivation for the current state of things. In our experience, the majority of uses of pragma optimize were to work around MSVC compiler bugs. So, instead of honoring them, we felt it was best to ignore them with a warning (-Wignored-pragma-optimize). Of course, that warning is typically disabled in build systems of large projects, so our current behavior can still surprise users. Implementing the feature is probably the most predictable and least surprising thing Clang can do.

May 31 2022, 10:26 AM · Restricted Project, Restricted Project

May 27 2022

rnk requested review of D126581: [Bazel][GN] Reuse the GN LLVM config file generation code.
May 27 2022, 5:29 PM · Restricted Project, Restricted Project
rnk accepted D126559: [MSVC] Fix pragma alloc_text failing for C files.

lgtm

May 27 2022, 11:26 AM · Restricted Project, Restricted Project
rnk accepted D126000: [llvm-lib] Ignore /LTCG option.

lgtm

May 27 2022, 11:25 AM · Restricted Project, Restricted Project
rnk added inline comments to D126341: Order implicitly instantiated global variable's initializer by the reverse instantiation order.
May 27 2022, 11:12 AM · Restricted Project, Restricted Project

May 26 2022

rnk added inline comments to D126341: Order implicitly instantiated global variable's initializer by the reverse instantiation order.
May 26 2022, 2:20 PM · Restricted Project, Restricted Project

May 25 2022

rnk accepted D125844: [LLDB][NativePDB] Check for missing type info to avoid crash..

lgtm

May 25 2022, 12:16 PM · Restricted Project, Restricted Project
rnk added inline comments to D126309: [docs][OpaquePtr] Add detail to motivations behind opaque pointers.
May 25 2022, 11:59 AM · Restricted Project, Restricted Project
rnk updated subscribers of D126341: Order implicitly instantiated global variable's initializer by the reverse instantiation order.

I'm somewhat supportive of the goal here, but I think there are still some underlying issues.

May 25 2022, 11:11 AM · Restricted Project, Restricted Project

May 23 2022

rnk added a comment to D126224: Add DWARF string debug to clang release notes..

I am reminded of the perennial problem of "optional" protobuf fields that, when omitted, will cause production crashes.

May 23 2022, 10:30 AM · Restricted Project, Restricted Project
rnk accepted D126135: emitStringLiteralDef: Return earlier here. NFC..

lgtm

May 23 2022, 10:19 AM · Restricted Project, Restricted Project
rnk accepted D126136: [TableGen] emitStringLiteralDef: Pad trailing '\0' at the end of char array..

lgtm

May 23 2022, 10:19 AM · Restricted Project, Restricted Project

May 20 2022

rnk updated subscribers of D125979: [ADT] add ConcurrentHashTable class..

@MaskRay, can you review this? I think you have been thinking the most about how to parallelize linkers, and what fundamental data structures are most important.

May 20 2022, 11:16 AM · Restricted Project, Restricted Project
rnk updated subscribers of D125800: [COFF] Add vfsoverlay flag.

This seems reasonable to me, but surely this is not the complete list of places where we must use the VFS?

May 20 2022, 11:15 AM · Restricted Project
rnk added reviewers for D125800: [COFF] Add vfsoverlay flag: hans, thakis.
May 20 2022, 11:14 AM · Restricted Project
rnk accepted D125721: [CodeView] Combine variable def ranges that are continuous..

lgtm, thanks!

May 20 2022, 11:13 AM · Restricted Project, Restricted Project
rnk added a comment to D126010: Make sure the AsmPrinter doesn't emit any zero-sized symbols to `.debug_aranges`..

I agree with David, I would like to see LLVM move in the direction of never emitting empty functions. These are just labels that snap to the next function in the same section, and that's silly. I'm not sure what happens if you use function sections. We should just emit some trap instruction, and let the linker do identical code folding (ICF) to merge them back together. This will regress code size, but I doubt out users will complain, and ICF will recover most of the size regression.

May 20 2022, 11:06 AM · Restricted Project, Restricted Project
rnk added a comment to D126023: [MSVC, ARM64] Add __writex18 intrinsics.

I was unable to find any documentation for the meaning of AArch64 addrspace(256), and I wasn't able to figure it out after studying the code in llvm/lib/Target/AArch64 for ten minutes or so. The change seems fine, but please add some documentation as a follow-up. X86 has some of its address spaces documented here, not that this is the best place:
https://llvm.org/docs/CodeGenerator.html#x86-address-spaces-supported

May 20 2022, 10:29 AM · Restricted Project, Restricted Project

May 18 2022

rnk added a comment to D125721: [CodeView] Combine variable def ranges that are continuous..

Nice!

May 18 2022, 4:31 PM · Restricted Project, Restricted Project

May 16 2022

rnk added a comment to D124613: In MSVC compatibility mode, friend function declarations behave as function declarations.

I haven't given any input yet because I haven't yet seen a reduced example of the conforming code that is broken by this change. If someone can put together a small godbolt example that shows the issue affecting ADL, I'd appreciate it.

May 16 2022, 9:25 AM · Restricted Project, Restricted Project
rnk accepted D123534: [dwarf] Emit a DIGlobalVariable for constant strings..

Looks good to me. I generally agree with Adrian's suggestions.

May 16 2022, 9:16 AM · Restricted Project, Restricted Project, Restricted Project

May 13 2022

rnk added a comment to D125579: [libc++] Remove overly conservative error in <stdatomic.h>.

Sorry, I can't easily test this patch, but I do think it's probably the right direction.

May 13 2022, 2:29 PM · Restricted Project, Restricted Project

May 12 2022

rnk added a comment to D123534: [dwarf] Emit a DIGlobalVariable for constant strings..

Not sure about PDB. I did run a quick test with gdb, and very unscientifically, didn't notice any difference in usability or errors between pre- and post-this patch on a clang invocation under gdb.

May 12 2022, 11:10 AM · Restricted Project, Restricted Project, Restricted Project
rnk added a comment to D97044: [libc++] [C++2b] [P0943] Add stdatomic.h header..

I wanted to give some early feedback that this broke our internal build of CPython, and we put together a local workaround, so we aren't blocked. I don't fully understand what's going on or have time to follow up, but I wanted to give a heads up that this seems like it could be a disruptive change for users.

May 12 2022, 10:47 AM · Restricted Project, Restricted Project

May 11 2022

rnk accepted D125368: [MC] [Win64EH] Simplify code using WinEH::Instruction::operator!=. NFC..

lgtm

May 11 2022, 9:26 AM · Restricted Project, Restricted Project
rnk accepted D125369: [AArch64] Stop creating unnecessary label MCSymbols for each Windows unwind opcode. NFC..

lgtm

May 11 2022, 9:26 AM · Restricted Project, Restricted Project

May 10 2022

rnk added a comment to D123534: [dwarf] Emit a DIGlobalVariable for constant strings..

This seems reasonable, but I worry about the consequences of creating lots of unnamed global variables. What will gdb do with so many unnamed globals? What will the PDB linker do with all these unnamed globals? I can't answer these questions, and you're welcome to try and find out, but I predict there will be problems, so just be aware of that possibility.

May 10 2022, 3:23 PM · Restricted Project, Restricted Project, Restricted Project

May 4 2022

rnk accepted D124666: In MSVC compatibility mode, handle unqualified templated base class initialization.

By the way, in the current state of the code, there is no risk of such conflict between typo correction and UnqualifiedBase, because when an unqualified base exists the lookup result will not be empty.
That's why the test was not failing even without moving the compatibility first.

May 4 2022, 11:37 AM · Restricted Project, Restricted Project

May 3 2022

rnk added inline comments to D124666: In MSVC compatibility mode, handle unqualified templated base class initialization.
May 3 2022, 3:59 PM · Restricted Project, Restricted Project
rnk accepted D124842: [NFC][CUDA][HIP] rework mangling number for aux target.

lgtm, thanks!

May 3 2022, 12:56 PM · Restricted Project, Restricted Project
rnk requested changes to D124666: In MSVC compatibility mode, handle unqualified templated base class initialization.
May 3 2022, 9:35 AM · Restricted Project, Restricted Project

May 2 2022

rnk added a comment to D124762: [WinEHPrepare] Avoid truncation of EH funclets with GNUstep ObjC runtime.

I guess testing must be split in two:

May 2 2022, 11:24 AM · Restricted Project, Restricted Project, Restricted Project

Apr 29 2022

rnk added a comment to D124680: [WinEHPrepare] Fix accidental truncation of EH funclets with GNUstep ObjC runtime.

Which pass inserts the calls to these intrinsics? Can that pass be responsible for calculating funclet colors and adding the operand bundles to the intrinsics? That would match what we do for other instrumentation passes (ASan, PGO). The pre isel lowering pass can simply carry over the funclet operand bundle if present. I think there is a utility for carrying over that and similar operand bundles.

Apr 29 2022, 8:14 PM · Restricted Project, Restricted Project
rnk added inline comments to D122734: [CUDA][HIP] Fix mangling number for local struct.
Apr 29 2022, 11:18 AM · Restricted Project, Restricted Project

Apr 28 2022

rnk accepted D124613: In MSVC compatibility mode, friend function declarations behave as function declarations.

I plugged this into godbolt to confirm the behavior of MSVC:
https://gcc.godbolt.org/z/v3P3WbxG3

Apr 28 2022, 8:21 AM · Restricted Project, Restricted Project

Apr 27 2022

rnk accepted D124317: [llvm-pdbutil] Add options to only dump symbol record at specified offset and its parents or children with spcified depth..

Looks good to me, just one style comment.

Apr 27 2022, 2:11 PM · Restricted Project, Restricted Project

Apr 26 2022

rnk added inline comments to D124435: [X86] Always extend the integer parameters in callee.
Apr 26 2022, 3:17 PM · Restricted Project, Restricted Project
rnk added inline comments to D120272: [CUDA] Add driver support for compiling CUDA with the new driver.
Apr 26 2022, 11:50 AM · Restricted Project, Restricted Project

Apr 25 2022

rnk added inline comments to D124317: [llvm-pdbutil] Add options to only dump symbol record at specified offset and its parents or children with spcified depth..
Apr 25 2022, 2:58 PM · Restricted Project, Restricted Project

Apr 19 2022

rnk accepted D123932: MachineModuleInfo: Move HasSplitStack handling to AsmPrinter.

lgtm

Apr 19 2022, 4:56 PM · Restricted Project, Restricted Project
rnk accepted D124032: [COFF, ARM64] Add __break intrinsic.

lgtm

Apr 19 2022, 12:42 PM · Restricted Project, Restricted Project, Restricted Project
rnk added inline comments to D122734: [CUDA][HIP] Fix mangling number for local struct.
Apr 19 2022, 10:23 AM · Restricted Project, Restricted Project

Apr 18 2022

rnk accepted D123931: MachineModuleInfo: Don't allow dynamically setting DbgInfoAvailable.

lgtm, thanks!

Apr 18 2022, 3:03 PM · Restricted Project, Restricted Project
rnk added a comment to D123932: MachineModuleInfo: Move HasSplitStack handling to AsmPrinter.

I tried this and it doesn't quite work. Maintaining the current behavior requires 2 fields; that split-stacks requested and whether or not it was actually emitted. Do you think it would be better to just move the StackSize == 0 && !MFI.hasTailCall() check into a helper in MFI, track a second field in MFI, or just keep having the AsmPrinter look at the attribute?

Apr 18 2022, 2:58 PM · Restricted Project, Restricted Project
rnk requested changes to D122963: [X86] Extend the integer parameter if the function isn't local linked.

I think we all agree that this is a bug. Given there is no better solution for it, I'd like check in this patch first. We can revert the patch when there is better solution proposed.

Apr 18 2022, 1:04 PM · Restricted Project, Restricted Project
rnk added inline comments to D123934: MachineModuleInfo: Remove UsesMorestackAddr.
Apr 18 2022, 12:45 PM · Restricted Project, Restricted Project
rnk added a comment to D123932: MachineModuleInfo: Move HasSplitStack handling to AsmPrinter.

I read through the situation described in PR37807 the two relevant commits (rG9cc1ffadc5ad06ab846a7da95a1afb874b9f3d98 and D48444), and I think I understand the two issues.

Apr 18 2022, 12:42 PM · Restricted Project, Restricted Project
rnk updated subscribers of D123933: X86: Remove UsesMSVCFloatingPoint from MachineModuleInfo.

This is sort of reasonable, but I feel like people might disagree so I won't go ahead and stamp it.

Apr 18 2022, 12:06 PM · Restricted Project, Restricted Project
rnk accepted D123934: MachineModuleInfo: Remove UsesMorestackAddr.

lgtm

Apr 18 2022, 11:57 AM · Restricted Project, Restricted Project
rnk accepted D123943: MachineModuleInfo: Move AddrLabelSymbols to AsmPrinter.

lgtm

Apr 18 2022, 11:51 AM · Restricted Project, Restricted Project

Apr 15 2022

rnk accepted D123872: Force GHashCell to be 8-byte-aligned..

Sidenote: Oh, yikes! I didn't even notice before that this code is doing reinterpret_cast from a GHashCell* to a std::atomic<GHashCell>*. That's...kinda not great...

Apr 15 2022, 2:21 PM · Restricted Project, Restricted Project
rnk accepted D123863: MIR: Serialize a few bool function fields.

It might be possible to recompute these, but I don't think it would be reliable.

Apr 15 2022, 12:47 PM · Restricted Project, Restricted Project

Apr 14 2022

rnk added a comment to D122914: [Windows] Fix handling of \" in program name on cmd line..

Thanks for running the experiments, I think I'm convinced we need to do this. @hans, can you review the implementation? I removed Adrian and Rui, who are no longer regular contributors.

Apr 14 2022, 4:19 PM · Restricted Project, Restricted Project
rnk edited reviewers for D122914: [Windows] Fix handling of \" in program name on cmd line., added: hans; removed: amccarth, ruiu.
Apr 14 2022, 4:18 PM · Restricted Project, Restricted Project
rnk added a comment to D123345: Treat `std::move`, `forward`, and `move_if_noexcept` as builtins..

Generally speaking, this sounds like a good idea to me. One time in 2019 I used -ftime-trace+ClangBuildAnalyzer and it told me that std::unique_ptr was the most expensive template because it is instantiated so much. Those results don't even capture the -O0 object file size impact.

Apr 14 2022, 4:13 PM · Restricted Project, Restricted Project
rnk added a comment to D123405: [dllexport] odr-use constexpr default args for constructor closures.

Looks good to me after the fact.

Apr 14 2022, 12:32 PM · Restricted Project, Restricted Project
rnk requested changes to D123593: [MS][ARM64]: Use _setjmp instead of _setjmpex on AArch64.

How old is 19.20? Do we need a version compatibility check here to ensure that we don't break users of MSVC pre-19.20? I believe that is spelled LangOpts.isCompatibleWithMSVC(...).

Apr 14 2022, 11:47 AM · Restricted Project