Page MenuHomePhabricator
Feed Advanced Search

Thu, Jan 21

compnerd requested review of D95185: lldb: repair the standalone build for Windows.
Thu, Jan 21, 4:30 PM · Restricted Project
compnerd added a comment to D94938: [lld-macho][NFC] Add new option group for versions.

Sure, but if the reason for the group is to add structure to the help output, I think that is a reasonable thing to state in the commit message. The other options are ... well, either not meant to be part of the commit as per the commit message or the commit message should be updated to indicate that they are being added (and why they are part of structuring the help output, assuming that is the reason for the group). The changes requested are requests for clarification :)

Thu, Jan 21, 9:02 AM · Restricted Project
compnerd accepted D88189: [libc++abi] Add an option to avoid demangling in terminate..

I can sympathize with the desire to avoid the undecoration. Unless @ldionne has some reason why this is a poor choice to support, this seems okay to me.

Thu, Jan 21, 8:58 AM · Unknown Object (Project)
compnerd accepted D93190: [libc++abi] Simplify scan_eh_tab.

Looks reasonable enough to me. Please ensure that @ldionne is okay with it as well.

Thu, Jan 21, 8:55 AM · Unknown Object (Project)

Wed, Jan 20

compnerd added a comment to D93190: [libc++abi] Simplify scan_eh_tab.

I like the clean up here, but, I think there is some value in retaining the defensive sanity checks. You are correct that in most cases, this should never be hit in a proper unwind, but because this may be run in a last chance scenario, having the defensive checks is good for catching things going wrong.

Wed, Jan 20, 4:26 PM · Unknown Object (Project)
compnerd added inline comments to D95084: [lld][benchmark] Be tolerant of optional metric units in output.
Wed, Jan 20, 3:11 PM · Restricted Project
compnerd resigned from D95082: [lld][benchmark] LNT expects format_version as a string.
Wed, Jan 20, 1:59 PM · Restricted Project
compnerd accepted D95083: [lld][benchmark] Make path to LLD configurable.

Seems like this just adds an option to control a hardcoded value, which is reasonable.

Wed, Jan 20, 1:58 PM · Restricted Project
compnerd accepted D95053: [Demangle] Support demangling Swift calling convention in MS demangler..

Perhaps @rnk has any thoughts, but this seems very straightforward.

Wed, Jan 20, 1:54 PM · Restricted Project, Restricted Project

Tue, Jan 19

compnerd added a comment to D92797: APINotes: add initial stub of APINotesWriter.

Welcome back, hope you had a good time off. Thanks for the review!

Tue, Jan 19, 2:32 PM · Restricted Project
compnerd added a comment to D94935: [lld-macho] Fix alignment & layout to match ld64 and satisfy codesign.

Could you please add a test case for verifying the output order of the load commands? It seems that the load commands are expected to be in a certain order according to your change - it makes sense to have a test which validates that ordering.

Tue, Jan 19, 9:08 AM · Restricted Project
compnerd requested changes to D94938: [lld-macho][NFC] Add new option group for versions.

