Page MenuHomePhabricator

tschuett (Thorsten)
User

Projects

User does not belong to any projects.

User Details

User Since
Feb 17 2017, 6:56 AM (217 w, 5 d)

Recent Activity

Yesterday

tschuett added inline comments to D100622: [mlir] Gradually lower vector to SCF.
Tue, Apr 20, 1:40 AM · Restricted Project

Mon, Apr 19

tschuett added a comment to D100811: [libc] Add hardware implementations of fma and fmaf for x86_64 and aarch64..

Stupid question: why assembler instead of builtins:
https://github.com/gcc-mirror/gcc/blob/master/gcc/testsuite/gcc.target/ia64/builtin-fma-1.c
I guess there is a tradeoff between control over the process and helping the register allocator.

Mon, Apr 19, 10:43 PM · Restricted Project

Sun, Apr 18

tschuett added a comment to D99723: [ARM] Transforming memcpy to Tail predicated Loop.

For comparison:
https://github.com/llvm/llvm-project/blob/main/libc/src/string/memory_utils/memcpy_utils.h

Sun, Apr 18, 9:07 AM · Restricted Project
tschuett added a comment to D100435: [ARM] Transforming memset to Tail predicated Loop.

For comparison:
https://github.com/llvm/llvm-project/blob/main/libc/src/string/memory_utils/memset_utils.h

Sun, Apr 18, 9:07 AM · Restricted Project

Sat, Apr 17

tschuett added a comment to D100703: [libc++] [CI] Fail if the headers contain cyclic dependencies.

I thought the Beyonce rule was: if you like a world without unicode characters, you need to put a CI test on it.

Sat, Apr 17, 2:28 PM · Restricted Project
tschuett added a comment to D100703: [libc++] [CI] Fail if the headers contain cyclic dependencies.

The C++ draft has some of these lints:
https://github.com/cplusplus/draft/blob/master/tools/check-source.sh#L25-L37

Sat, Apr 17, 12:14 PM · Restricted Project

Fri, Apr 16

tschuett added a comment to D100650: [lld-macho] Initial groundwork for -bitcode_bundle.

I see your point. It is more in terms of portability and a nicer API.

Fri, Apr 16, 11:30 AM · Restricted Project, Unknown Object (Project)
tschuett added a comment to D100650: [lld-macho] Initial groundwork for -bitcode_bundle.

Are there plans for an LLVM LIBXAR?

Fri, Apr 16, 11:05 AM · Restricted Project, Unknown Object (Project)

Sat, Apr 10

tschuett added a comment to D100119: [mlir] Rename AVX512 dialect to X86Vector.

Maybe a child diff with the new op?

Sat, Apr 10, 12:06 AM · Restricted Project, Restricted Project

Fri, Apr 9

tschuett added a comment to D97389: added section on CI system.

There is now an official revert policy:
https://reviews.llvm.org/D99305

Fri, Apr 9, 1:16 AM · Restricted Project

Tue, Apr 6

tschuett added a comment to D99962: [FPEnv] EarlyCSE support for constrained intrinsics, default FP environment edition.

early returns?

Tue, Apr 6, 8:25 AM · Restricted Project

Mon, Apr 5

tschuett abandoned D99842: [lld-macho][nfc] POC for 32 bit support.

No problem.

Mon, Apr 5, 12:01 AM · Unknown Object (Project), Restricted Project

Sat, Apr 3

tschuett added a comment to D99822: [lld-macho] Add support for arm64_32.

No. Inheriting from multiple Classes.

struct ARM64: TargetInfo, ARMCommon {
...
}

But if ARMCommon already implements parts of TargetInfo, then it is fine.

Sat, Apr 3, 9:54 PM · Restricted Project, Unknown Object (Project)
tschuett added a comment to D99842: [lld-macho][nfc] POC for 32 bit support.

Nope is fine. But it keeps the section and section_64 instead of the offset in getEmbeddedAddend.

Sat, Apr 3, 9:52 PM · Unknown Object (Project), Restricted Project
tschuett updated the diff for D99842: [lld-macho][nfc] POC for 32 bit support.

