[all-commits] [llvm/llvm-project] e8090d: [HIP] Do not call opt/llc for -fno-gpu-rdc

Yaxun (Sam) Liu via All-commits all-commits at lists.llvm.org
Mon Jun 15 15:55:40 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: e8090d83fd92cc6a9d03b48c91f979bbfa6bb1fc
      https://github.com/llvm/llvm-project/commit/e8090d83fd92cc6a9d03b48c91f979bbfa6bb1fc
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2020-06-15 (Mon, 15 Jun 2020)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/HIP.cpp
    M clang/test/Driver/cuda-phases.cu
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-device-compile.hip
    A clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-save-temps.hip
    M clang/test/Driver/hip-toolchain-mllvm.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hip-toolchain-opt.hip

  Log Message:
  -----------
  [HIP] Do not call opt/llc for -fno-gpu-rdc

Currently HIP toolchain calls clang to emit bitcode then calls opt/llc for device compilation for the default -fno-gpu-rdc
case, which is unnecessary since clang is able to compile a single source file to ISA.

This patch fixes the HIP action builder and toolchain so that the default -fno-gpu-rdc can be done like a canonical
toolchain, i.e. one clang -cc1 invocation to compile source code to ISA.

This can avoid unnecessary processes to speed up the compilation, and avoid redundant LLVM passes which are
performed in clang -cc1 and opt.

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




More information about the All-commits mailing list