This adds additional options while also adding a group for the versions. Is there a reason for the group to be added? Can you please either remove the newly added options or adjust the commit message? I think that there should be some reasoning given for the version group creation (at least, it isn't clear to me why the group is helpful/necessary, unlike in clang where the group can be used to silence warnings).

Tue, Jan 19, 8:55 AM · Restricted Project

Mon, Jan 18

compnerd added a comment to D92797: APINotes: add initial stub of APINotesWriter.

Ping x 3

Mon, Jan 18, 11:18 AM · Restricted Project

Thu, Jan 14

compnerd added a comment to D94557: [ARM] Fixed incorrect lowering when using GNUEABI (libgcc) and 16bit floats.

I agree with Renato, this seems incorrect. In the EABI mode, we should prefer the EABI symbols.

Thu, Jan 14, 11:33 AM · Restricted Project

Wed, Jan 13

compnerd accepted D90898: [libunwind] Unwind through aarch64/Linux sigreturn frame.

Could you add a bit of a comment explaining why the XOM case is not protected against?

I think I can expand on the comment.

libunwind can be used for generating backtraces during regular execution (e.g. profiling) and crashing if the XOM is in use seems unfortunate.

For profiling, I assume the unwind info needs to be accurate at every instruction? I know that's definitely not the case for AArch64, but I thought it's still only mostly-accurate on other archs? I don't *really* know that unwinding through a signal handler is important for Android, but I don't know how to rule it out either, and we do have a test for it. I think the test predated Android's libunwindstack unwinder. Maybe someone could be using _Unwind_Backtrace in a segfault handler, and that probably avoids the async-unwind-info problem most of the time. But I also don't think that's how third-party Android crash dumpers work.

Wed, Jan 13, 1:45 PM · Unknown Object (Project), Restricted Project
compnerd requested changes to D93003: [libunwind] LIBUNWIND_HERMETIC_STATIC_LIBRARY fixes.
Wed, Jan 13, 8:44 AM · Restricted Project, Unknown Object (Project)
compnerd accepted D94591: [VE] Support VE in libunwind.
Wed, Jan 13, 8:32 AM · Restricted Project, Unknown Object (Project), Restricted Project

Tue, Jan 12

compnerd accepted D94545: [lld-macho][easy] Create group for LLD-specific CLI flags.
Tue, Jan 12, 4:24 PM · Restricted Project
compnerd added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.

You mean use armv7---elf as a triple? While that is possible, keep in mind that it might change the ABI of the generated interfaces. While it is unlikely to matter as the ifso cannot be used at runtime, if the linker attempts to do something like symbolic resolution of ABI dependent specialization (e.g. strcmp.eabi vs strcmp where the latter is generic), that could matter. However, adding support to explicitly override the encoded triple based on the user's input is reasonable (though might deserve a warning that the triple is being overridden).

Tue, Jan 12, 4:23 PM · Restricted Project
compnerd added a comment to D94461: [llvm-ifs] Add option to use InterfaceStub library.

The full triple is needed in some cases: armv7-unknown-linux-gnueabi vs armv7-unknown-linux-gnueabihf vs armv7-unknown-linux-eabihf vs armv7-unknown-linux-eabi are all different. Additionally, there is nothing that prevents you from doing something like: armv7-unknown-linux-gnueabihf-coff or armv7-unknown-linux-gnueabihf-macho to generate COFF or MachO object files that are reading in additional bits of ABI information and the libc from the target triple. I really think that preserving the target triple is best.

Tue, Jan 12, 4:12 PM · Restricted Project
compnerd added a comment to D94364: [clang] Allow specifying the aapcs and aapcs-vfp for windows on arm.

I think that it makes more sense to ignore the aapcs-vfp calling convention attribute (returning CCCR_Ignore), and warn on the aapcs. The redundant calling convention attribute does nothing, and I think that simply ignoring it would solve your issue. However, changing the calling convention to aapcs would break interoperability, so warning on that seems reasonable still. I think that if Wine is willing to adjust their use of the attribute, that would really be nicer - it allows us to keep the behaviour as close to MSVC as possible.

Tue, Jan 12, 4:08 PM · Restricted Project
compnerd added a comment to D92797: APINotes: add initial stub of APINotesWriter.

Ping x 2

Tue, Jan 12, 9:59 AM · Restricted Project

Mon, Jan 11

compnerd accepted D92748: [VE][compiler-rt] Add VE as a target of crt.
Mon, Jan 11, 1:57 PM · Restricted Project, Restricted Project
compnerd added inline comments to D94316: [lld-macho] Associate each Symbol with an InputFile.
Mon, Jan 11, 1:56 PM · Restricted Project
compnerd added a comment to D94364: [clang] Allow specifying the aapcs and aapcs-vfp for windows on arm.

Can you please add some more context around the motivation for this change? It seems ... unnecessary as everything is already AAPCS/AAPCS-VFP.

Mon, Jan 11, 10:30 AM · Restricted Project
compnerd accepted D94365: [AArch64] [Windows] Properly add :lo12: reloc specifiers when generating assembly.

LGTM; please fix the formatting lint.

Mon, Jan 11, 10:21 AM · Restricted Project

Fri, Jan 8

compnerd committed rG16fdc5da8906: APINotes: annotate dump methods (NFC) (authored by compnerd).
APINotes: annotate dump methods (NFC)
Fri, Jan 8, 12:50 PM

Thu, Jan 7

compnerd accepted D93431: [builtins] Add COMPILER_RT_BUILTINS_HIDE_SYMBOLS.

Thanks!

Thu, Jan 7, 1:24 PM · Restricted Project

Tue, Jan 5

compnerd added a comment to D92797: APINotes: add initial stub of APINotesWriter.

Gentle post-holiday ping :)

