phosek (Petr Hosek)
User

Projects

User does not belong to any projects.

User Details

User Since
Mar 4 2015, 5:44 PM (185 w, 4 d)

Recent Activity

Yesterday

phosek committed rL342833: [CMake] Use internal_linkage rather than always_inline for libc++.
[CMake] Use internal_linkage rather than always_inline for libc++
Sun, Sep 23, 1:49 AM
phosek committed rC342833: [CMake] Use internal_linkage rather than always_inline for libc++.
[CMake] Use internal_linkage rather than always_inline for libc++
Sun, Sep 23, 1:49 AM
phosek closed D52402: [CMake][Fuchsia] Use internal_linkage rather than always_inline for libc++.
Sun, Sep 23, 1:49 AM
phosek created D52402: [CMake][Fuchsia] Use internal_linkage rather than always_inline for libc++.
Sun, Sep 23, 1:04 AM

Fri, Sep 21

phosek accepted D52386: [Lexer] Add udefined_behavior_sanitizer feature.

LGTM but you should probably a wait a day to see if sanitizer owners are fine with with this as well.

Fri, Sep 21, 5:56 PM · Restricted Project
phosek added a comment to D45639: [Driver] Support default libc++ library location on Darwin.

@phosek I don't understand how you can expect code compiled with new headers to link against an old dylib, unless you're setting the target platform, in which case anything that would fail to link will instead be a compiler error. I mean, we're adding stuff to the dylib from one version to the next, so _of course_ it won't always work.

Fri, Sep 21, 1:10 PM

Thu, Sep 20

phosek committed rLLD342704: [ELF] Use the Repl point to avoid the segfault when using ICF.
[ELF] Use the Repl point to avoid the segfault when using ICF
Thu, Sep 20, 5:57 PM
phosek committed rL342704: [ELF] Use the Repl point to avoid the segfault when using ICF.
[ELF] Use the Repl point to avoid the segfault when using ICF
Thu, Sep 20, 5:57 PM
phosek closed D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Thu, Sep 20, 5:57 PM
phosek closed D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Thu, Sep 20, 5:57 PM
phosek updated the diff for D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Thu, Sep 20, 11:52 AM

Wed, Sep 19

phosek updated the diff for D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Wed, Sep 19, 8:54 PM
phosek updated the diff for D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Wed, Sep 19, 6:01 PM

Mon, Sep 17

phosek added a comment to D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.

So after looking a bit more into the output of the reproducer, I realized this is not the correct solution because it leads to relocations being duplicated. Instead, relocations for the folded section shouldn't be emitted at all so this's a deeper rooted issue.

Mon, Sep 17, 8:20 PM
phosek updated the diff for D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.

Now also includes a reproducer.

Mon, Sep 17, 8:01 PM
phosek added a comment to D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.

I haven't managed to come up with a minimal reproducer yet, but this addresses the issue when using the reproducer attached in https://bugs.llvm.org/show_bug.cgi?id=38918.

Mon, Sep 17, 6:06 PM
phosek created D52202: [ELF] Use the Repl point to avoid the segfault when using ICF.
Mon, Sep 17, 6:01 PM
phosek added a comment to D51792: [AArch64] Attempt to parse expressions as adr/adrp operands.

I tested this change with Fuchsia and it's working for us. Thank you for looking into this! I'd like to see this landed as soon as possible as it unblocks the toolchain roll for us.

Mon, Sep 17, 4:31 PM
phosek added inline comments to D52161: [XRay] Encapsulate all FD log related logic into a class.
Mon, Sep 17, 4:25 PM
phosek updated the diff for D52161: [XRay] Encapsulate all FD log related logic into a class.
Mon, Sep 17, 4:25 PM
phosek updated the diff for D52161: [XRay] Encapsulate all FD log related logic into a class.
Mon, Sep 17, 2:37 PM

Sun, Sep 16

