Page MenuHomePhabricator

phosek (Petr Hosek)
User

Projects

User does not belong to any projects.

User Details

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

Recent Activity

Sat, Mar 28

phosek accepted D74133: [compiler-rt] Build with correct ABI (PR38025).

LGTM as well, sorry about the delay.

Sat, Mar 28, 12:30 AM · Restricted Project

Fri, Mar 27

phosek created D76963: [profile] Avoid duplicating or leaking VMO.
Fri, Mar 27, 6:12 PM · Restricted Project

Thu, Mar 26

phosek accepted D76653: [clang] Allow -DDEFAULT_SYSROOT to be a relative path.

LGTM

Thu, Mar 26, 11:55 AM · Restricted Project
phosek added inline comments to D76653: [clang] Allow -DDEFAULT_SYSROOT to be a relative path.
Thu, Mar 26, 10:50 AM · Restricted Project

Wed, Mar 25

phosek planned changes to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

This is an alternative solution to D64045, but it seems like !associated metadata, which are lowered to SHF_LINK_ORDER are incompatible with section groups which are used for external symbols, so this solution alone isn't sufficient.

Wed, Mar 25, 3:11 PM · Restricted Project
phosek created D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Wed, Mar 25, 2:38 PM · Restricted Project

Tue, Mar 24

phosek added a comment to D64045: [InstrProfiling] Put instrumentation into comdat group with function.
In D64045#1766212, @pcc wrote:

Should this be using !associated metadata on ELF instead of comdats?

Tue, Mar 24, 10:32 PM · Restricted Project
phosek added a comment to D76653: [clang] Allow -DDEFAULT_SYSROOT to be a relative path.

Is this patch up to date?

Tue, Mar 24, 10:24 PM · Restricted Project
phosek accepted D76412: [libc] Add a simple x86_64 linux loader..
Tue, Mar 24, 9:20 PM · Restricted Project
phosek committed rGba1f4405c682: [profile] Move RuntimeCounterRelocation and ProfileDumped into a separate file (authored by phosek).
[profile] Move RuntimeCounterRelocation and ProfileDumped into a separate file
Tue, Mar 24, 8:48 PM
phosek closed D76750: [profile] Move RuntimeCounterRelocation and ProfileDumped into a separate file.
Tue, Mar 24, 8:47 PM · Restricted Project
phosek created D76750: [profile] Move RuntimeCounterRelocation and ProfileDumped into a separate file.
Tue, Mar 24, 8:24 PM · Restricted Project
phosek committed rG32bddad37bf0: [profile] Make atexit hook a no-op on Fuchsia (authored by phosek).
[profile] Make atexit hook a no-op on Fuchsia
Tue, Mar 24, 6:49 PM
phosek closed D76556: [profile] Make atexit hook a no-op on Fuchsia.
Tue, Mar 24, 6:48 PM · Restricted Project
phosek updated the diff for D76556: [profile] Make atexit hook a no-op on Fuchsia.
Tue, Mar 24, 6:47 PM · Restricted Project
phosek added a comment to D76668: [lld][ELF] Ignore __start/__stop symbols in section groups during GC.

The discussion and the tests should distinguish the COMDAT semantics from the --gc-sections semantics. They are related but distinct.

COMDAT is a standard ELF feature. It's clear how it's supposed to behave on its own: only one definition survives. Anything that prevents two input COMDAT groups with the same signature symbol from being reduced to exactly one of them in the output is clearly a bug.

The __start_*/__stop_* behavior is not formally specified. I was involved with its original creation, so I can speak with some authority on the spirit of its intent. It was never intended to influence what section contents go into the link, merely to provide symbols for the section bounds after all other logic has done so. IIRC this feature predated --gc-sections. It also predated the common use of COMDAT for C++. So its interactions with them were never really considered at the time. But I think the natural expectation of what section group semantics mean with these features is clear enough: a group always travels together. So when --gc-sections decides that .text.f is unreferenced then there is nothing keeping any of the f group in the link, so it all goes. The __start_ and __stop_ references don't affect this--they only resolve to whatever output section is left with that name after all the other logic such as COMDAT rules and --gc-sections has been applied.