tweak

Sat, Apr 3, 1:54 PM · Unknown Object (Project), Restricted Project
tschuett added a comment to D99822: [lld-macho] Add support for arm64_32.

Does ARMCommon need to inherit from TargetInfo? Can ARM64 inherit from ARMCommon and TargetInfo? Multiple inheritance is a bit hacky.

Sat, Apr 3, 12:44 PM · Restricted Project, Unknown Object (Project)
tschuett updated the diff for D99842: [lld-macho][nfc] POC for 32 bit support.

tweak

Sat, Apr 3, 12:36 PM · Unknown Object (Project), Restricted Project
tschuett updated the diff for D99842: [lld-macho][nfc] POC for 32 bit support.

even smaller diff

Sat, Apr 3, 11:41 AM · Unknown Object (Project), Restricted Project
tschuett updated the diff for D99842: [lld-macho][nfc] POC for 32 bit support.

minimize diff

Sat, Apr 3, 11:37 AM · Unknown Object (Project), Restricted Project
tschuett updated the diff for D99842: [lld-macho][nfc] POC for 32 bit support.

less hacky

Sat, Apr 3, 11:29 AM · Unknown Object (Project), Restricted Project
tschuett requested review of D99842: [lld-macho][nfc] POC for 32 bit support.
Sat, Apr 3, 10:54 AM · Unknown Object (Project), Restricted Project

Thu, Apr 1

tschuett added a comment to D99633: [lld-macho][nfc] Refactor in preparation for 32-bit support.

Please feel free to ignore me, but it looks odd to needle 32bit support through the ARM64 and X86_64 structs. Inheritance? Common base class?

I guess you're referring to the set32BitProperties thing? I was hoping to keep things like target->wordSize a direct field access instead of a virtual method, and I couldn't find a way to do it with inheritance... but maybe virtual methods are the way to go after all.

But target->wordSize also goes through the vtable?
And you are loosing section_64 and have to use the less type-safe offset.

Thu, Apr 1, 8:21 AM · Restricted Project, Unknown Object (Project)
tschuett added a comment to D99633: [lld-macho][nfc] Refactor in preparation for 32-bit support.

Is sprinkling templates all over ObjFile better than ObjFile32 and ObjFile64?

Thu, Apr 1, 8:00 AM · Restricted Project, Unknown Object (Project)
tschuett added a comment to D99633: [lld-macho][nfc] Refactor in preparation for 32-bit support.

Please ignore me, but it looks odd to needle 32bit support through the ARM64 and X86_64 structs. Inheritance? Common base class?

Thu, Apr 1, 1:10 AM · Restricted Project, Unknown Object (Project)

Tue, Mar 30

tschuett added a comment to D99190: [SYCL] Add design document for SYCL mode.

The OMPIRBuilder is the modern version of late outlining:
https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
You may consider to go that way with SYCL as well.

Tue, Mar 30, 12:19 PM · Restricted Project

Fri, Mar 26

tschuett added a comment to D99409: [clang] Speedup line offset mapping computation.

Would it help readability and portability to change unsigned long to either uintptr_t, uint32_t, or uint64_t?

Fri, Mar 26, 4:13 AM · Restricted Project, Restricted Project

Thu, Mar 25

tschuett added inline comments to D99318: [lld-macho] Add time tracing for LTO.
Thu, Mar 25, 10:03 AM · Unknown Object (Project), Restricted Project

Wed, Mar 24

tschuett added a comment to D99279: [lld-macho] Parallelize UUID hash computation.

Would you mind adding the file size and the number of cores to the summary?

Wed, Mar 24, 11:08 AM · Restricted Project, Unknown Object (Project)
tschuett added a comment to D99279: [lld-macho] Parallelize UUID hash computation.

ELF uses the same chunk size. I am wondering, why the chunk size is independent of the file size and the number of cores? E.g. why bother with chunks if you have 1 core? Or if if you link a 1GB file with 10 cores, you probably have too many chunks?