phosek committed rL342358: [Lexer] Add xray_instrument feature.
[Lexer] Add xray_instrument feature
Sun, Sep 16, 10:27 PM
phosek committed rC342358: [Lexer] Add xray_instrument feature.
[Lexer] Add xray_instrument feature
Sun, Sep 16, 10:27 PM
phosek closed D52159: [Lexer] Add xray_instrument feature.
Sun, Sep 16, 10:27 PM
phosek committed rCRT342357: [sanitizer_common] Fuchsia now supports .preinit_array.
[sanitizer_common] Fuchsia now supports .preinit_array
Sun, Sep 16, 10:24 PM
phosek committed rL342357: [sanitizer_common] Fuchsia now supports .preinit_array.
[sanitizer_common] Fuchsia now supports .preinit_array
Sun, Sep 16, 10:24 PM
phosek closed D52155: [sanitizer_common] Fuchsia now supports .preinit_array.
Sun, Sep 16, 10:23 PM
phosek added a dependent revision for D52161: [XRay] Encapsulate all FD log related logic into a class: D52162: [XRay] Support for Fuchsia.
Sun, Sep 16, 10:17 PM
phosek added a dependency for D52162: [XRay] Support for Fuchsia: D52161: [XRay] Encapsulate all FD log related logic into a class.
Sun, Sep 16, 10:17 PM
phosek removed a dependency for D52160: [Driver] Support XRay on Fuchsia: D52161: [XRay] Encapsulate all FD log related logic into a class.
Sun, Sep 16, 10:17 PM
phosek added a dependent revision for D52161: [XRay] Encapsulate all FD log related logic into a class: D52160: [Driver] Support XRay on Fuchsia.
Sun, Sep 16, 10:17 PM
phosek added a dependency for D52160: [Driver] Support XRay on Fuchsia: D52161: [XRay] Encapsulate all FD log related logic into a class.
Sun, Sep 16, 10:17 PM
phosek removed a dependent revision for D52161: [XRay] Encapsulate all FD log related logic into a class: D52160: [Driver] Support XRay on Fuchsia.
Sun, Sep 16, 10:17 PM
phosek created D52162: [XRay] Support for Fuchsia.
Sun, Sep 16, 10:11 PM
phosek created D52161: [XRay] Encapsulate all FD log related logic into a class.
Sun, Sep 16, 8:57 PM
phosek created D52160: [Driver] Support XRay on Fuchsia.
Sun, Sep 16, 6:00 PM
phosek updated the diff for D52159: [Lexer] Add xray_instrument feature.
Sun, Sep 16, 5:50 PM
phosek created D52159: [Lexer] Add xray_instrument feature.
Sun, Sep 16, 5:38 PM
phosek created D52155: [sanitizer_common] Fuchsia now supports .preinit_array.
Sun, Sep 16, 2:15 PM

Fri, Sep 14

phosek committed rCRT342320: [XRay] Remove the unused variable.
[XRay] Remove the unused variable
Fri, Sep 14, 11:26 PM
phosek committed rL342320: [XRay] Remove the unused variable.
[XRay] Remove the unused variable
Fri, Sep 14, 11:26 PM
phosek committed rCRT342318: [XRay] Remove the deprecated __xray_log_init API.
[XRay] Remove the deprecated __xray_log_init API
Fri, Sep 14, 7:57 PM
phosek committed rL342318: [XRay] Remove the deprecated __xray_log_init API.
[XRay] Remove the deprecated __xray_log_init API
Fri, Sep 14, 7:57 PM
phosek closed D51606: [XRay] Remove the deprecated __xray_log_init API.
Fri, Sep 14, 7:57 PM
phosek created D52132: [CMake] Use cannonical triples for Fuchsia runtimes.
Fri, Sep 14, 7:44 PM

Tue, Sep 11

phosek committed rL342021: [Driver] Search LibraryPaths when handling -print-file-name.
[Driver] Search LibraryPaths when handling -print-file-name
Tue, Sep 11, 8:28 PM
phosek committed rC342021: [Driver] Search LibraryPaths when handling -print-file-name.
[Driver] Search LibraryPaths when handling -print-file-name
Tue, Sep 11, 8:27 PM
phosek closed D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Tue, Sep 11, 8:27 PM

Mon, Sep 10

phosek added a comment to D51833: ELF: Add --build-id-link-dir=DIR switch.

I think I don't understand the use case of the feature yet.

  • If you hard-link two files, they have the identical contents (strictly speaking there is only one file with two filenames). If a debugger can find an executable having debug info in .build-id/xx/xxxxx directory, it should be able to find it in the executable that's being debugged. So, how does it work?
Mon, Sep 10, 5:18 PM · lld
phosek updated the diff for D51833: ELF: Add --build-id-link-dir=DIR switch.
Mon, Sep 10, 4:46 PM · lld
phosek commandeered D51833: ELF: Add --build-id-link-dir=DIR switch.
Mon, Sep 10, 4:45 PM · lld
phosek added a comment to D51833: ELF: Add --build-id-link-dir=DIR switch.

