[clang] [Driver] Normalize the baremetal handling of libc++ and runtimes (PR #101259)

2024-12-06 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek updated https://github.com/llvm/llvm-project/pull/101259 >From f20e9d0bc3fc66ebcda8286682a2d38e006bb9d0 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Wed, 24 Jul 2024 10:47:49 -0700 Subject: [PATCH] [Driver] Normalize the baremetal handling of libc++ and runtimes

[clang] [Clang][perf-training] Fix clean command in perf-helper.py (PR #118978)

2024-12-06 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/118978 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [RISCV] Merging RISCVToolChain and BareMetal toolchains (PR #118809)

2024-12-06 Thread Petr Hosek via cfe-commits
@@ -291,6 +365,36 @@ BareMetal::OrderedMultilibs BareMetal::getOrderedMultilibs() const { return llvm::reverse(Default); } +ToolChain::CXXStdlibType BareMetal::GetDefaultCXXStdlibType() const { + if (getTriple().isRISCV()) { +return GCCInstallation.isValid() ? ToolChai

[clang] [Driver][UEFI] Enable Microsoft extensions (PR #121875)

2025-01-08 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/121875 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Fix a cmake error when using the Xcode generator. (PR #119403)

2025-01-08 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/119403 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[compiler-rt] [libunwind] [libunwind][cmake] Compile _Unwind* routines with -fexceptions (PR #121819)

2025-01-15 Thread Petr Hosek via cfe-commits
@@ -20,7 +20,12 @@ set(LIBUNWIND_C_SOURCES ) set_source_files_properties(${LIBUNWIND_C_SOURCES} PROPERTIES - COMPILE_FLAGS "-std=c99") + # We need to set `-fexceptions` here so that key +

[clang] [CMake] Add a cache file for building a highly-optimized LLVM toolchain (PR #117802)

2025-01-15 Thread Petr Hosek via cfe-commits
petrhosek wrote: These cache files seem to be largely the same as [PGO.cmake](https://github.com/llvm/llvm-project/blob/4cec0ba92955c353c52efe728b2cfef3fbdf60f8/clang/cmake/caches/PGO.cmake), [PGO-stage2.cmake](https://github.com/llvm/llvm-project/blob/04b002bbb838bc502bd6d5f602af95efd6cc96b3/

[clang] [fuchsia][cmake] Add runtimes for cortex-m4 for the Fuchsia toolchain (PR #123258)

2025-01-16 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/123258 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][perf-training] Support excluding LLVM build from PGO training (PR #126876)

2025-02-19 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek closed https://github.com/llvm/llvm-project/pull/126876 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CMake] Fix variable name (PR #127967)

2025-02-19 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek created https://github.com/llvm/llvm-project/pull/127967 This was accidentaly introduced in #126876. >From 811f3ce860a5e544000166ccd06df3bb8cf5ec6b Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Thu, 20 Feb 2025 07:39:23 + Subject: [PATCH] [CMake] Fix variable

[clang] [clang][perf-training] Support excluding LLVM build from PGO training (PR #126876)

2025-02-19 Thread Petr Hosek via cfe-commits
@@ -11,6 +11,7 @@ config.python_exe = "@Python3_EXECUTABLE@" config.cmake_exe = "@CMAKE_COMMAND@" config.llvm_src_dir ="@CMAKE_SOURCE_DIR@" config.cmake_generator ="@CMAKE_GENERATOR@" +config.use_llvm_build = @CLANG_PGO_TRAINING_USE_LLVM_BUILD@ petrhosek wrote:

[clang] [Fuchsia] Support PGO (PR #128680)

2025-02-25 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek updated https://github.com/llvm/llvm-project/pull/128680 >From 0662cddc6837c281c102995e2789bb0f81adb415 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Fri, 7 Feb 2025 08:49:18 -0800 Subject: [PATCH 1/2] [Fuchsia] Support PGO Enable 2-stage builds with PGO. --- ..

[clang] [Fuchsia] Support PGO (PR #128680)

2025-02-25 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek created https://github.com/llvm/llvm-project/pull/128680 Enable 2-stage builds with PGO. >From 0662cddc6837c281c102995e2789bb0f81adb415 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Fri, 7 Feb 2025 08:49:18 -0800 Subject: [PATCH 1/2] [Fuchsia] Support PGO Enable

[clang] [CMake] Fix variable name (PR #127967)

2025-02-20 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek closed https://github.com/llvm/llvm-project/pull/127967 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CodeGen] Ensure relative vtables use llvm.type.checked.load.relative (PR #126785)

2025-02-26 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. Can you update the PR description and explain why this is desirable? https://github.com/llvm/llvm-project/pull/126785 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.or

[clang] [clang] Alias cc modifier to c (PR #127719)

2025-02-26 Thread Petr Hosek via cfe-commits
petrhosek wrote: > It seems like for gcc at least, IIUC, `cc` does a bit more than `c` so while > we are supporting `cc` for compatibility we are not fully supporting it? > Specifically: > > `except try harder to print it with no punctuation` > > Perhaps we should document that in the comment

[clang] [Fuchsia] Support PGO (PR #128680)

2025-02-26 Thread Petr Hosek via cfe-commits
petrhosek wrote: > LGTM. This seems to work locally for me, but I haven't tested w/ cross > compiling. Is that still potentially an issue? It's not addressed since that's going to require more changes, I assume we'll disable PGO on cross-compiling builders by not setting `FUCHSIA_ENABLE_PGO`.

[clang] [clang] Alias cc modifier to c (PR #127719)

2025-02-26 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/127719 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Driver] Teach Barmetal toolchain about GCC installation(1/3) (PR #121829)

2025-02-27 Thread Petr Hosek via cfe-commits
@@ -110,20 +111,93 @@ static std::string computeBaseSysRoot(const Driver &D, bool IncludeTriple) { return std::string(SysRootDir); } +// GCC sysroot here means form sysroot from either --gcc-install-dir, or from +// --gcc-toolchain or if the toolchain is installed alongside

[clang] [Driver] Teach Barmetal toolchain about GCC installation(1/3) (PR #121829)

2025-02-27 Thread Petr Hosek via cfe-commits
@@ -97,7 +97,8 @@ static bool findRISCVMultilibs(const Driver &D, return false; } -static std::string computeBaseSysRoot(const Driver &D, bool IncludeTriple) { +static std::string computeInstalledToolchainSysRoot(const Driver &D, petrhosek wrote: Can we avo

[clang] [Driver] Teach Barmetal toolchain about GCC installation(1/3) (PR #121829)

2025-02-27 Thread Petr Hosek via cfe-commits
@@ -110,20 +111,93 @@ static std::string computeBaseSysRoot(const Driver &D, bool IncludeTriple) { return std::string(SysRootDir); } +// GCC sysroot here means form sysroot from either --gcc-install-dir, or from +// --gcc-toolchain or if the toolchain is installed alongside

[clang] [Driver] Teach Barmetal toolchain about GCC installation(1/3) (PR #121829)

2025-02-27 Thread Petr Hosek via cfe-commits
@@ -110,20 +111,93 @@ static std::string computeBaseSysRoot(const Driver &D, bool IncludeTriple) { return std::string(SysRootDir); } +// GCC sysroot here means form sysroot from either --gcc-install-dir, or from +// --gcc-toolchain or if the toolchain is installed alongside

[clang] [Driver] Teach Barmetal toolchain about GCC installation(1/3) (PR #121829)

2025-02-27 Thread Petr Hosek via cfe-commits
@@ -110,20 +111,93 @@ static std::string computeBaseSysRoot(const Driver &D, bool IncludeTriple) { return std::string(SysRootDir); } +// GCC sysroot here means form sysroot from either --gcc-install-dir, or from +// --gcc-toolchain or if the toolchain is installed alongside

[clang] [Fuchsia] Add llc to toolchain (PR #130999)

2025-03-12 Thread Petr Hosek via cfe-commits
petrhosek wrote: Can you check the toolchain binary size increase? Is `llc` included in the `llvm` binary? https://github.com/llvm/llvm-project/pull/130999 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/

[clang] [clang] Fix UEFI Target info (PR #127290)

2025-03-17 Thread Petr Hosek via cfe-commits
@@ -835,16 +835,22 @@ class LLVM_LIBRARY_VISIBILITY UEFIX86_64TargetInfo public: UEFIX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) : UEFITargetInfo(Triple, Opts) { +LongWidth = LongAlign = 32; +DoubleAlign = LongLongAlign = 64; +Int

[clang] [Fuchsia] Support PGO (PR #128680)

2025-03-17 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek updated https://github.com/llvm/llvm-project/pull/128680 >From 0662cddc6837c281c102995e2789bb0f81adb415 Mon Sep 17 00:00:00 2001 From: Petr Hosek Date: Fri, 7 Feb 2025 08:49:18 -0800 Subject: [PATCH 1/3] [Fuchsia] Support PGO Enable 2-stage builds with PGO. --- ..

[clang] [clang] Fix UEFI Target info (PR #127290)

2025-03-16 Thread Petr Hosek via cfe-commits
@@ -835,19 +835,39 @@ class LLVM_LIBRARY_VISIBILITY UEFIX86_64TargetInfo public: UEFIX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) : UEFITargetInfo(Triple, Opts) { +LongWidth = LongAlign = 32; +DoubleAlign = LongLongAlign = 64; +Int

[clang-tools-extra] [clang-doc] Avoid deref of invalid std::optional (PR #131939)

2025-03-19 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/131939 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [clang-doc] Format test files (PR #132428)

2025-03-24 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/132428 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-04 Thread Petr Hosek via cfe-commits
@@ -77,3 +104,25 @@ add_subdirectory(Index) add_subdirectory(InstallAPI) add_subdirectory(Serialization) add_subdirectory(Support) + + +# If we're doing a single merged clang unit test binary, add that target after +# all the previous subdirectories have been processed. +get_pr

[clang-tools-extra] [clang-doc] Allow setting a base directory for hosted pages (PR #132482)

2025-03-27 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. https://github.com/llvm/llvm-project/pull/132482 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [cmake] Refactor clang unittest cmake (PR #133545)

2025-03-31 Thread Petr Hosek via cfe-commits
https://github.com/petrhosek approved this pull request. This is definitely an improvement over status quo! Ideally, developers wouldn't have to list Clang libraries separately from other libraries but that would require some non-trivial build system refactoring that would be better done in fo

[clang] [clang] Fix UEFI Target info (PR #127290)

2025-04-05 Thread Petr Hosek via cfe-commits
@@ -835,8 +835,24 @@ class LLVM_LIBRARY_VISIBILITY UEFIX86_64TargetInfo public: UEFIX86_64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) : UEFITargetInfo(Triple, Opts) { +// The UEFI spec does not mandate specific C++ ABI, integer widths, or +

<    5   6   7   8   9   10