Tue, Jan 5, 8:47 AM · Restricted Project
compnerd requested changes to D93582: [libc++] [libc++abi] Correctly quote source and target names in tests. NFC..
Tue, Jan 5, 8:46 AM · Unknown Object (Project), Restricted Project

Dec 22 2020

compnerd accepted D93711: [lld/mac] Don't add names of unreferenced symbols to string table.

The change on L722 took me a few moments to catch - that was subtle.

Dec 22 2020, 9:45 AM · Restricted Project

Dec 21 2020

compnerd accepted D93604: [lld-macho][nfc] Clean up tests.

Nice cleanup!

Dec 21 2020, 8:58 AM · Restricted Project

Dec 17 2020

compnerd accepted D93431: [builtins] Add COMPILER_RT_BUILTINS_HIDE_SYMBOLS.

I really would prefer the alternate spelling, but the change itself is okay.

Dec 17 2020, 12:30 PM · Restricted Project

Dec 16 2020

compnerd added inline comments to D92797: APINotes: add initial stub of APINotesWriter.
Dec 16 2020, 1:21 PM · Restricted Project

Dec 14 2020

compnerd added a comment to D92797: APINotes: add initial stub of APINotesWriter.

Ping

Dec 14 2020, 9:29 AM · Restricted Project
compnerd added inline comments to D93203: [PS4] handle dllimport/export w.r.t vtables/rtti.
Dec 14 2020, 9:27 AM

Dec 10 2020

compnerd added a comment to D92808: [ObjC][ARC] Annotate calls with attributes instead of emitting retainRV or claimRV calls in the IR.

Hmm, I think that the function is marked as noexcept, so the the funclet shouldn't be invoked and should get DCE'd, but that seems unrelated to ARC.

Dec 10 2020, 9:22 AM · Restricted Project, Restricted Project

Dec 9 2020

compnerd committed rGee74d1b42036: X86: use a data driven configuration of Windows x86 libcalls (NFC) (authored by compnerd).
X86: use a data driven configuration of Windows x86 libcalls (NFC)
Dec 9 2020, 2:49 PM
compnerd accepted D92944: Don't setup inalloca for swiftcc on i686-windows-msvc.
Dec 9 2020, 10:57 AM · Restricted Project
compnerd added a comment to D92808: [ObjC][ARC] Annotate calls with attributes instead of emitting retainRV or claimRV calls in the IR.

There is nothing particularly special about that. The reason for the funclet handling there is that in the case of an outlined block for exception handling (i.e. a funclet), we need to ensure that the assembly marker received the funclet token as failure to do so would mark the assembly as unreachable and would thus thwart the auto-release claim. For the normal codepath, the behaviour should be identical.

Dec 9 2020, 9:24 AM · Restricted Project, Restricted Project
compnerd added inline comments to D92808: [ObjC][ARC] Annotate calls with attributes instead of emitting retainRV or claimRV calls in the IR.
Dec 9 2020, 8:32 AM · Restricted Project, Restricted Project
compnerd added a comment to D92910: [lld-macho] Support -mcpu for LTO.

I think that it makes sense to merge this with D92911 and D92912

Dec 9 2020, 8:30 AM · Restricted Project
compnerd added a comment to D92911: [lld-macho] Support -mattr for LTO.

Does this make sense to have as part of a single commit with D92912 to have a change to populate the LTO configuration options?

Dec 9 2020, 8:29 AM · Restricted Project
compnerd accepted D92912: [lld-macho] Add support for -mcpu, -mattr, -code-model in LTO.

I wonder if there is a good way to enumerate the desired set of options (e.g. -O is currently missing), but I don't think that there have been too many attempts to flesh out the argument handling, so we can hold off on that until we find that we have had to do this a few times.

Dec 9 2020, 8:28 AM · Restricted Project
compnerd accepted D92913: [lld-macho] Initialize AsmParsers earlier.
Dec 9 2020, 8:24 AM · Restricted Project