This seems like a new feature proposal, and we haven't discussed this before. It's not clear to me why you have to do this inside the linker rather than a post-processing tool. Could you please elaborate about why you want to add a new option?

Mon, Sep 10, 4:43 PM · lld
phosek committed rL341870: [ELF] Don't emit .relr.dyn section if there are no relocs.
[ELF] Don't emit .relr.dyn section if there are no relocs
Mon, Sep 10, 2:58 PM
phosek committed rLLD341870: [ELF] Don't emit .relr.dyn section if there are no relocs.
[ELF] Don't emit .relr.dyn section if there are no relocs
Mon, Sep 10, 2:56 PM
phosek closed D51834: [ELF] Don't emit .relr.dyn section if there are no relocs.
Mon, Sep 10, 2:56 PM
phosek updated the diff for D51834: [ELF] Don't emit .relr.dyn section if there are no relocs.
Mon, Sep 10, 2:30 PM
phosek committed rL341852: [ADT] Support converting to lowercase string in toHex.
[ADT] Support converting to lowercase string in toHex
Mon, Sep 10, 12:36 PM
phosek closed D51835: [ADT] Support converting to lowercase string in toHex.
Mon, Sep 10, 12:36 PM

Sun, Sep 9

phosek added a comment to D51835: [ADT] Support converting to lowercase string in toHex.

LGTM.

(Really nit-picky comment: I would have done it by keeping an offset aside to add for lower case A-F to a-f and kept the original table as is. Implications of removing static may cause an insignificant increase in code size with bad linkers, just speculating, feel free to ignore)

Sun, Sep 9, 10:42 PM
phosek updated the diff for D51835: [ADT] Support converting to lowercase string in toHex.
Sun, Sep 9, 10:42 PM

Sat, Sep 8

phosek created D51835: [ADT] Support converting to lowercase string in toHex.
Sat, Sep 8, 5:54 PM
phosek created D51834: [ELF] Don't emit .relr.dyn section if there are no relocs.
Sat, Sep 8, 3:26 PM

Fri, Sep 7

phosek added inline comments to D48580: [AArch64] Support reserving x1-7 registers..
Fri, Sep 7, 11:26 AM

Tue, Sep 4

phosek updated the diff for D51606: [XRay] Remove the deprecated __xray_log_init API.
Tue, Sep 4, 6:26 PM
phosek added inline comments to D51606: [XRay] Remove the deprecated __xray_log_init API.
Tue, Sep 4, 5:49 PM
phosek committed rL341395: [CMake] Provide a custom target to install LLVM libraries.
[CMake] Provide a custom target to install LLVM libraries
Tue, Sep 4, 12:11 PM
phosek closed D51603: [CMake] Provide a custom target to install LLVM libraries.
Tue, Sep 4, 12:11 PM
phosek added inline comments to D51603: [CMake] Provide a custom target to install LLVM libraries.
Tue, Sep 4, 11:10 AM

Mon, Sep 3

phosek added a comment to D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections..

This change broke several LLVM builders as well as our downstream Linux and macOS toolchain builders, would it be possible to either quickly fix the issue or revert it?

Mon, Sep 3, 8:05 PM
phosek created D51606: [XRay] Remove the deprecated __xray_log_init API.
Mon, Sep 3, 5:02 PM
phosek added inline comments to D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Mon, Sep 3, 2:19 PM
phosek created D51603: [CMake] Provide a custom target to install LLVM libraries.
Mon, Sep 3, 2:19 PM

Sat, Sep 1

phosek updated the diff for D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Sat, Sep 1, 9:52 PM
phosek updated the diff for D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Sat, Sep 1, 3:04 PM
phosek updated the diff for D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Sat, Sep 1, 2:51 PM
phosek created D51573: [Driver] Search LibraryPaths when handling -print-file-name.
Sat, Sep 1, 2:51 PM

Fri, Aug 31

phosek added a comment to D51440: [ToolChains] Link to compiler-rt with -L + -l when possible.

I'll see if I can get to looking at that sometime soon. I had this patch lying around as an attempt to work around the libtool issue in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27866 which doesn't seem to be going anywhere (and even if it did, it probably takes quite a bit of time before a new libtool release is made and it gets propagated to most places where I'd like to use this), and was curious if there was any specific reason for having this the way it was, or just the usual; historical reasons that it has started out like this and haven't had a need to change until now. If you otherwise would happen to be touching the same areas, feel free to pick it up ;-) otherwise I'll try to look at addressing your points in a few days.

Fri, Aug 31, 8:34 AM

Thu, Aug 30

