[all-commits] [llvm/llvm-project] 695c81: [LoongArch] Implement handling of triple-implied ABIs

WÁNG Xuěruì via All-commits all-commits at lists.llvm.org
Wed Feb 1 19:39:18 PST 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 695c81e8a61a784f881255ea62a3ea76c1e2ee51
  Author: WANG Xuerui <git at xen0n.name>
  Date:   2023-02-02 (Thu, 02 Feb 2023)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    A llvm/test/CodeGen/LoongArch/target-abi-from-triple-edge-cases.ll
    A llvm/test/CodeGen/LoongArch/target-abi-from-triple.ll

  Log Message:
  [LoongArch] Implement handling of triple-implied ABIs

According to the [[ https://loongson.github.io/LoongArch-Documentation/LoongArch-toolchain-conventions-EN.html | LoongArch Toolchain Conventions ]]
it is possible to specify the ABI modifier (the "D" part of "LP64D")
via the environment field in the target triple. This is needed for
proper support for Debian-style multiarch tuples as well, so add triple
awareness to `LoongArchSubtarget` via addition of
`LoongArchABI::computeTargetABI`. Let the explicit `--target-abi`
argument intuitively take precedence over the triple-implied ABI.

Reviewed By: SixWeining

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

More information about the All-commits mailing list