Tue, Mar 24, 6:03 PM · Restricted Project
phosek added inline comments to D76556: [profile] Make atexit hook a no-op on Fuchsia.
Tue, Mar 24, 3:53 PM · Restricted Project
phosek updated the diff for D76556: [profile] Make atexit hook a no-op on Fuchsia.
Tue, Mar 24, 3:53 PM · Restricted Project

Mon, Mar 23

phosek created D76668: [lld][ELF] Ignore __start/__stop symbols in section groups during GC.
Mon, Mar 23, 9:45 PM · Restricted Project
phosek added inline comments to D76653: [clang] Allow -DDEFAULT_SYSROOT to be a relative path.
Mon, Mar 23, 6:31 PM · Restricted Project

Sat, Mar 21

phosek updated the diff for D76556: [profile] Make atexit hook a no-op on Fuchsia.
Sat, Mar 21, 6:10 PM · Restricted Project
phosek updated the diff for D76556: [profile] Make atexit hook a no-op on Fuchsia.
Sat, Mar 21, 6:10 PM · Restricted Project
phosek added inline comments to D76556: [profile] Make atexit hook a no-op on Fuchsia.
Sat, Mar 21, 5:06 PM · Restricted Project
phosek created D76556: [profile] Make atexit hook a no-op on Fuchsia.
Sat, Mar 21, 5:06 PM · Restricted Project

Fri, Mar 20

phosek created D76482: [lld][ELF] Provide optional hidden symbol for build ID.
Fri, Mar 20, 12:30 AM · Restricted Project

Thu, Mar 19

phosek committed rG6ef1f3718f3c: [sanitizer_coverage][Fuchsia] Set ZX_PROP_VMO_CONTENT_SIZE (authored by phosek).
[sanitizer_coverage][Fuchsia] Set ZX_PROP_VMO_CONTENT_SIZE
Thu, Mar 19, 7:13 PM
phosek closed D76437: [sanitizer_coverage][Fuchsia] Set ZX_PROP_VMO_CONTENT_SIZE.
Thu, Mar 19, 7:13 PM · Restricted Project
phosek committed rG4e6c778eca42: [XRay] Record the XRay data size as a property of the VMO (authored by phosek).
[XRay] Record the XRay data size as a property of the VMO
Thu, Mar 19, 7:13 PM
phosek closed D76462: [XRay] Record the XRay data size as a property of the VMO.
Thu, Mar 19, 7:13 PM · Restricted Project
phosek created D76462: [XRay] Record the XRay data size as a property of the VMO.
Thu, Mar 19, 5:00 PM · Restricted Project
phosek committed rGd6fc61b7e8b0: [profile] Record the profile size as a property of the VMO (authored by phosek).
[profile] Record the profile size as a property of the VMO
Thu, Mar 19, 4:28 PM
phosek closed D76402: [profile] Record the profile size as a property of the VMO.
Thu, Mar 19, 4:28 PM · Restricted Project
phosek accepted D76437: [sanitizer_coverage][Fuchsia] Set ZX_PROP_VMO_CONTENT_SIZE.

LGTM

Thu, Mar 19, 4:27 PM · Restricted Project
phosek committed rG98223f7931f2: [Fuchsia] Use -ffile-prefix-map (authored by phosek).
[Fuchsia] Use -ffile-prefix-map
Thu, Mar 19, 3:24 PM
phosek committed rG8a8778f25f10: [CMake] Enable the use of -ffile-prefix-map (authored by phosek).
[CMake] Enable the use of -ffile-prefix-map
Thu, Mar 19, 3:24 PM
phosek closed D76018: [CMake] Enable the use of -ffile-prefix-map.
Thu, Mar 19, 3:23 PM · Restricted Project
phosek closed D76189: [Fuchsia] Use -ffile-prefix-map.
Thu, Mar 19, 3:23 PM · Restricted Project
phosek added a comment to D76018: [CMake] Enable the use of -ffile-prefix-map.