Wed, Mar 24, 11:00 AM · Restricted Project, Unknown Object (Project)

Mar 22 2021

tschuett added a comment to D99041: [libcxx] moves `std::invoke` into `__functional_base`.

I started a private module map in https://reviews.llvm.org/D94924. It reduces the surface of the std module. Splitting large headers into smaller "tail" headers should support this effort.

Mar 22 2021, 10:16 AM · Restricted Project
tschuett added a comment to D99041: [libcxx] moves `std::invoke` into `__functional_base`.

@cjdb seemed to be afraid that the two implementations would diverge. I was merely hinting at adding tests as counter-prove. If the solution is macro-foo then I am fine with that.

Mar 22 2021, 8:34 AM · Restricted Project

Mar 21 2021

tschuett added a comment to D99041: [libcxx] moves `std::invoke` into `__functional_base`.

Then you might want to add tests to show that

Mar 21 2021, 11:08 PM · Restricted Project

Mar 20 2021

tschuett added a comment to rW16c3af343457: [GSOC] Add potential Enzyme Rust project.

You mixed Swift and Rust?

Mar 20 2021, 3:34 AM

Mar 17 2021

tschuett added a comment to D94964: [LangRef] Describe memory layout for vectors types.

Clang introduced _ExtInt exactly for those people:
http://blog.llvm.org/2020/04/the-new-clang-extint-feature-provides.html

Mar 17 2021, 12:57 PM · Restricted Project
tschuett added a comment to D94964: [LangRef] Describe memory layout for vectors types.

I like the idea of ASCII-Art. My mind works better with examples and "pictures" then with long hard to read text.

Mar 17 2021, 12:52 PM · Restricted Project

Mar 12 2021

tschuett added a comment to D98571: [lld-macho] Optimize getRelocAttrs().

LLVM is not a big fan of std::map:
https://llvm.org/docs/ProgrammersManual.html#map

Mar 12 2021, 10:48 PM · Unknown Object (Project), Restricted Project

Mar 11 2021

tschuett committed rG50c1b21851a1: [lld-macho] minimal TimeTrace support (authored by tschuett).
[lld-macho] minimal TimeTrace support
Mar 11 2021, 6:31 AM
tschuett closed D98419: [lld-macho] minimal TimeTrace support.
Mar 11 2021, 6:30 AM · Restricted Project, Unknown Object (Project)
tschuett added inline comments to D98419: [lld-macho] minimal TimeTrace support.
Mar 11 2021, 6:29 AM · Restricted Project, Unknown Object (Project)
tschuett updated the diff for D98419: [lld-macho] minimal TimeTrace support.

blank line

Mar 11 2021, 6:10 AM · Restricted Project, Unknown Object (Project)
tschuett added inline comments to D98419: [lld-macho] minimal TimeTrace support.
Mar 11 2021, 6:08 AM · Restricted Project, Unknown Object (Project)
tschuett requested review of D98419: [lld-macho] minimal TimeTrace support.
Mar 11 2021, 6:07 AM · Restricted Project, Unknown Object (Project)

Feb 27 2021

tschuett added inline comments to D97610: [lld-macho] check minimum header length when opening linkable input files.
Feb 27 2021, 1:51 PM · Restricted Project, Unknown Object (Project)

Feb 22 2021

tschuett added a comment to D94264: [GlobalISel] Add MachineInstNumbering to CSEInfo and propagate CSE throughout AArch64 pipeline..

Could you split large basic blocks into smaller ones?

Feb 22 2021, 10:08 AM · Restricted Project

Feb 21 2021

tschuett added a comment to D97067: [mlir] Introduce data layout modeling subsystem.

llvm went from unsigned to llvm::Align. Maybe introduce a richer type to represent the size of something. The conversion from bits to bytes could be target specific?

Feb 21 2021, 12:18 PM · Restricted Project
tschuett added a comment to D93593: [libc++][format] Add __format_arg_store..

You could put a comment at the top of the format header:
This library is still in development and there are no stability guarantees.

Feb 21 2021, 12:16 AM · Restricted Project

Feb 17 2021