Dec 8 2020

compnerd accepted D92883: De-templatify EmitCallArgs argument type checking, NFCI.
Dec 8 2020, 2:14 PM · Restricted Project
compnerd committed rGb13f74151137: APINotes: add bitcode format schema definitions (authored by compnerd).
APINotes: add bitcode format schema definitions
Dec 8 2020, 1:16 PM
compnerd committed rG939c8f676c87: Bitcode: add some convenience helpers for streaming bitcode (authored by compnerd).
Bitcode: add some convenience helpers for streaming bitcode
Dec 8 2020, 1:16 PM
compnerd closed D91997: APINotes: add bitcode format schema definitions.
Dec 8 2020, 1:16 PM · Restricted Project
compnerd closed D88582: Bitcode: add some convenience helpers for streaming bitcode.
Dec 8 2020, 1:16 PM · Restricted Project
compnerd requested changes to D92748: [VE][compiler-rt] Add VE as a target of crt.

I think that once the LLVM backend target is merged, it would be reasonable to commit this change. The target being experimental is fine, but it should be available. (Marking as requesting changes until the backend is merged).

Dec 8 2020, 11:24 AM · Restricted Project, Restricted Project

Dec 7 2020

compnerd added inline comments to D92797: APINotes: add initial stub of APINotesWriter.
Dec 7 2020, 4:16 PM · Restricted Project
compnerd requested review of D92797: APINotes: add initial stub of APINotesWriter.
Dec 7 2020, 4:14 PM · Restricted Project
compnerd added a comment to D92748: [VE][compiler-rt] Add VE as a target of crt.

Maybe I am missing something, but it doesn't seem to be supported in llvm yet:
https://github.com/llvm/llvm-project/blob/main/llvm/CMakeLists.txt#L302-L320

Dec 7 2020, 11:13 AM · Restricted Project, Restricted Project

Dec 3 2020

compnerd added a comment to D92575: [mac/lld] Run tests with -fatal_warnings by default.

Interesting, I expected a large fallout. I think I agree with @thakis that this is preferable to D92455.

Dec 3 2020, 1:00 PM · Restricted Project
compnerd accepted D92583: [mac/lld] Implement -t.

Seems fine to me. Does the output match what ld64 does?

Dec 3 2020, 12:57 PM · Restricted Project

Dec 2 2020

compnerd accepted D92497: [builtins][ARM] Check __ARM_FP instead of __VFP_FP__..

Following the ACLE is definitely preferable. One thing to verify is if gcc does support this correctly as well. IIRC, it does support __ARM_FP properly and this should be safe, but please do verify that.

Dec 2 2020, 3:44 PM · Restricted Project
compnerd accepted D92496: [mac/lld] Implement -why_load.

Nice! Thanks @thakis, this is a rather useful debugging aid (for users of the linker).

Dec 2 2020, 3:07 PM · Restricted Project
compnerd accepted D92336: repair cygwin build.

That really is unfortunate. LLVM generally does a pretty good job of sticking to standard C++. The symbols you claim are missing aren't C++ symbols but rather C symbols. I suppose that this doesn't hurt the other targets.

Dec 2 2020, 8:52 AM · Restricted Project
compnerd accepted D92453: [lld-macho][nfc] Move some methods from InputFile to ObjFile.

The change itself is fine, though I think that the commit message can be improved. The shuffling of the code should be called out in the summary IMO.

Dec 2 2020, 8:48 AM · Restricted Project
compnerd accepted D92455: [lld-macho] Error out if we encounter a HelpHidden flag in tests.

I still don't really like the environment variable approach to the testing.

Dec 2 2020, 8:46 AM · Restricted Project

Dec 1 2020

compnerd committed rG4eaa024863f4: APINotes: constify `dump` methods (NFC) (authored by compnerd).
APINotes: constify `dump` methods (NFC)
Dec 1 2020, 11:16 AM

Nov 30 2020

compnerd added a comment to D91997: APINotes: add bitcode format schema definitions.

Gentle post-holiday reminder :)

