Page MenuHomePhabricator
Feed Advanced Search

Yesterday

phosek added inline comments to D80873: [clang][cmake] Force CMAKE_LINKER for multistage build in case of BOOTSTRAP_LLVM_ENABLE_LLD and MSVC.
Wed, Jul 8, 1:29 AM · Restricted Project, Restricted Project

Mon, Jul 6

phosek committed rGf32ff0807e9e: [CMake][Fuchsia] Support for building with MSVC (authored by phosek).
[CMake][Fuchsia] Support for building with MSVC
Mon, Jul 6, 11:39 AM
phosek added a comment to D82490: [libcxx] Put clang::trivial_abi on std::unique_ptr.

Does this only happen on Fuchsia? How do I repro it?

Mon, Jul 6, 12:34 AM · Restricted Project

Sun, Jul 5

phosek committed rGa378c0449507: [Fuchsia] Set projects and runtimes in the cache file (authored by phosek).
[Fuchsia] Set projects and runtimes in the cache file
Sun, Jul 5, 2:56 PM
phosek closed D81514: [Fuchsia] Set projects and runtimes in the cache file.
Sun, Jul 5, 2:56 PM · Restricted Project
phosek added a comment to D82490: [libcxx] Put clang::trivial_abi on std::unique_ptr.

Rolling forward + fix typos and unused variables in tests

Sun, Jul 5, 2:24 PM · Restricted Project

Tue, Jun 30

phosek added inline comments to D82847: [CMAKE] Fix 'clean' target not working.
Tue, Jun 30, 10:49 AM · Restricted Project

Mon, Jun 29

phosek committed rGcf1d04484344: [CMake][compiler-rt] Only set lld as available when it was built (authored by phosek).
[CMake][compiler-rt] Only set lld as available when it was built
Mon, Jun 29, 3:18 PM
phosek closed D81629: [CMake][compiler-rt] Only set lld as available when it was built.
Mon, Jun 29, 3:18 PM · Restricted Project
phosek updated the diff for D79219: [CMake] Simplify CMake handling for zlib.
Mon, Jun 29, 3:18 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
phosek added inline comments to D79219: [CMake] Simplify CMake handling for zlib.
Mon, Jun 29, 3:18 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
phosek updated the diff for D79219: [CMake] Simplify CMake handling for zlib.
Mon, Jun 29, 3:18 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
phosek accepted D82802: [clang][RelativeVTablesABI] Update CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp.

LGTM

Mon, Jun 29, 1:36 PM · Restricted Project

Thu, Jun 25

phosek updated the diff for D82437: [ELF] Add --dependency-file option.
Thu, Jun 25, 1:03 AM · Restricted Project

Wed, Jun 24

phosek added inline comments to D77752: [llvm] Machine Learned policy for inlining -Oz.
Wed, Jun 24, 11:21 AM · Restricted Project
phosek added inline comments to D77752: [llvm] Machine Learned policy for inlining -Oz.
Wed, Jun 24, 1:34 AM · Restricted Project
phosek updated the diff for D82437: [ELF] Add --dependency-file option.
Wed, Jun 24, 1:02 AM · Restricted Project
phosek added a comment to D82437: [ELF] Add --dependency-file option.

This is an updated version of D65430 which matches the feature implemented by ld and gold in https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=f37b21b481a7804a13c5806098c19b6119288ba4. I'm happy to abandon this change in favor of D65430 if @ruiu wants to go ahead with his change.

Wed, Jun 24, 1:02 AM · Restricted Project
phosek created D82437: [ELF] Add --dependency-file option.
Wed, Jun 24, 1:02 AM · Restricted Project

Tue, Jun 23