tschuett added a comment to D96852: [clang][SVE] Use __inline__ instead of inline in arm_sve.h.

See

__STDC_VERSION__

in https://gcc.gnu.org/onlinedocs/cpp/Standard-Predefined-Macros.html.

Feb 17 2021, 6:20 AM · Restricted Project

Feb 15 2021

tschuett added a comment to D96164: [lld-macho] add code signature for native arm64 macOS.

Feel free to ignore me, but:
https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/BinaryFormat/MachO.h
seems to be inspired by the Apple headers. It is not a one-to-one copy.

Feb 15 2021, 9:58 AM · Unknown Object (Project), Restricted Project

Feb 14 2021

tschuett added a comment to D96164: [lld-macho] add code signature for native arm64 macOS.

Does codesign.go make any differences?

Feb 14 2021, 9:29 AM · Unknown Object (Project), Restricted Project
tschuett added inline comments to D96164: [lld-macho] add code signature for native arm64 macOS.
Feb 14 2021, 6:46 AM · Unknown Object (Project), Restricted Project

Feb 11 2021

tschuett added a comment to D96164: [lld-macho] add code signature for native arm64 macOS.
from cs_blobs.h
Feb 11 2021, 12:55 PM · Unknown Object (Project), Restricted Project
tschuett added a comment to D96482: [DeveloperPolicy] Specify LLVM's license more clearly..

There is also no LLVM-exception with a dash.

Feb 11 2021, 4:31 AM · Restricted Project
tschuett added a comment to D96482: [DeveloperPolicy] Specify LLVM's license more clearly..

If you would extend the paragraph, you could say:
"For reference the SPDX identifier is ..."

Yes, it could be helpful to also explicitly call out the SPDX identifier. However, there is also value in keeping that introductory paragraph as short as possible.
On balance, I think it's slightly better to not call out the SPDX identifier in that introductory paragraph.
Maybe there's value in explicitly calling out the SPDX identifiers in one of the later paragraphs?

Agreed. In fact, I could neither find a WITH nor a SPDX in the whole file.

Feb 11 2021, 4:28 AM · Restricted Project
tschuett added a comment to D96482: [DeveloperPolicy] Specify LLVM's license more clearly..

If you would extend the paragraph, you could say:
"For reference the SPDX identifier is ..."

Feb 11 2021, 3:02 AM · Restricted Project

Feb 7 2021

tschuett added a comment to D96164: [lld-macho] add code signature for native arm64 macOS.

Some cmake magic to look for OpenSSL? If you can't find it, give a warning and disable code-signing?

Feb 7 2021, 12:04 AM · Unknown Object (Project), Restricted Project

Feb 6 2021

tschuett added a comment to D96164: [lld-macho] add code signature for native arm64 macOS.

https://go-review.googlesource.com/c/scratch/+/271866/5/cherry/codesign.go

Feb 6 2021, 12:19 AM · Unknown Object (Project), Restricted Project

Feb 3 2021

tschuett added a comment to D95900: [lld-macho] Fill out release notes for 12.x.

But "Support for architectures other than x86_64" sounds like it is secret, which other ISAs you want to support.

Feb 3 2021, 12:44 AM · Restricted Project

Feb 2 2021

tschuett added inline comments to D95900: [lld-macho] Fill out release notes for 12.x.
Feb 2 2021, 11:33 PM · Restricted Project

Jan 26 2021

tschuett added a comment to D95477: [llvm-jitlink] Replace use of deprecated gethostbyname by getaddrinfo..

The man page uses:

Jan 26 2021, 2:24 PM · Restricted Project

Jan 24 2021

tschuett added a comment to D95314: [OpenMP][Libomptarget] Introduce Remote Offloading Plugin.

clangd has also machinery for detecting grpc:
https://reviews.llvm.org/D77794

Jan 24 2021, 11:25 AM · Restricted Project
tschuett added inline comments to D95248: [libc++][doc] Update the release notes.
Jan 24 2021, 4:20 AM · Restricted Project

Jan 22 2021