Nov 30 2020, 2:35 PM · Restricted Project
compnerd accepted D91891: [lld-macho] Don't warn on non-existent system libraries.
Nov 30 2020, 12:53 PM · Restricted Project
compnerd requested changes to D91891: [lld-macho] Don't warn on non-existent system libraries.
Nov 30 2020, 11:03 AM · Restricted Project
compnerd accepted D91851: [compiler-rt] [emutls] Handle unused parameters in a compiler agnostic way.

Thanks!

Nov 30 2020, 9:07 AM · Restricted Project

Nov 25 2020

compnerd accepted D90299: [windows-itanium] handle dllimport/export code paths separately and share with PS4.
Nov 25 2020, 8:43 AM · Restricted Project, Restricted Project
compnerd added inline comments to D91851: [compiler-rt] [emutls] Handle unused parameters in a compiler agnostic way.
Nov 25 2020, 8:32 AM · Restricted Project

Nov 23 2020

compnerd added a comment to D91851: [compiler-rt] [emutls] Handle unused parameters in a compiler agnostic way.
clang -target x86_64-unknown-windows-itanium -x c -E - -dM <<< '' | grep _MSC_VER
Nov 23 2020, 4:29 PM · Restricted Project
compnerd requested review of D91997: APINotes: add bitcode format schema definitions.
Nov 23 2020, 1:39 PM · Restricted Project
compnerd updated subscribers of D88582: Bitcode: add some convenience helpers for streaming bitcode.
Nov 23 2020, 1:37 PM · Restricted Project
compnerd committed rGf6b02ecd027a: APINotes: add property models for YAML attributes (authored by compnerd).
APINotes: add property models for YAML attributes
Nov 23 2020, 1:34 PM
compnerd closed D91104: APINotes: add property models for YAML attributes.
Nov 23 2020, 1:33 PM · Restricted Project
compnerd added a comment to D91851: [compiler-rt] [emutls] Handle unused parameters in a compiler agnostic way.

Would be nice to actually mention that in the commit message and adjust the condition to indicate that (!defined(__MINGW32__) && !defined(__MINGW64__)).

Nov 23 2020, 1:28 PM · Restricted Project
compnerd added inline comments to D90299: [windows-itanium] handle dllimport/export code paths separately and share with PS4.
Nov 23 2020, 9:17 AM · Restricted Project, Restricted Project
compnerd added a comment to D91841: [builtins] Define fmax and scalbn inline.

I don't think that we can use llvm-libc, but I suppose that lifting the functionality from there is possible. What does that gain over this though?

Nov 23 2020, 9:12 AM · Restricted Project
compnerd added a comment to D91851: [compiler-rt] [emutls] Handle unused parameters in a compiler agnostic way.

I don't have an objection to the change, but would like more details added to the commit message. It is unclear to me why the change is needed as clang does accept this I believe (and a quick test seems to indicate so as well).

Nov 23 2020, 9:07 AM · Restricted Project
compnerd accepted D91906: Multiple preprocessor fixes for libunwind on PowerPC*..

Thanks @Bdragon28, this definitely is a nice cleanup (and fix). Please remember to fix the #elseif to a #elif.

Nov 23 2020, 9:04 AM · Unknown Object (Project), Restricted Project, Restricted Project

Nov 19 2020

compnerd accepted D91779: [Clang][-fvisibility-from-dllstorageclass] Set DSO Locality from final visibility.

I'm not convinced that making this an option is valuable at this time. Right now, I don't think that this functionality is broadly adopted, and, I suppose that if your linker is clever enough to perform optimizations thoroughly enough, it wouldn't matter too much (modulo link time explosion). I would like to see this more accurately explained in the documentation though - CodeGenModule.cpp L423-L424 would be a good site for that. Beyond that, LGTM.

Nov 19 2020, 3:43 PM · Restricted Project
compnerd added inline comments to D91104: APINotes: add property models for YAML attributes.
Nov 19 2020, 11:16 AM · Restricted Project
compnerd updated the diff for D91104: APINotes: add property models for YAML attributes.

Address review comments

Nov 19 2020, 11:15 AM · Restricted Project
compnerd added inline comments to D91104: APINotes: add property models for YAML attributes.
Nov 19 2020, 9:54 AM · Restricted Project
compnerd added a comment to D91779: [Clang][-fvisibility-from-dllstorageclass] Set DSO Locality from final visibility.