phosek added a comment to D51440: [ToolChains] Link to compiler-rt with -L + -l when possible.

What about other compiler-rt runtimes? Shouldn't we use the same approach for those?

Thu, Aug 30, 1:15 AM

Wed, Aug 29

phosek committed rCRT341011: [sanitizer] Transition to new _zx_vmar_... calls.
[sanitizer] Transition to new _zx_vmar_... calls
Wed, Aug 29, 6:28 PM
phosek committed rL341011: [sanitizer] Transition to new _zx_vmar_... calls.
[sanitizer] Transition to new _zx_vmar_... calls
Wed, Aug 29, 6:28 PM
phosek closed D51468: [sanitizer] Transition to new _zx_vmar_... calls.
Wed, Aug 29, 6:28 PM
phosek created D51468: [sanitizer] Transition to new _zx_vmar_... calls.
Wed, Aug 29, 4:39 PM

Mon, Aug 27

phosek committed rL340764: [sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE.
[sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE
Mon, Aug 27, 10:52 AM
phosek committed rCRT340764: [sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE.
[sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE
Mon, Aug 27, 10:52 AM
phosek closed D51266: [sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE.
Mon, Aug 27, 10:52 AM

Sat, Aug 25

phosek created D51266: [sanitizer][fuzzer] Transition back to ZX_TIME_INFINITE.
Sat, Aug 25, 8:47 PM

Aug 22 2018

phosek committed rL340471: [Driver] Check normalized triples for multiarch runtime path.
[Driver] Check normalized triples for multiarch runtime path
Aug 22 2018, 3:57 PM
phosek committed rC340471: [Driver] Check normalized triples for multiarch runtime path.
[Driver] Check normalized triples for multiarch runtime path
Aug 22 2018, 3:57 PM
phosek closed D50547: [Driver] Use normalized triples for multiarch runtime path.
Aug 22 2018, 3:57 PM

Aug 21 2018

phosek added inline comments to D50547: [Driver] Use normalized triples for multiarch runtime path.
Aug 21 2018, 2:28 PM
phosek updated the diff for D50547: [Driver] Use normalized triples for multiarch runtime path.
Aug 21 2018, 2:25 PM
phosek added a comment to D50547: [Driver] Use normalized triples for multiarch runtime path.

I also need to create the following empty files for tests to pass (somehow those are not displayed by Phabricator):

clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/aarch64-fuchsia/lib/libclang_rt.asan-preinit.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/aarch64-fuchsia/lib/libclang_rt.asan.so
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/aarch64-fuchsia/lib/libclang_rt.builtins.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/aarch64-fuchsia/lib/libclang_rt.fuzzer.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/aarch64-fuchsia/lib/libclang_rt.scudo.so
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/i386-linux-gnu/lib/libclang_rt.builtins.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-fuchsia/lib/libclang_rt.asan-preinit.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-fuchsia/lib/libclang_rt.asan.so
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-fuchsia/lib/libclang_rt.builtins.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-fuchsia/lib/libclang_rt.fuzzer.a
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-fuchsia/lib/libclang_rt.scudo.so
clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/x86_64-linux-gnu/lib/libclang_rt.builtins.a
Aug 21 2018, 2:23 PM
phosek updated the diff for D50547: [Driver] Use normalized triples for multiarch runtime path.
Aug 21 2018, 2:21 PM

Aug 16 2018

phosek added a comment to D50547: [Driver] Use normalized triples for multiarch runtime path.
In D50547#1198218, @rnk wrote:

Would it be to much to check both the normalized and non-normalized?

Aug 16 2018, 7:53 AM
phosek updated the diff for D50547: [Driver] Use normalized triples for multiarch runtime path.
Aug 16 2018, 7:51 AM

Aug 15 2018

phosek committed rC339834: [Driver] -print-target-triple and -print-effective-triple options.
[Driver] -print-target-triple and -print-effective-triple options
Aug 15 2018, 5:22 PM
phosek committed rL339834: [Driver] -print-target-triple and -print-effective-triple options.
[Driver] -print-target-triple and -print-effective-triple options
Aug 15 2018, 5:22 PM
phosek closed D50755: [Driver] -print-target-triple and -print-effective-triple options.
Aug 15 2018, 5:22 PM

Aug 14 2018

phosek created D50755: [Driver] -print-target-triple and -print-effective-triple options.
Aug 14 2018, 9:01 PM
phosek accepted D50618: Refactor Darwin driver to refer to runtimes by component.

LGTM

Aug 14 2018, 11:52 AM