tschuett committed rGb973e2e2f27e: [libc++] Introduce __bits (authored by tschuett).
[libc++] Introduce __bits
Jan 22 2021, 12:20 PM
tschuett closed D94908: [libc++] Introduce __bits.
Jan 22 2021, 12:20 PM · Restricted Project
tschuett added a comment to D95248: [libc++][doc] Update the release notes.

Maybe you could the same for the status page? It was changed from XXX to YYY? It is claiming success without giving numbers.

Jan 22 2021, 11:50 AM · Restricted Project
tschuett added a comment to D95248: [libc++][doc] Update the release notes.

Do what ever you want, but a lot sounds a bit cheap. Or give some concrete examples?

Jan 22 2021, 11:39 AM · Restricted Project
tschuett added inline comments to D95248: [libc++][doc] Update the release notes.
Jan 22 2021, 10:37 AM · Restricted Project
tschuett added inline comments to D95248: [libc++][doc] Update the release notes.
Jan 22 2021, 10:35 AM · Restricted Project
tschuett added a comment to D94924: [libc++] first steps of a private modulemap.

I would rather see it as that I am forced to do that. It is the only way to eliminate cyclic dependencies.

Jan 22 2021, 7:05 AM · Restricted Project
tschuett added a comment to D94924: [libc++] first steps of a private modulemap.

I would rather expect that we have to split some headers into smaller/modular ones.

Jan 22 2021, 12:58 AM · Restricted Project
tschuett updated the diff for D94924: [libc++] first steps of a private modulemap.
  • rebased
  • sorted headers
Jan 22 2021, 12:57 AM · Restricted Project

Jan 21 2021

tschuett added a comment to D94924: [libc++] first steps of a private modulemap.
  1. You don't have to do anything.
  2. If you use -fcxx-modules, it reduces the size of the surface of the std module. The std_private module is hidden from users. There is a " // FIXME: These should be private." in the module.modulemap. These headers should not be visible to users of the std module. The private module is exactly trying to do that.
Jan 21 2021, 8:03 AM · Restricted Project

Jan 19 2021

tschuett added inline comments to D94924: [libc++] first steps of a private modulemap.
Jan 19 2021, 12:33 PM · Restricted Project
tschuett added a comment to D94924: [libc++] first steps of a private modulemap.

You can see it as proof of concept. If you don't like, feel free to reject.

Jan 19 2021, 12:13 PM · Restricted Project

Jan 18 2021

tschuett updated the summary of D94924: [libc++] first steps of a private modulemap.
Jan 18 2021, 2:53 PM · Restricted Project
tschuett updated the summary of D94924: [libc++] first steps of a private modulemap.
Jan 18 2021, 2:51 PM · Restricted Project
tschuett updated the diff for D94924: [libc++] first steps of a private modulemap.

finally managed to get __bits running

Jan 18 2021, 2:51 PM · Restricted Project
tschuett updated the diff for D94924: [libc++] first steps of a private modulemap.

more pseudo-private modules

Jan 18 2021, 1:36 PM · Restricted Project
tschuett updated the diff for D94924: [libc++] first steps of a private modulemap.

add newline

Jan 18 2021, 12:10 PM · Restricted Project
tschuett updated the summary of D94924: [libc++] first steps of a private modulemap.
Jan 18 2021, 11:02 AM · Restricted Project
tschuett requested review of D94924: [libc++] first steps of a private modulemap.
Jan 18 2021, 11:01 AM · Restricted Project
tschuett requested review of D94908: [libc++] Introduce __bits.
Jan 18 2021, 4:31 AM · Restricted Project

Jan 17 2021

