[all-commits] [llvm/llvm-project] 6ee3b2: Clang/Gnu: Scan GCC with triple without vendor if ...

YunQiang Su via All-commits all-commits at lists.llvm.org
Mon Aug 21 19:14:09 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6ee3b24444a6410b8188d57d3bc5903674ae3187
      https://github.com/llvm/llvm-project/commit/6ee3b24444a6410b8188d57d3bc5903674ae3187
  Author: YunQiang Su <wzssyqa at gmail.com>
  Date:   2023-08-21 (Mon, 21 Aug 2023)

  Changed paths:
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Gnu.h
    M clang/test/Driver/riscv32-toolchain.c
    M clang/test/Driver/riscv64-toolchain.c

  Log Message:
  -----------
  Clang/Gnu: Scan GCC with triple without vendor if vendor is unknown

If ScanLibDirForGCCTriple with target triple fails, let's try the triple with
vendor stripped if vendor is unknown.

Debian always uses triples without a vendor section. In general, triples without
a vendor section is the most similar aliases than any other aliases.

To archive this, we add a private member TripleNoVendor to
GCCInstallationDetector.

This modification makes testcases riscv32-toolchain.c and riscv64-toolchain.c
fail. The reason is that they are wrong: --triple riscv64-unknown-elf tries
to use riscv64-unknown-linux-gnu first.

This patch accidentally fixes this problem.

We also drop the path delimiter pattern {{/|\\\\}}, as these 2 tests are
disabled on Windows, and in fact the positions of this pattern are not
correct.

Reviewed by: MaskRay

Differential Revision: https://reviews.llvm.org/D158183




More information about the All-commits mailing list