Im not sure if renaming the check prefix is actually helpful, but sure. This does seem like somewhat unfortunate. For the dllexport case, you really want dso_local. define dso_local global and declare dso_local global are preferable in this case as that guarantees a local definition, which is always the case for an exported symbol. You definitely do not want declare extern dso_local global. A few of the changes here are actually changing the IRGen from the desired state, is that intentional?

Nov 19 2020, 8:52 AM · Restricted Project

Nov 16 2020

compnerd added a comment to D91104: APINotes: add property models for YAML attributes.

Ping; I'd let to get this sorted out so I can continue to make progress towards serialization and deserialization.

Nov 16 2020, 8:25 AM · Restricted Project

Nov 11 2020

compnerd accepted D90305: Correctly parse and print Tag_THUMB_ISA_use=3.
Nov 11 2020, 1:16 PM · Restricted Project

Nov 10 2020

compnerd added inline comments to D91172: [17/N] [libcxx] Implement the read_symlink function for windows.
Nov 10 2020, 8:47 AM · Restricted Project
compnerd added inline comments to D91175: [19/N] [libcxx] Implement temp_directory_path using GetTempPath on windows.
Nov 10 2020, 8:45 AM · Restricted Project

Nov 9 2020

compnerd added a comment to D91104: APINotes: add property models for YAML attributes.

@martong since you hard expressed interest in the "user-visible" version of the data types for the notes, I opted to get them out first. This set of data types are user-facing rather than the previous one that were mistook for them. Subsequent changes will actually add interfaces to APINotesWriter which will allow you to add new information to the writer to serialize out.

Nov 9 2020, 2:57 PM · Restricted Project
compnerd requested review of D91104: APINotes: add property models for YAML attributes.
Nov 9 2020, 2:55 PM · Restricted Project
compnerd accepted D91042: [MC/AsmParser] Fix use of Arm calling convention in target agnostic test.
Nov 9 2020, 8:57 AM · Restricted Project
compnerd accepted D91039: [libunwind] Delete unused codeOffsetAtStackDecrement/registersInOtherRegisters/sameValueUsed.
Nov 9 2020, 8:55 AM · Unknown Object (Project), Restricted Project

Nov 6 2020

compnerd accepted D90663: [lld-macho] Add very basic support for LTO.
Nov 6 2020, 9:16 AM · Restricted Project
compnerd added a comment to D90898: [libunwind] Unwind through aarch64/Linux sigreturn frame.

Could you add a bit of a comment explaining why the XOM case is not protected against? libunwind can be used for generating backtraces during regular execution (e.g. profiling) and crashing if the XOM is in use seems unfortunate. We could check the memory mapping and just give up in the XOM case.

Nov 6 2020, 9:14 AM · Unknown Object (Project), Restricted Project

Nov 5 2020

compnerd added a comment to D88859: APINotes: add APINotesYAMLCompiler.

@thakis, thanks for the heads up, I've disabled the test on Windows - I should've disabled it on Windows in the first place.

Nov 5 2020, 3:00 PM · Restricted Project
compnerd committed rGe55157874cf2: APINotes: repair the Windows builders (authored by compnerd).
APINotes: repair the Windows builders
Nov 5 2020, 1:26 PM
compnerd committed rG82f86ae01a54: APINotes: add APINotesYAMLCompiler (authored by compnerd).
APINotes: add APINotesYAMLCompiler
Nov 5 2020, 10:55 AM
compnerd closed D88859: APINotes: add APINotesYAMLCompiler.
Nov 5 2020, 10:55 AM · Restricted Project
compnerd added inline comments to D90663: [lld-macho] Add very basic support for LTO.
Nov 5 2020, 10:17 AM · Restricted Project

Nov 4 2020

compnerd added a comment to D88859: APINotes: add APINotesYAMLCompiler.

Thanks for the reviews! I'll reformat the rest of the code before merging. Im going to be working on merging this downstream first before merging this upstream, so it will take a couple of days still.

Nov 4 2020, 11:12 AM · Restricted Project

Nov 2 2020

compnerd updated the diff for D88859: APINotes: add APINotesYAMLCompiler.

rebase, clang-format, add comments

Nov 2 2020, 8:51 AM · Restricted Project