Oh, I think you'll need to add it to llvm/cmake/modules/LLVMExternalProjectUtils.cmake also:

--- a/llvm/cmake/modules/LLVMExternalProjectUtils.cmake
+++ b/llvm/cmake/modules/LLVMExternalProjectUtils.cmake
@@ -221,6 +221,9 @@ function(llvm_ExternalProject_Add name source_dir)
     set(cmake_args ${ARG_CMAKE_ARGS})
   endif()

   ExternalProject_Add(${name}
     DEPENDS ${ARG_DEPENDS} llvm-config
     ${name}-clobber
@@ -239,6 +242,7 @@ function(llvm_ExternalProject_Add name source_dir)
                -DLLVM_HOST_TRIPLE=${LLVM_HOST_TRIPLE}
                -DLLVM_HAVE_LINK_VERSION_SCRIPT=${LLVM_HAVE_LINK_VERSION_SCRIPT}
                -DLLVM_USE_RELATIVE_PATHS_IN_DEBUG_INFO=${LLVM_USE_RELATIVE_PATHS_IN_DEBUG_INFO}
+               -DLLVM_USE_RELATIVE_PATHS_IN_FILES=${LLVM_USE_RELATIVE_PATHS_IN_FILES}
                -DLLVM_SOURCE_PREFIX=${LLVM_SOURCE_PREFIX}
                -DPACKAGE_VERSION=${PACKAGE_VERSION}
                -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
Thu, Mar 19, 3:22 PM · Restricted Project
phosek added a reviewer for D76412: [libc] Add a simple x86_64 linux loader.: dho.
Thu, Mar 19, 1:09 PM · Restricted Project

Wed, Mar 18

phosek created D76402: [profile] Record the profile size as a property of the VMO.
Wed, Mar 18, 8:04 PM · Restricted Project
phosek committed rGc682a605eb47: [Fuchsia] Include llvm-gsymutil tool in the Fuchsia toolchain (authored by phosek).
[Fuchsia] Include llvm-gsymutil tool in the Fuchsia toolchain
Wed, Mar 18, 2:08 PM
phosek closed D76204: [Fuchsia] Include llvm-gsymutil tool in the Fuchsia toolchain.
Wed, Mar 18, 2:08 PM · Restricted Project

Mon, Mar 16

phosek accepted D72687: [libcxx] Allow tests to link with static libc++abi/libc++ even if the shared version is present.

LGTM

Mon, Mar 16, 8:44 PM · Restricted Project

Sun, Mar 15

phosek created D76204: [Fuchsia] Include llvm-gsymutil tool in the Fuchsia toolchain.
Sun, Mar 15, 4:05 PM · Restricted Project

Sat, Mar 14

phosek created D76189: [Fuchsia] Use -ffile-prefix-map.
Sat, Mar 14, 9:30 PM · Restricted Project

Thu, Mar 12

phosek accepted D76102: Enforce that libc++ and libc++abi are built in a monorepo layout.

LGTM

Thu, Mar 12, 3:45 PM · Restricted Project, Restricted Project
phosek accepted D76104: Remove legacy CMake targets for libcxx and libcxxabi.

LGTM

Thu, Mar 12, 3:45 PM · Restricted Project, Restricted Project

Wed, Mar 11

phosek committed rGfe30eb626854: [runtimes] When COMPILER_RT is enabled, consider SANITIZER prefixes (authored by phosek).
[runtimes] When COMPILER_RT is enabled, consider SANITIZER prefixes
Wed, Mar 11, 2:43 PM
phosek closed D75773: [runtimes] When COMPILER_RT is enabled, consider SANITIZER prefixes.
Wed, Mar 11, 2:43 PM · Restricted Project
phosek updated the diff for D76018: [CMake] Enable the use of -ffile-prefix-map.

@smeenai does this look reasonable to you?

Wed, Mar 11, 2:07 PM · Restricted Project
phosek updated the diff for D76018: [CMake] Enable the use of -ffile-prefix-map.
Wed, Mar 11, 2:07 PM · Restricted Project
phosek added a comment to D76018: [CMake] Enable the use of -ffile-prefix-map.

This change only covers LLVM, not the runtimes. I'll make a follow up change to do the same for runtimes which should cover the cases you mentioned.

Wed, Mar 11, 1:01 PM · Restricted Project
phosek updated the diff for D76018: [CMake] Enable the use of -ffile-prefix-map.
Wed, Mar 11, 11:52 AM · Restricted Project
phosek created D76018: [CMake] Enable the use of -ffile-prefix-map.
Wed, Mar 11, 11:52 AM · Restricted Project

Tue, Mar 10

phosek added a comment to D75890: [libunwind] Remove __FILE__ and __LINE__ from error reporting.

__FILE__ only expands to an absolute path if you pass an absolute path to clang (ctrl-f "FILE" on http://blog.llvm.org/2019/11/deterministic-builds-with-clang-and-lld.html).

Tue, Mar 10, 2:47 PM · Restricted Project, Restricted Project
phosek accepted D75890: [libunwind] Remove __FILE__ and __LINE__ from error reporting.

LGTM but you might want to wait a few more hours for other reviewers to see if anyone has objections.

Tue, Mar 10, 12:33 PM · Restricted Project, Restricted Project
phosek added reviewers for D75890: [libunwind] Remove __FILE__ and __LINE__ from error reporting: saugustine, echristo, ldionne.
Tue, Mar 10, 12:33 PM · Restricted Project, Restricted Project

Mon, Mar 9

Herald added a reviewer for D75890: [libunwind] Remove __FILE__ and __LINE__ from error reporting: mclow.lists.

I'd prefer to make this the behavior when just NDEBUG is set, I think it's rather unexpected to still get debug messages even after you set NDEBUG, but since that would be a breaking change, it deserves an email to llvm-dev to ensure that nobody is relying on the current behavior.

Mon, Mar 9, 9:55 PM · Restricted Project, Restricted Project
phosek accepted D75818: [libc] Take 2: Add linux implementations of thrd_create and thrd_join functions..

I think implementing pthread on top of C11 threads is plausible on Fuchsia because it just provides POSIX lite. However, the same idea copying over to Linux may not be practical. For one thing, the performance of pthread_mutex_lock matters. Implementing it on top of mtx_lock costs an extra function call, not to say that some features are not available in C11 mutex. mtx_* and thrd_* are usely so rarely in practice. Implementing them on top of pthread will have an infinitesimal cost.

Mon, Mar 9, 6:22 PM · Restricted Project

Fri, Mar 6

phosek committed rG7003f64c1eb2: [clang-doc] Improving Markdown Output (authored by phosek).
[clang-doc] Improving Markdown Output
Fri, Mar 6, 6:13 PM
phosek closed D72954: [clang-doc] Improving Markdown Output.
Fri, Mar 6, 6:12 PM · Restricted Project, Restricted Project, Restricted Project
phosek accepted D75786: [clang-tidy] Move fuchsia-restrict-system-includes to portability module for general use..

We're not using this module in Fuchsia at the moment, so I'd be fine not having an alias at all, if we start using it again in the future we'll use the new name.

Fri, Mar 6, 5:39 PM · Restricted Project, Restricted Project
phosek created D75773: [runtimes] When COMPILER_RT is enabled, consider SANITIZER prefixes.
Fri, Mar 6, 2:55 PM · Restricted Project
phosek created D75772: [compiler-rt] Set builtins and cxx library for target arch test.
Fri, Mar 6, 2:55 PM · Restricted Project, Restricted Project
phosek reopened D72954: [clang-doc] Improving Markdown Output.
Fri, Mar 6, 2:22 PM · Restricted Project, Restricted Project, Restricted Project
phosek accepted D53327: [Hexagon] Use -fuse-ld update checks..

LGTM

Fri, Mar 6, 11:35 AM · Restricted Project

Thu, Mar 5

phosek accepted D75380: [libc] Add linux implementations of thrd_create and thrd_join functions..

LGTM

Thu, Mar 5, 12:07 PM · Restricted Project
phosek accepted D74653: [libc] Add simple implementations of mtx_lock and mtx_unlock..

LGTM

Thu, Mar 5, 12:07 PM · Restricted Project

Wed, Mar 4

phosek committed rGea086d10ceaf: Revert "[clang-doc] Improving Markdown Output" (authored by phosek).
Revert "[clang-doc] Improving Markdown Output"
Wed, Mar 4, 4:22 PM
phosek added a reverting change for rG45499f3801d8: [clang-doc] Improving Markdown Output: rGea086d10ceaf: Revert "[clang-doc] Improving Markdown Output".
Wed, Mar 4, 4:22 PM
phosek added a comment to D72954: [clang-doc] Improving Markdown Output.

This is still failing on Windows:

******************** TEST 'Extra Tools Unit Tests :: clang-doc/./ClangDocTests.exe/MDGeneratorTest.emitNamespaceMD' FAILED ********************
Note: Google Test filter = MDGeneratorTest.emitNamespaceMD
Wed, Mar 4, 3:46 PM · Restricted Project, Restricted Project, Restricted Project
phosek committed rG45499f3801d8: [clang-doc] Improving Markdown Output (authored by phosek).
[clang-doc] Improving Markdown Output
Wed, Mar 4, 3:14 PM
phosek closed D72954: [clang-doc] Improving Markdown Output.
Wed, Mar 4, 3:13 PM · Restricted Project, Restricted Project, Restricted Project
phosek reopened D72954: [clang-doc] Improving Markdown Output.
Wed, Mar 4, 2:41 PM · Restricted Project, Restricted Project, Restricted Project
phosek closed D72954: [clang-doc] Improving Markdown Output.
Wed, Mar 4, 2:41 PM · Restricted Project, Restricted Project, Restricted Project

Mon, Mar 2

phosek committed rGdffbaa401421: [libcxx] Drop -D option from libtool when merging archives (authored by phosek).
[libcxx] Drop -D option from libtool when merging archives
Mon, Mar 2, 4:38 PM
phosek committed rG603acd962670: [libcxx] When merging archives, build index even on Darwin (authored by phosek).
[libcxx] When merging archives, build index even on Darwin
Mon, Mar 2, 11:38 AM
phosek closed D74108: [libcxx] When merging archives, build index even on Darwin.
Mon, Mar 2, 11:38 AM · Restricted Project

Feb 29 2020

phosek added a comment to D74108: [libcxx] When merging archives, build index even on Darwin.

Ping again?

Feb 29 2020, 12:22 PM · Restricted Project
phosek added inline comments to D74133: [compiler-rt] Build with correct ABI (PR38025).
Feb 29 2020, 12:13 PM · Restricted Project
phosek committed rG2181bf40d871: [CMake] Link against ZLIB::ZLIB (authored by phosek).
[CMake] Link against ZLIB::ZLIB
Feb 29 2020, 11:10 AM
phosek committed rG50a6d3a6486d: [CMake] Use PUBLIC link mode for static libraries (authored by phosek).
[CMake] Use PUBLIC link mode for static libraries
Feb 29 2020, 11:10 AM
phosek closed D74176: [CMake] Link against ZLIB::ZLIB.
Feb 29 2020, 11:10 AM · Restricted Project
phosek closed D74106: [CMake] Use PUBLIC link mode for static libraries.
Feb 29 2020, 11:10 AM · Restricted Project
phosek added inline comments to D74176: [CMake] Link against ZLIB::ZLIB.
Feb 29 2020, 11:10 AM · Restricted Project
phosek added a parent revision for D74176: [CMake] Link against ZLIB::ZLIB: D74106: [CMake] Use PUBLIC link mode for static libraries.
Feb 29 2020, 11:10 AM · Restricted Project
phosek added a child revision for D74106: [CMake] Use PUBLIC link mode for static libraries: D74176: [CMake] Link against ZLIB::ZLIB.
Feb 29 2020, 11:10 AM · Restricted Project
phosek added a comment to D74106: [CMake] Use PUBLIC link mode for static libraries.

Ah, right, I forgot that "linking" includes header dependencies and so on. This makes sense.

Not this diff, but won't a BUILD_SHARED_LIBS build still have issues here, since then Support will only have a PRIVATE dependency on ZLIB::ZLIB and libraries which depend on Support won't get that dependency? (And if that's not a problem, then I'm wondering why the static case needs to be PUBLIC instead of PRIVATE.)

Feb 29 2020, 11:10 AM · Restricted Project

Feb 28 2020

phosek accepted D75379: [libc] Add ability to generate enum types/values to HdrGen..

LGTM

Feb 28 2020, 6:48 PM · Restricted Project

Feb 25 2020

phosek added a comment to D74653: [libc] Add simple implementations of mtx_lock and mtx_unlock..

Would it be possible to land the enumeration support separately? These are separate changes and I think it'd be cleaner to land them as two commits.

Feb 25 2020, 12:40 PM · Restricted Project
phosek added a comment to D75065: [cmake] Strip quotes in compiler-rt/lib/crt and explicitly throw error if check executable fails.

Wouldn't this break when compile command contains a quoted path with spaces?

Feb 25 2020, 10:37 AM · Restricted Project, Restricted Project

Feb 21 2020

phosek added a comment to D74176: [CMake] Link against ZLIB::ZLIB.

What does the llvm-config --system-libs output look like with this?

Feb 21 2020, 10:21 PM · Restricted Project
phosek updated the diff for D74176: [CMake] Link against ZLIB::ZLIB.
Feb 21 2020, 10:18 PM · Restricted Project
phosek accepted D74990: [arcconfig] Default base to previous revision.

LGTM

Feb 21 2020, 9:25 PM · Restricted Project

Feb 12 2020

phosek added inline comments to D74376: [gn build] Make build fully deterministic.
Feb 12 2020, 6:37 PM · Restricted Project
phosek committed rG67f4e0011d31: [CMake][Fuchsia] Enable in-process cc1 (authored by phosek).
[CMake][Fuchsia] Enable in-process cc1
Feb 12 2020, 2:06 PM

Feb 10 2020

Herald added a reviewer for D74108: [libcxx] When merging archives, build index even on Darwin: mclow.lists.

Ping?

Feb 10 2020, 1:57 PM · Restricted Project

Feb 9 2020

phosek accepted D74275: [compiler-rt] Compile __powitf2 under wasm.

Any idea why this file was listed under x86_ARCH_SOURCES? But only seems to active for ARCH_PPC?

Feb 9 2020, 3:46 PM · Restricted Project, Restricted Project

Feb 7 2020

phosek committed rG7b627bb6e019: Revert "[clang-doc] Improving Markdown Output" (authored by phosek).
Revert "[clang-doc] Improving Markdown Output"
Feb 7 2020, 7:49 PM
phosek added a reverting change for rGdac21fdd5923: [clang-doc] Improving Markdown Output: rG7b627bb6e019: Revert "[clang-doc] Improving Markdown Output".
Feb 7 2020, 7:49 PM