phosek committed rGfffd05d52526: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility (authored by phosek).
[ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility
Tue, Jun 23, 4:12 PM
phosek closed D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.
Tue, Jun 23, 4:12 PM · Restricted Project
phosek updated the diff for D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.
Tue, Jun 23, 3:38 PM · Restricted Project
phosek added a comment to D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.

(It is also my personal preference: we can use # as the comment marker. It is simpler. I'll not enforce that, though. When you write comments which are not RUN or CHECK lines, you can write ## . It makes comments stand out and avoids caveats for while some FileCheck developers want to prevent)

Tue, Jun 23, 3:38 PM · Restricted Project

Mon, Jun 22

phosek added a comment to D82276: Make ninja smart console builds more pretty.

Unless I'm missing something, consolidating this logic into LLVM's CMakeLists.txt will break stand alone builds of sub-projects and external projects that depend on this logic.

Was there a policy change? Are stand alone builds no longer supported? Are external projects no longer allowed to use LLVM's GenerateVersionFromVCS.cmake?

Mon, Jun 22, 11:04 PM · Restricted Project

Sun, Jun 21

phosek added a comment to D82276: Make ninja smart console builds more pretty.

OK I see now, the description wasn't clear to me earlier. So it is about the fact that find_package failure is multiple-lines long, and it is called separately from LLVM, clang, lld, and lldb. Instead we will still display 4 times the warning but it'll be one line instead, right?

Seems like we could also call this once only from the LLVM CMakeLists.txt and make the variables available to the subprojects?

Sun, Jun 21, 10:13 PM · Restricted Project

Fri, Jun 19

phosek accepted D82150: [builtins][Android] Fix 386->686 adjustment.

LGTM

Fri, Jun 19, 12:29 AM · Restricted Project

Wed, Jun 17

phosek added a comment to D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.

LGTM. @pcc and @ruiu objected to this patch. Please give some time for them to make comments. Friday is a no meeting day for some of us, so waiting til next week will be nice.

SGTM thanks! I'm also fine waiting until the GNU change lands.

Wed, Jun 17, 11:58 PM · Restricted Project
phosek updated the diff for D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.
Wed, Jun 17, 11:58 PM · Restricted Project
phosek added a comment to D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.

LGTM. @pcc and @ruiu objected to this patch. Please give some time for them to make comments. Friday is a no meeting day for some of us, so waiting til next week will be nice.

Wed, Jun 17, 11:58 PM · Restricted Project
phosek updated the diff for D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.
Wed, Jun 17, 9:02 PM · Restricted Project
phosek added a comment to D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.

Please add a test, startstop-visibility.s (I would like start-stop-visibility.s, but some existing tests use the startstop- prefix).

Use -triple=x86_64 and use llvm-readelf -s to check visibility. Check both __start_foo and __stop_foo. Don't add another __start_bar.

Please mention that GNU ld and gold from binutils 2.35 onwards will support the option (
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=cae64165f47b64898c4f1982d294862cfae89a47 )

Wed, Jun 17, 2:34 PM · Restricted Project
phosek updated the diff for D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility.
Wed, Jun 17, 2:34 PM · Restricted Project

Tue, Jun 16

phosek accepted D81877: [CMake] Fix runtimes build for host Windows (default target).

LGTM, I like this, thanks! I think we should use this approach for other flags as well, e.g. RUNTIMES_LLVM_ENABLE_RUNTIMES.

Tue, Jun 16, 3:56 PM · Restricted Project

Mon, Jun 15

phosek accepted D81447: [llvm][NFC] Move content of ML subdirectory into Analysis.

LGTM

Mon, Jun 15, 10:55 AM · Restricted Project

Sat, Jun 13

phosek added a comment to D65430: Add `--dependency-files` option, which is equivalent to compiler option -MD..

I have mentioned this several times. You can just process -t output like { echo -n 'a: '; clang a.o -o a -Wl,-t | sed 's/(.*//' | sort -u | sed '$!s/$/ \\/';} > a.d

Sat, Jun 13, 2:57 PM · Restricted Project

Fri, Jun 12

phosek added a comment to D65430: Add `--dependency-files` option, which is equivalent to compiler option -MD..

The requirement for this feature came up again recently in our build so I'd like to revive this discussion, is there any way we could get this change landed?

Fri, Jun 12, 1:03 AM · Restricted Project

Thu, Jun 11

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

@davidxl Do you have any preference between the current solution which uses the artificial padding in __llvm_prf_data section to workaround the BFD ld bug, and a backend feature flag that could be set to enable this feature?

Thu, Jun 11, 8:20 PM · Restricted Project, Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

@davidxl Do you have any preference between the current solution which uses the artificial padding in __llvm_prf_data section to workaround the BFD ld bug, and a backend feature flag that could be set to enable this feature?

Thu, Jun 11, 8:20 PM · Restricted Project, Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I still can reproduce with the latest patch on my workstation

Exit Code: 1

Command Output (stderr):
--
/usr/bin/ld: __llvm_prf_data has both ordered and unordered sections
/usr/bin/ld: final link failed: bad value
clang-11: error: linker command failed with exit code 1 (use -v to see invocation)

This is the other issue I mentioned which also affects Chromium bots. The root cause is the lack of support for the extended semantics of SHF_LINK_ORDER that !associated metadata rely on in bfd.ld. I'm trying to figure out what's the best way forward. We could just disable all affected profile tests when bfd.ld is used as the linker, but that's pretty drastic. Another option would be to gate this feature on a backend flag; targets that use gold or lld as their linker could turn this on by default.

Thu, Jun 11, 5:05 PM · Restricted Project, Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Thu, Jun 11, 5:05 PM · Restricted Project, Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I've updated the patch to handle the _IO_stdin_used symbol in the test. I couldn't reproduce this locally, but it's possible that this is due to different libc version on the bot.

I still can reproduce with the latest patch on my workstation

Exit Code: 1

Command Output (stderr):
--
/usr/bin/ld: __llvm_prf_data has both ordered and unordered sections
/usr/bin/ld: final link failed: bad value
clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
Thu, Jun 11, 12:37 AM · Restricted Project, Restricted Project

Wed, Jun 10

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Wed, Jun 10, 10:06 PM · Restricted Project, Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Wed, Jun 10, 10:06 PM · Restricted Project, Restricted Project
phosek added a comment to D72904: [ELF] Allow SHF_LINK_ORDER sections to have sh_link=0.
In D72904#2071861, @pcc wrote:

Should we drop this and just let users set sh_link=self if they want these semantics?

Wed, Jun 10, 9:02 PM · Restricted Project
phosek created D81629: [CMake][compiler-rt] Only set lld as available when it was built.
Wed, Jun 10, 8:30 PM · Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I looked into these issue:

Wed, Jun 10, 7:57 PM · Restricted Project, Restricted Project
phosek accepted D81574: [CMake][runtimes] Skip adding 2nd set of the same variables for a generic target.

LGTM

Wed, Jun 10, 11:41 AM · Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I apologize about the late response, I didn't get any email from Phabricator for some reason :/

Wed, Jun 10, 11:05 AM · Restricted Project, Restricted Project

Tue, Jun 9

phosek added inline comments to D81447: [llvm][NFC] Move content of ML subdirectory into Analysis.
Tue, Jun 9, 9:29 PM · Restricted Project
phosek added inline comments to D81447: [llvm][NFC] Move content of ML subdirectory into Analysis.
Tue, Jun 9, 6:48 PM · Restricted Project
phosek created D81514: [Fuchsia] Set projects and runtimes in the cache file.
Tue, Jun 9, 4:04 PM · Restricted Project

Jun 8 2020

phosek committed rG69c5ff4668cd: [InstrProfiling] Use -fuse-ld=lld in instrprof-gc-sections test (authored by phosek).
[InstrProfiling] Use -fuse-ld=lld in instrprof-gc-sections test
Jun 8 2020, 4:40 PM
phosek committed rG603d58b5e49c: [InstrProfiling] Use !associated metadata for counters, data and values (authored by phosek).
[InstrProfiling] Use !associated metadata for counters, data and values
Jun 8 2020, 3:34 PM
phosek committed rGba10bedf5631: Revert "[InstrProfiling] Use !associated metadata for counters, data and values" (authored by phosek).
Revert "[InstrProfiling] Use !associated metadata for counters, data and values"
Jun 8 2020, 3:00 PM
phosek added a reverting change for rG39b3c41b6530: [InstrProfiling] Use !associated metadata for counters, data and values: rGba10bedf5631: Revert "[InstrProfiling] Use !associated metadata for counters, data and values".
Jun 8 2020, 3:00 PM
phosek committed rG39b3c41b6530: [InstrProfiling] Use !associated metadata for counters, data and values (authored by phosek).
[InstrProfiling] Use !associated metadata for counters, data and values
Jun 8 2020, 1:54 PM
phosek closed D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 8 2020, 1:53 PM · Restricted Project, Restricted Project
phosek abandoned D64045: [InstrProfiling] Put instrumentation into comdat group with function.

Superseded by D76802.

Jun 8 2020, 1:51 PM · Restricted Project

Jun 7 2020

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

Looks good but can you do help with a clang instrumentation build (IR PGO), and see the binary and profile size change?

Jun 7 2020, 5:03 PM · Restricted Project, Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 7 2020, 5:02 PM · Restricted Project, Restricted Project

Jun 5 2020

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

@davidxl ping?

Jun 5 2020, 3:43 PM · Restricted Project, Restricted Project

Jun 4 2020

phosek committed rGd76e62fdb7a9: [AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals (authored by phosek).
[AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals
Jun 4 2020, 8:56 PM
phosek closed D80605: [AddressSanitizer] Don't use weak linkage for __{start,stop}_asan_globals.
Jun 4 2020, 8:56 PM · Restricted Project
phosek committed rGe1ab90001a0b: Revert "[Fuchsia] Rely on linker switch rather than dead code ref for profile… (authored by phosek).
Revert "[Fuchsia] Rely on linker switch rather than dead code ref for profile…
Jun 4 2020, 4:04 PM
phosek committed rGb16ed493ddc2: [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime (authored by phosek).
[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime
Jun 4 2020, 4:04 PM
phosek added a reverting change for rGd51054217403: [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime: rGe1ab90001a0b: Revert "[Fuchsia] Rely on linker switch rather than dead code ref for profile….
Jun 4 2020, 4:04 PM
phosek committed rGd51054217403: [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime (authored by phosek).
[Fuchsia] Rely on linker switch rather than dead code ref for profile runtime
Jun 4 2020, 2:26 PM
phosek closed D79835: [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime.
Jun 4 2020, 2:26 PM · Restricted Project, Restricted Project

Jun 3 2020

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I've also tested this change in Fuchsia and saw similar improvements: fuchsia.zbi (the boot image) size reduced from 90M to 42M, fvm.sparse.blk (disk image) size reduced from 3.9G to 2.8G.

Jun 3 2020, 10:29 PM · Restricted Project, Restricted Project
phosek abandoned D80186: [Inliner] Update !associated metadata during inlining.

This is no longer needed for the profile instrumentation.

Jun 3 2020, 1:10 PM · Restricted Project
phosek added a comment to D79892: [compiler-rt] [test] Fix NameError when loading lit.cfg.py for crt.

Do you have commit permissions or do you need us to land this for you?

Jun 3 2020, 12:39 PM · Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 3 2020, 2:10 AM · Restricted Project, Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 3 2020, 2:10 AM · Restricted Project, Restricted Project
phosek removed a parent revision for D76802: [InstrProfiling] Use !associated metadata for counters, data and values: D80186: [Inliner] Update !associated metadata during inlining.
Jun 3 2020, 1:35 AM · Restricted Project, Restricted Project
phosek removed a child revision for D80186: [Inliner] Update !associated metadata during inlining: D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 3 2020, 1:35 AM · Restricted Project
phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

What is the instrumented size improvement for Clang? How about profile size reduction?

Jun 3 2020, 1:35 AM · Restricted Project, Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
Jun 3 2020, 1:35 AM · Restricted Project, Restricted Project
phosek added a comment to D80186: [Inliner] Update !associated metadata during inlining.
In D80186#2069110, @pcc wrote:
In D80186#2067298, @pcc wrote:

Yeah. Thinking about it more, you may consider a different !associated scheme for the __prof*_ globals.

  • __profc_* and __profn_* are associated with a dummy global (to allow the sections to be GC'd).
  • __profd_* is associated with the corresponding __profc_* section.

    Now no special rules are required for inlining. __profc_* is kept alive via the references in the functions, __profd_ is kept alive via !associated and __profn_* is kept alive by direct reference.

I tried that, but now we get an error ld.lld: error: /tmp/instrprof-gc-sections-5f007f.o:(__llvm_prf_cnts): sh_link points to discarded section /tmp/instrprof-gc-sections-5f007f.o:(__llvm_prf_dummy) because the dummy global was discarded which creates a broken sh_link.

Hmm. Maybe instead of making the sections sh_link to a dummy global, make them sh_link to themselves. There was a proposal for sh_link=0 to mean what we want here (D72904) but I believe that sh_link=self should have the same semantics.

Jun 3 2020, 1:03 AM · Restricted Project

Jun 2 2020

Herald added a reviewer for D55682: [ELF] Add -z start-stop-visibility= to set __start_/__stop_ symbol visibility: MaskRay.

Does that mean there is a visibility mismatch between source code and linker-defined symbol? e.g.

//extern char __start_f __attribute__((visibility("hidden")));
extern char __start_f; // Fuchsia wants to write code like this, but its visibility is set to hidden due to -z hidden-start-stop-symbols

__attribute__((section("f"))) char *foo() {
  return &__start_f;
}

Please correct me but if my understanding is correct, I think the explicit visibility attribute in source code would be clearer.

Jun 2 2020, 1:42 PM · Restricted Project
phosek added a comment to D80186: [Inliner] Update !associated metadata during inlining.
In D80186#2067298, @pcc wrote:

Yeah. Thinking about it more, you may consider a different !associated scheme for the __prof*_ globals.

  • __profc_* and __profn_* are associated with a dummy global (to allow the sections to be GC'd).
  • __profd_* is associated with the corresponding __profc_* section.

    Now no special rules are required for inlining. __profc_* is kept alive via the references in the functions, __profd_ is kept alive via !associated and __profn_* is kept alive by direct reference.
Jun 2 2020, 12:31 AM · Restricted Project

Jun 1 2020

phosek added a comment to D80186: [Inliner] Update !associated metadata during inlining.
In D80186#2067107, @pcc wrote:

In this case you might consider replacing the global reference with null and implementing my proposal in https://bugs.llvm.org/show_bug.cgi?id=41734#c2 to make the section SHF_LINK_ORDER with a zero-length .init_array section.

Jun 1 2020, 1:32 PM · Restricted Project
phosek added a comment to D80186: [Inliner] Update !associated metadata during inlining.

One option we've discussed internally within our team would be to use ELF section groups (not COMDAT which is a special case of section groups) instead of SHF_LINK_ORDER, but those aren't supported in LLVM IR at the moment, and it's also counter to what was discussed in https://groups.google.com/g/generic-abi/c/_CbBM6T6WeM/m/LZnqx1KZAQAJ.

Jun 1 2020, 12:26 PM · Restricted Project
phosek planned changes to D80186: [Inliner] Update !associated metadata during inlining.

So after testing this change a bit more, I found a fundamental issue which is the handling of cases when a function is inlined into multiple functions.

Jun 1 2020, 12:25 PM · Restricted Project
phosek accepted D79892: [compiler-rt] [test] Fix NameError when loading lit.cfg.py for crt.

LGTM

Jun 1 2020, 10:45 AM · Restricted Project

May 29 2020

phosek accepted D79835: [Fuchsia] Rely on linker switch rather than dead code ref for profile runtime.

LGTM

May 29 2020, 2:40 AM · Restricted Project, Restricted Project

May 28 2020

phosek added a comment to D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

@davidxl would it be possible to take a look?

May 28 2020, 3:25 PM · Restricted Project, Restricted Project
phosek added a comment to D80442: [runtimes] Pass COMPILER_RT* through to runtime build.

This needs be done on a per-target basis, not globally (e.g. you may want to use COMPILER_RT_BUILD_SANITIZERS=OFF for target1 but not target2). Have you tried setting RUNTIMES_${target}_COMPILER_RT_BUILD_SANITIZERS=OFF? This should be already supported, see for example https://github.com/llvm/llvm-project/blob/master/clang/cmake/caches/Fuchsia-stage2.cmake#L100

May 28 2020, 12:38 PM · Restricted Project

May 21 2020

phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
May 21 2020, 9:05 PM · Restricted Project, Restricted Project
phosek added inline comments to D80186: [Inliner] Update !associated metadata during inlining.
May 21 2020, 3:11 PM · Restricted Project
phosek updated the diff for D80186: [Inliner] Update !associated metadata during inlining.
May 21 2020, 3:11 PM · Restricted Project
phosek updated the diff for D76802: [InstrProfiling] Use !associated metadata for counters, data and values.

I've added a test which is analogous to instrprof-darwin-dead-strip.c which tests the same functionality on Darwin. I've also updated the inliner to properly handle !associated metadata in D80186 which is necessary here since instr-profiling pass runs before the inliner.

May 21 2020, 3:11 PM · Restricted Project, Restricted Project

May 19 2020

phosek added a comment to D80186: [Inliner] Update !associated metadata during inlining.

This is a prerequisite for D76802 because InstrProfiling pass runs before inliner which can invalidate the metadata.

May 19 2020, 12:30 AM · Restricted Project
phosek created D80186: [Inliner] Update !associated metadata during inlining.
May 19 2020, 12:30 AM · Restricted Project
phosek added a child revision for D80186: [Inliner] Update !associated metadata during inlining: D76802: [InstrProfiling] Use !associated metadata for counters, data and values.
May 19 2020, 12:30 AM · Restricted Project
phosek added a parent revision for D76802: [InstrProfiling] Use !associated metadata for counters, data and values: D80186: [Inliner] Update !associated metadata during inlining.
May 19 2020, 12:30 AM · Restricted Project, Restricted Project

May 18 2020

phosek accepted D80040: [compiler-rt][CMake] Fix PowerPC runtime build.

LGTM

May 18 2020, 10:48 AM · Restricted Project

May 15 2020

phosek accepted D79725: [libc] Add implementation of fabs and fabsf..

LGTM

May 15 2020, 12:52 AM · Restricted Project
phosek accepted D79724: [libc] Consolidate floating point utils into a single utils library..

LGTM

May 15 2020, 12:52 AM · Restricted Project
phosek accepted D79149: [libc] Move implementations of expf and exp2f from the AOR to src/math..

LGTM

May 15 2020, 12:52 AM · Restricted Project
Herald added a reviewer for D79400: [CMAKE] Fix build failure when source directory is read only: MaskRay.

@scott.linder is actually correct, the reason we write the file is precisely as he described in https://reviews.llvm.org/D79400#2021255. When you use tools like repo which branchless checkout, .git/logs/HEAD won't exist on initial checkout, but we want to detect changes to it later. It's not true that .git/logs/HEAD isn't used, see for example in clang/lib/Basic/CMakeLists.txt on line 24, while the header is being generated by the GenerateVersionFromVCS.cmake script, whether that script is executed is controlled by a dependency on .git/logs/HEAD, if .git/logs/HEAD doesn't change we won't rerun that script. The reason we do this rather than calling .git/logs/HEAD directly is to avoid running git rev-parse HEAD on every build invocation. The reason we depend on `.git/logs/HEAD and not .git/HEAD is because the latter may only contain symbolic information and so won't change e.g. on rebase whereas the former will, in which case we want to regenerate the header. I agree that the Subversion part of find_first_existing_vc_file could be removed now. We also don't need to check Clang or LLD source tree separately from LLVM now that everything is in one repo, but the logic for determining Git revision should be still correct.

May 15 2020, 12:09 AM · Restricted Project, Restricted Project