tschuett added a comment to D94489: [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference.

There is no syntax highlighting for Python in sphinx? The code in
https://lldb.llvm.org/python_api/lldb.SBDebugger.html#lldb.SBDebugger
is hard to read.

Even the line breaks between the source code and web page differ.

There is, but someone (probably me) needs to rewrite and update all the documentation in restructured text so that sphinx knows this is a code example (previously we had just plaintext). Currently working on all that.

Jan 17 2021, 7:34 AM · Restricted Project, Restricted Project
tschuett added a comment to D94489: [lldb][docs] Use sphinx instead of epydoc to generate LLDB's Python reference.

There is no syntax highlighting for Python in sphinx? The code in
https://lldb.llvm.org/python_api/lldb.SBDebugger.html#lldb.SBDebugger
is hard to read.

Jan 17 2021, 6:41 AM · Restricted Project, Restricted Project

Jan 14 2021

tschuett added a comment to D94692: [libc] Allow customization of memcpy via flags..

There is -nostdinc++.

Jan 14 2021, 9:36 AM · Restricted Project
tschuett added a comment to D94667: [llvm-nm] - Move MachO specific logic out from the dumpSymbolNamesFromObject(). NFC..

Does it have to stay in llvm-nm.cpp? A different file for MachO stuff?

Jan 14 2021, 5:22 AM · Restricted Project
tschuett added a comment to D94642: [libc] Use #undef isascii in specific header.

clang-format supports include blocks:

BasedOnStyle: LLVM
IncludeBlocks: Regroup
IncludeCategories:
  - Regex:           '^<.*\.h>'
    Priority:        2
  - Regex:           '^<.*'
    Priority:        6
  - Regex:           '^"(llvm|llvm-c)/'
    Priority:        5
  - Regex:           '^"(clang|clang-c)/'
    Priority:        4
  - Regex:           '^"\.\./'
    Priority:        3
  - Regex:           '.*'
    Priority:        1
Jan 14 2021, 12:25 AM · Restricted Project

Jan 13 2021

tschuett added a comment to D94451: Proposal for adding Bazel build configuration in-tree with peripheral support.

The main supporting point for me is that it is peripheral and helps external users of LLVM,, like e.g. Tensorflow. I believe it is a completely different usage scenario than gn or cmake.

Jan 13 2021, 10:13 AM

Jan 8 2021

tschuett added a comment to D94336: [libcxx] Implement P1679r3 'string contains function' for c++2b.

I just wanted to help you!

Jan 8 2021, 1:32 PM
tschuett added a comment to D94336: [libcxx] Implement P1679r3 'string contains function' for c++2b.

see https://reviews.llvm.org/D93912

Jan 8 2021, 1:00 PM

Jan 4 2021

tschuett added a comment to D93791: [AArch64] Add Fujitsu A64FX scheduling model.

Yes, if it could be part of the machine model. It is specific to your core.

Jan 4 2021, 9:44 PM · Restricted Project
tschuett added a reverting change for rGefc82c4ad2bc: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II): rG2fd11e0b1ef8: Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped….
Jan 4 2021, 2:18 PM
tschuett committed rG2fd11e0b1ef8: Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped… (authored by tschuett).
Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped…
Jan 4 2021, 2:18 PM
tschuett added a reverting change for D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II): rG2fd11e0b1ef8: Revert "[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped….
Jan 4 2021, 2:18 PM · Restricted Project
tschuett committed rGefc82c4ad2bc: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II) (authored by tschuett).
[NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II)
Jan 4 2021, 1:59 PM
tschuett closed D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II).
Jan 4 2021, 1:58 PM · Restricted Project
tschuett updated the diff for D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II).

fixed unittest

Jan 4 2021, 1:12 PM · Restricted Project
tschuett added a comment to D93597: [X86][SSE] Enable constexpr on some basic SSE intrinsics (RFC).

But LLVM is C++14:
https://github.com/llvm/llvm-project/blob/main/llvm/docs/CodingStandards.rst#id13

Jan 4 2021, 12:46 PM · Restricted Project
tschuett updated the diff for D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II).

libclang take II

Jan 4 2021, 12:24 PM · Restricted Project
tschuett updated the diff for D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II).

fix libclang

Jan 4 2021, 11:53 AM · Restricted Project
tschuett updated the diff for D93765: [NFC, Refactor] Modernize StorageClass from Specifiers.h to a scoped enum (II).

addressed review comments

Jan 4 2021, 11:26 AM · Restricted Project